summaryrefslogtreecommitdiff
path: root/protocols
diff options
context:
space:
mode:
Diffstat (limited to 'protocols')
-rw-r--r--protocols/Telegram/CMakeLists.txt29
-rw-r--r--protocols/Telegram/docs/tgl/CHANGELOG23
-rw-r--r--protocols/Telegram/docs/tgl/LICENSE175
-rw-r--r--protocols/Telegram/docs/tgl/Makefile.in95
-rw-r--r--protocols/Telegram/docs/tgl/Makefile.tl-parser7
-rw-r--r--protocols/Telegram/docs/tgl/README.md27
-rw-r--r--protocols/Telegram/docs/tgl/auto-static-fetch-ds.c0
-rw-r--r--protocols/Telegram/docs/tgl/auto-static-free-ds.c0
-rw-r--r--protocols/Telegram/docs/tgl/auto-static-skip.c0
-rw-r--r--protocols/Telegram/docs/tgl/auto-static-store-ds.c0
-rw-r--r--protocols/Telegram/docs/tgl/auto-static.c328
-rw-r--r--protocols/Telegram/docs/tgl/binlog.tl102
-rw-r--r--protocols/Telegram/docs/tgl/config.bat524
-rw-r--r--protocols/Telegram/docs/tgl/config.h.in162
-rw-r--r--protocols/Telegram/docs/tgl/configure5669
-rw-r--r--protocols/Telegram/docs/tgl/configure.ac79
-rw-r--r--protocols/Telegram/docs/tgl/encrypted_scheme.tl1
-rw-r--r--protocols/Telegram/docs/tgl/encrypted_scheme16.tl22
-rw-r--r--protocols/Telegram/docs/tgl/encrypted_scheme17.tl31
-rw-r--r--protocols/Telegram/docs/tgl/encrypted_scheme18.tl38
-rw-r--r--protocols/Telegram/docs/tgl/encrypted_scheme23.tl29
-rw-r--r--protocols/Telegram/docs/tgl/errors11
-rw-r--r--protocols/Telegram/docs/tgl/event-old.h48
-rw-r--r--protocols/Telegram/docs/tgl/gen_constants_h.awk37
-rw-r--r--protocols/Telegram/docs/tgl/m4-ax_gcc_builtin.m4168
-rw-r--r--protocols/Telegram/docs/tgl/m4_ax_check_openssl.m4124
-rw-r--r--protocols/Telegram/docs/tgl/m4_ax_check_zlib.m4142
-rw-r--r--protocols/Telegram/docs/tgl/mime.types1588
-rw-r--r--protocols/Telegram/docs/tgl/mtproto.tl19
-rw-r--r--protocols/Telegram/docs/tgl/scheme.tl1
-rw-r--r--protocols/Telegram/docs/tgl/scheme.tlobin85572 -> 0 bytes
-rw-r--r--protocols/Telegram/docs/tgl/scheme12.tl505
-rw-r--r--protocols/Telegram/docs/tgl/scheme15.tl522
-rw-r--r--protocols/Telegram/docs/tgl/scheme16.tl504
-rw-r--r--protocols/Telegram/docs/tgl/scheme17.tl528
-rw-r--r--protocols/Telegram/docs/tgl/scheme18.tl535
-rw-r--r--protocols/Telegram/docs/tgl/scheme19.tl596
-rw-r--r--protocols/Telegram/docs/tgl/scheme2.tl540
-rw-r--r--protocols/Telegram/docs/tgl/scheme22.tl596
-rw-r--r--protocols/Telegram/docs/tgl/scheme25.tl622
-rw-r--r--protocols/Telegram/docs/tgl/scheme28.tl641
-rw-r--r--protocols/Telegram/docs/tgl/scheme30.tl656
-rw-r--r--protocols/Telegram/docs/tgl/scheme31.tl668
-rw-r--r--protocols/Telegram/docs/tgl/wingetopt.c82
-rw-r--r--protocols/Telegram/docs/tgl/wingetopt.h32
-rw-r--r--protocols/Telegram/res/version.rc55
-rw-r--r--protocols/Telegram/src/main.cpp104
-rw-r--r--protocols/Telegram/src/stdafx.cxx1
-rw-r--r--protocols/Telegram/src/stdafx.h74
-rw-r--r--protocols/Telegram/src/t_accounts.cpp56
-rw-r--r--protocols/Telegram/src/t_callback.cpp61
-rw-r--r--protocols/Telegram/src/t_callback.h1
-rw-r--r--protocols/Telegram/src/t_messages.cpp9
-rw-r--r--protocols/Telegram/src/t_messages.h0
-rw-r--r--protocols/Telegram/src/t_network.cpp629
-rw-r--r--protocols/Telegram/src/t_network.h48
-rw-r--r--protocols/Telegram/src/t_proto.cpp166
-rw-r--r--protocols/Telegram/src/t_proto.h121
-rw-r--r--protocols/Telegram/src/t_timers.cpp56
-rw-r--r--protocols/Telegram/src/t_utils.cpp285
-rw-r--r--protocols/Telegram/src/tgl/auto-static-autocomplete.c63
-rw-r--r--protocols/Telegram/src/tgl/auto-static-fetch.c106
-rw-r--r--protocols/Telegram/src/tgl/auto-static-print-ds.c106
-rw-r--r--protocols/Telegram/src/tgl/auto-static-print.c461
-rw-r--r--protocols/Telegram/src/tgl/auto-static-store.c262
-rw-r--r--protocols/Telegram/src/tgl/auto.h62
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-autocomplete.c29968
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-autocomplete.h865
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-fetch-ds.c11876
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-fetch-ds.h716
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-fetch.c16330
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-fetch.h717
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-free-ds.c9115
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-free-ds.h569
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-print-ds.c16382
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-print-ds.h719
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-skip.c11301
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-skip.h714
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-store-ds.c10207
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-store-ds.h718
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-store.c24400
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-store.h848
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-types.c1793
-rw-r--r--protocols/Telegram/src/tgl/auto/auto-types.h1589
-rw-r--r--protocols/Telegram/src/tgl/auto/constants.h561
-rw-r--r--protocols/Telegram/src/tgl/binlog.c1830
-rw-r--r--protocols/Telegram/src/tgl/config.h162
-rw-r--r--protocols/Telegram/src/tgl/mime-types.c4421
-rw-r--r--protocols/Telegram/src/tgl/mtproto-client.c1489
-rw-r--r--protocols/Telegram/src/tgl/mtproto-client.h61
-rw-r--r--protocols/Telegram/src/tgl/mtproto-common.c475
-rw-r--r--protocols/Telegram/src/tgl/mtproto-common.h385
-rw-r--r--protocols/Telegram/src/tgl/mtproto-utils.c178
-rw-r--r--protocols/Telegram/src/tgl/mtproto-utils.h7
-rw-r--r--protocols/Telegram/src/tgl/no-preview.h106
-rw-r--r--protocols/Telegram/src/tgl/queries-encrypted.c758
-rw-r--r--protocols/Telegram/src/tgl/queries.c4477
-rw-r--r--protocols/Telegram/src/tgl/queries.h84
-rw-r--r--protocols/Telegram/src/tgl/structures.c2311
-rw-r--r--protocols/Telegram/src/tgl/tg-mime-types.c112
-rw-r--r--protocols/Telegram/src/tgl/tg-mime-types.h3
-rw-r--r--protocols/Telegram/src/tgl/tgl-binlog.h73
-rw-r--r--protocols/Telegram/src/tgl/tgl-fetch.h59
-rw-r--r--protocols/Telegram/src/tgl/tgl-inner.h33
-rw-r--r--protocols/Telegram/src/tgl/tgl-layout.h539
-rw-r--r--protocols/Telegram/src/tgl/tgl-methods-in.h50
-rw-r--r--protocols/Telegram/src/tgl/tgl-net-inner.h93
-rw-r--r--protocols/Telegram/src/tgl/tgl-net.c674
-rw-r--r--protocols/Telegram/src/tgl/tgl-net.h24
-rw-r--r--protocols/Telegram/src/tgl/tgl-structures.h69
-rw-r--r--protocols/Telegram/src/tgl/tgl-timers.c69
-rw-r--r--protocols/Telegram/src/tgl/tgl-timers.h27
-rw-r--r--protocols/Telegram/src/tgl/tgl.c149
-rw-r--r--protocols/Telegram/src/tgl/tgl.h659
-rw-r--r--protocols/Telegram/src/tgl/tools.c406
-rw-r--r--protocols/Telegram/src/tgl/tools.h144
-rw-r--r--protocols/Telegram/src/tgl/tree.h179
-rw-r--r--protocols/Telegram/src/tgl/updates.c668
-rw-r--r--protocols/Telegram/src/tgl/updates.h34
-rw-r--r--protocols/Telegram/src/version.h14
-rw-r--r--protocols/Telegram/telegram.vcxproj139
-rw-r--r--protocols/Telegram/telegram.vcxproj.filters150
-rw-r--r--protocols/WhatsApp/CMakeLists.txt4
-rw-r--r--protocols/WhatsApp/WhatsApp.vcxproj44
-rw-r--r--protocols/WhatsApp/WhatsApp.vcxproj.filters4
-rw-r--r--protocols/WhatsApp/proto_whatsapp/CMakeLists.txt2
-rw-r--r--protocols/WhatsApp/proto_whatsapp/Proto_WhatsApp.vcxproj28
-rw-r--r--protocols/WhatsApp/proto_whatsapp/Proto_WhatsApp.vcxproj.filters4
-rw-r--r--protocols/WhatsApp/proto_whatsapp/res/Away.icobin5430 -> 0 bytes
-rw-r--r--protocols/WhatsApp/proto_whatsapp/res/Invisible.icobin5430 -> 0 bytes
-rw-r--r--protocols/WhatsApp/proto_whatsapp/res/Offline.icobin5430 -> 0 bytes
-rw-r--r--protocols/WhatsApp/proto_whatsapp/res/Online.icobin5430 -> 0 bytes
-rw-r--r--protocols/WhatsApp/proto_whatsapp/res/Proto_WhatsApp.rc72
-rw-r--r--protocols/WhatsApp/proto_whatsapp/src/resource.h20
-rw-r--r--protocols/WhatsApp/res/add-group.icobin1150 -> 0 bytes
-rw-r--r--protocols/WhatsApp/res/version.rc55
-rw-r--r--protocols/WhatsApp/res/whatsapp.icobin1150 -> 0 bytes
-rw-r--r--protocols/WhatsApp/res/whatsapp.rc159
-rw-r--r--protocols/WhatsApp/src/OpenSSL/digest.c278
-rw-r--r--protocols/WhatsApp/src/OpenSSL/evp.h221
-rw-r--r--protocols/WhatsApp/src/OpenSSL/evp_lib.c165
-rw-r--r--protocols/WhatsApp/src/OpenSSL/hmac.c170
-rw-r--r--protocols/WhatsApp/src/OpenSSL/hmac.h103
-rw-r--r--protocols/WhatsApp/src/OpenSSL/m_sha1.c128
-rw-r--r--protocols/WhatsApp/src/OpenSSL/md32_common.h408
-rw-r--r--protocols/WhatsApp/src/OpenSSL/p5_crpt2.c113
-rw-r--r--protocols/WhatsApp/src/OpenSSL/rc4.h23
-rw-r--r--protocols/WhatsApp/src/OpenSSL/rc4_enc.c314
-rw-r--r--protocols/WhatsApp/src/OpenSSL/rc4_skey.c137
-rw-r--r--protocols/WhatsApp/src/OpenSSL/rsa_sign.c75
-rw-r--r--protocols/WhatsApp/src/OpenSSL/sha_locl.h443
-rw-r--r--protocols/WhatsApp/src/WASocketConnection.cpp104
-rw-r--r--protocols/WhatsApp/src/WASocketConnection.h35
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeReader.cpp347
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeReader.h73
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeWriter.cpp276
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeWriter.h71
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/ByteArray.cpp113
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/ByteArray.h53
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/FMessage.cpp94
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/FMessage.h83
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/IMutex.h14
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/ISocketConnection.h24
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/KeyStream.cpp92
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/LICENSE340
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/MediaUploader.cpp134
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/MediaUploader.h18
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/PhoneNumber.cpp298
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/PhoneNumber.h23
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/ProtocolTreeNode.cpp183
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/ProtocolTreeNode.h81
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/README.md30
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/WAConnection.cpp1125
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/WAConnection.h415
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/WAException.h40
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/WALogin.cpp182
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/WALogin.h67
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/WARegister.cpp71
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/WARegister.h23
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/targetver.h8
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/utilities.cpp386
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/utilities.h70
-rw-r--r--protocols/WhatsApp/src/avatars.cpp134
-rw-r--r--protocols/WhatsApp/src/chat.cpp522
-rw-r--r--protocols/WhatsApp/src/connection.cpp145
-rw-r--r--protocols/WhatsApp/src/constants.h51
-rw-r--r--protocols/WhatsApp/src/contacts.cpp191
-rw-r--r--protocols/WhatsApp/src/db.h33
-rw-r--r--protocols/WhatsApp/src/definitions.h14
-rw-r--r--protocols/WhatsApp/src/dialogs.cpp235
-rw-r--r--protocols/WhatsApp/src/dialogs.h6
-rw-r--r--protocols/WhatsApp/src/entities.h34
-rw-r--r--protocols/WhatsApp/src/main.cpp100
-rw-r--r--protocols/WhatsApp/src/media.cpp87
-rw-r--r--protocols/WhatsApp/src/messages.cpp137
-rw-r--r--protocols/WhatsApp/src/proto.cpp438
-rw-r--r--protocols/WhatsApp/src/proto.h203
-rw-r--r--protocols/WhatsApp/src/resource.h43
-rw-r--r--protocols/WhatsApp/src/stdafx.cxx8
-rwxr-xr-xprotocols/WhatsApp/src/stdafx.h90
-rw-r--r--protocols/WhatsApp/src/theme.cpp71
-rw-r--r--protocols/WhatsApp/src/theme.h20
-rw-r--r--protocols/WhatsApp/src/utils.cpp93
-rw-r--r--protocols/WhatsApp/src/utils.h52
-rw-r--r--protocols/WhatsApp/src/version.h14
205 files changed, 0 insertions, 190295 deletions
diff --git a/protocols/Telegram/CMakeLists.txt b/protocols/Telegram/CMakeLists.txt
deleted file mode 100644
index 6fd3fc555a..0000000000
--- a/protocols/Telegram/CMakeLists.txt
+++ /dev/null
@@ -1,29 +0,0 @@
-file(GLOB SOURCES "src/*.h" "res/*.rc"
-"src/tgl/auto/auto-autocomplete.c"
-"src/tgl/auto/auto-fetch-ds.c"
-"src/tgl/auto/auto-fetch.c"
-"src/tgl/auto/auto-free-ds.c"
-"src/tgl/auto/auto-print-ds.c"
-"src/tgl/auto/auto-skip.c"
-"src/tgl/auto/auto-store-ds.c"
-"src/tgl/auto/auto-store.c"
-"src/tgl/auto/auto-types.c"
-"src/tgl/binlog.c"
-"src/tgl/mime-types.c"
-"src/tgl/mtproto-client.c"
-"src/tgl/mtproto-common.c"
-"src/tgl/mtproto-utils.c"
-"src/tgl/queries.c"
-"src/tgl/structures.c"
-"src/tgl/tg-mime-types.c"
-"src/tgl/tgl-net.c"
-"src/tgl/tgl-timers.c"
-"src/tgl/tgl.c"
-"src/tgl/tools.c"
-"src/tgl/updates.c"
-)
-include_directories(${CMAKE_SOURCE_DIR}/libs/libevent/include)
-set(TARGET Telegram)
-include(${CMAKE_SOURCE_DIR}/cmake/plugin.cmake)
-set_target_properties(${TARGET} PROPERTIES COMPILE_DEFINITIONS "HAVE_CONFIG_H")
-target_link_libraries(${TARGET} Zlib libevent libeay32.lib ssleay32.lib) \ No newline at end of file
diff --git a/protocols/Telegram/docs/tgl/CHANGELOG b/protocols/Telegram/docs/tgl/CHANGELOG
deleted file mode 100644
index 776a1f3037..0000000000
--- a/protocols/Telegram/docs/tgl/CHANGELOG
+++ /dev/null
@@ -1,23 +0,0 @@
-2.0.3
-* updated to layer 31 (bot support)
-* changed signature of contact_search method
-2.0.2
-* fixed small bugs
-* added block/unblock user method
-2.0.1
-* store error code for last operation in TLS->error/TLS->error_code
-* make interface more consitent
-* deleted outdated *_ex functions
-* fixed bugs
-* support for layer 28:
-* support for new pts system
-* support for new read system
-* support for passwords
-* support replies
-* support photo captions
-* support group links
-1.2.1
-* fixed registration/login problem
-* added extension to downloads
-1.2.0
-* layer 22 support
diff --git a/protocols/Telegram/docs/tgl/LICENSE b/protocols/Telegram/docs/tgl/LICENSE
deleted file mode 100644
index 3c12ac3bef..0000000000
--- a/protocols/Telegram/docs/tgl/LICENSE
+++ /dev/null
@@ -1,175 +0,0 @@
-GNU LESSER GENERAL PUBLIC LICENSE
-
-Version 2.1, February 1999
-
-Copyright (C) 1991, 1999 Free Software Foundation, Inc.
-51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-Everyone is permitted to copy and distribute verbatim copies
-of this license document, but changing it is not allowed.
-
-[This is the first released version of the Lesser GPL. It also counts
- as the successor of the GNU Library Public License, version 2, hence
- the version number 2.1.]
-Preamble
-
-The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users.
-
-This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below.
-
-When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things.
-
-To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it.
-
-For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights.
-
-We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library.
-
-To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others.
-
-Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license.
-
-Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs.
-
-When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library.
-
-We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances.
-
-For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License.
-
-In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system.
-
-Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library.
-
-The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run.
-
-TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you".
-
-A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables.
-
-The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".)
-
-"Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library.
-
-Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does.
-
-1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library.
-
-You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
-
-2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
-
-a) The modified work must itself be a software library.
-b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change.
-c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License.
-d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful.
-(For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.)
-
-These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library.
-
-In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
-
-3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices.
-
-Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy.
-
-This option is useful when you wish to copy part of the code of the Library into a program that is not a library.
-
-4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange.
-
-If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code.
-
-5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License.
-
-However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables.
-
-When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law.
-
-If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.)
-
-Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself.
-
-6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications.
-
-You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things:
-
-a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.)
-b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with.
-c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution.
-d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place.
-e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy.
-For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
-
-It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute.
-
-7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things:
-
-a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above.
-b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work.
-8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
-
-9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it.
-
-10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License.
-
-11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library.
-
-If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances.
-
-It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
-
-This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
-
-12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
-
-13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation.
-
-14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
-
-NO WARRANTY
-
-15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
-16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
-END OF TERMS AND CONDITIONS
-
-How to Apply These Terms to Your New Libraries
-
-If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License).
-
-To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
-
-one line to give the library's name and an idea of what it does.
-Copyright (C) year name of author
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Lesser General Public
-License as published by the Free Software Foundation; either
-version 2.1 of the License, or (at your option) any later version.
-
-This library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-Lesser General Public License for more details.
-
-You should have received a copy of the GNU Lesser General Public
-License along with this library; if not, write to the Free Software
-Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-Also add information on how to contact you by electronic and paper mail.
-
-You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names:
-
-Yoyodyne, Inc., hereby disclaims all copyright interest in
-the library `Frob' (a library for tweaking knobs) written
-by James Random Hacker.
-
-signature of Ty Coon, 1 April 1990
-Ty Coon, President of Vice
-That's all there is to it!
-
diff --git a/protocols/Telegram/docs/tgl/Makefile.in b/protocols/Telegram/docs/tgl/Makefile.in
deleted file mode 100644
index 36c6d7ac83..0000000000
--- a/protocols/Telegram/docs/tgl/Makefile.in
+++ /dev/null
@@ -1,95 +0,0 @@
-srcdir=@srcdir@
-
-CFLAGS=@CFLAGS@
-LDFLAGS=@LDFLAGS@ @OPENSSL_LDFLAGS@
-CPPFLAGS=@CPPFLAGS@ @OPENSSL_INCLUDES@
-DEFS=@DEFS@
-COMPILE_FLAGS=${CFLAGS} ${CPFLAGS} ${CPPFLAGS} ${DEFS} -Wall -Wextra -Werror -Wno-deprecated-declarations -fno-strict-aliasing -fno-omit-frame-pointer -ggdb -Wno-unused-parameter -fPIC
-
-EXTRA_LIBS=@LIBS@ @EXTRA_LIBS@ @OPENSSL_LIBS@
-LOCAL_LDFLAGS=-rdynamic -ggdb ${EXTRA_LIBS}
-LINK_FLAGS=${LDFLAGS} ${LOCAL_LDFLAGS}
-
-DEP=dep
-AUTO=auto
-OBJ=objs
-LIB=libs
-EXE=bin
-DIR_LIST=${DEP} ${AUTO} ${EXE} ${OBJ} ${LIB} ${DEP}/auto ${OBJ}/auto
-
-LIB_LIST=${LIB}/libtgl.a ${LIB}/libtgl.so
-
-TGL_OBJECTS=${OBJ}/mtproto-common.o ${OBJ}/mtproto-client.o ${OBJ}/queries.o ${OBJ}/structures.o ${OBJ}/binlog.o ${OBJ}/tgl.o ${OBJ}/updates.o ${OBJ}/tg-mime-types.o ${OBJ}/mtproto-utils.o @EXTRA_OBJECTS@
-TGL_OBJECTS_AUTO=${OBJ}/auto/auto-skip.o ${OBJ}/auto/auto-fetch.o ${OBJ}/auto/auto-store.o ${OBJ}/auto/auto-autocomplete.o ${OBJ}/auto/auto-types.o ${OBJ}/auto/auto-fetch-ds.o ${OBJ}/auto/auto-free-ds.o ${OBJ}/auto/auto-store-ds.o ${OBJ}/auto/auto-print-ds.o
-TLD_OBJECTS=${OBJ}/dump-tl-file.o
-GENERATE_OBJECTS=${OBJ}/generate.o
-COMMON_OBJECTS=${OBJ}/tools.o
-OBJ_C=${GENERATE_OBJECTS} ${COMMON_OBJECTS} ${TGL_OBJECTS} ${TLD_OBJECTS}
-
-DEPENDENCE=$(subst ${OBJ}/,${DEP}/,$(patsubst %.o,%.d,${OBJ_C}))
-DEPENDENCE_LIST=${DEPENDENCE}
-
-INCLUDE=-I. -I${srcdir}
-CC=@CC@
-
-.SUFFIXES:
-
-.SUFFIXES: .c .h .o
-
-all: ${LIB_LIST}
-create_dirs_and_headers: ${DIR_LIST} ${AUTO}/auto-skip.h ${AUTO}/auto-fetch.h ${AUTO}/auto-store.h ${AUTO}/auto-autocomplete.h ${AUTO}/auto-types.h
-create_dirs: ${DIR_LIST}
-dump-tl: ${EXE}/dump-tl-file
-
-include ${srcdir}/Makefile.tl-parser
-
-${DIR_LIST}:
- @test -d $@ || mkdir -p $@
-
--include ${DEPENDENCE_LIST}
-
-${TGL_OBJECTS}: ${AUTO}/constants.h ${AUTO}/auto-skip.h ${AUTO}/auto-fetch.h ${AUTO}/auto-store.h ${AUTO}/auto-autocomplete.h ${AUTO}/auto-types.h ${AUTO}/auto-fetch-ds.h ${AUTO}/auto-free-ds.h ${AUTO}/auto-store-ds.h ${AUTO}/auto-print-ds.h
-
-${OBJ_C}: ${OBJ}/%.o: ${srcdir}/%.c | create_dirs
- ${CC} ${INCLUDE} ${COMPILE_FLAGS} -c -MP -MD -MF ${DEP}/$*.d -MQ ${OBJ}/$*.o -o $@ $<
-
-${TGL_OBJECTS_AUTO}: ${OBJ}/auto/%.o: ${AUTO}/%.c | create_dirs
- ${CC} ${INCLUDE} ${COMPILE_FLAGS} -iquote ${srcdir}/tgl -c -MP -MD -MF ${DEP}/$*.d -MQ ${OBJ}/$*.o -o $@ $<
-
-${LIB}/libtgl.a: ${TGL_OBJECTS} ${COMMON_OBJECTS} ${TGL_OBJECTS_AUTO}
- rm -f $@ && ar ruv $@ ${TGL_OBJECTS} ${COMMON_OBJECTS}
-
-${LIB}/libtgl.so: ${TGL_OBJECTS} ${COMMON_OBJECTS} ${TGL_OBJECTS_AUTO}
- ${CC} -shared -o $@ ${TGL_OBJECTS} ${COMMON_OBJECTS} ${LINK_FLAGS}
-
-${EXE}/generate: ${GENERATE_OBJECTS} ${COMMON_OBJECTS}
- ${CC} ${GENERATE_OBJECTS} ${COMMON_OBJECTS} ${LINK_FLAGS} -o $@
-
-${AUTO}/scheme.tlo: ${AUTO}/scheme.tl ${EXE}/tl-parser
- ${EXE}/tl-parser -e $@ ${AUTO}/scheme.tl
-
-${AUTO}/scheme.tl: ${srcdir}/scheme.tl ${srcdir}/encrypted_scheme.tl ${srcdir}/binlog.tl ${srcdir}/mtproto.tl ${srcdir}/append.tl | ${AUTO}
- cat $^ > $@
-
-${AUTO}/scheme2.tl: ${AUTO}/scheme.tl ${EXE}/tl-parser
- ${EXE}/tl-parser -E ${AUTO}/scheme.tl 2> $@ || ( cat $@ && rm $@ && false )
-
-${AUTO}/auto.c: ${AUTO}/scheme.tlo ${EXE}/generate
- ${EXE}/generate ${AUTO}/scheme.tlo > $@
-
-${AUTO}/auto-%.c: ${AUTO}/scheme.tlo ${EXE}/generate auto/constants.h ${AUTO}/auto-%.h | create_dirs_and_headers
- ${EXE}/generate -g $(patsubst ${AUTO}/auto-%.c,%,$@) ${AUTO}/scheme.tlo > $@ || rm $@
-
-${AUTO}/auto-%.h: ${AUTO}/scheme.tlo ${EXE}/generate
- ${EXE}/generate -g $(patsubst ${AUTO}/auto-%.h,%-header,$@) ${AUTO}/scheme.tlo > $@ || rm $@
-
-
-${AUTO}/constants.h: ${AUTO}/scheme2.tl ${srcdir}/gen_constants_h.awk
- awk -f ${srcdir}/gen_constants_h.awk < $< > $@
-
-${EXE}/dump-tl-file: ${OBJ}/auto/auto.o ${TLD_OBJECTS}
- ${CC} ${OBJ}/auto/auto.o ${TLD_OBJECTS} ${LINK_FLAGS} -o $@
-
-clean:
- rm -rf ${DIR_LIST} config.log config.status > /dev/null || echo "all clean"
-
diff --git a/protocols/Telegram/docs/tgl/Makefile.tl-parser b/protocols/Telegram/docs/tgl/Makefile.tl-parser
deleted file mode 100644
index 9600514661..0000000000
--- a/protocols/Telegram/docs/tgl/Makefile.tl-parser
+++ /dev/null
@@ -1,7 +0,0 @@
-TL_PARSER_OBJECTS=${OBJ}/tl-parser.o ${OBJ}/tlc.o ${OBJ}/crc32.o
-
-${TL_PARSER_OBJECTS}: ${OBJ}/%.o: ${srcdir}/tl-parser/%.c | create_dirs
- ${CC} ${INCLUDE} ${COMPILE_FLAGS} -iquote ${srcdir}/tl-parser -c -MP -MD -MF ${DEP}/$*.d -MQ ${OBJ}/$*.o -o $@ $<
-
-${EXE}/tl-parser: ${TL_PARSER_OBJECTS}
- ${CC} $^ ${LINK_FLAGS} -o $@
diff --git a/protocols/Telegram/docs/tgl/README.md b/protocols/Telegram/docs/tgl/README.md
deleted file mode 100644
index e9cb491af3..0000000000
--- a/protocols/Telegram/docs/tgl/README.md
+++ /dev/null
@@ -1,27 +0,0 @@
-This is library that handles telegram api and protocol.
-
-### API, Protocol documentation
-
-Documentation for Telegram API is available here: http://core.telegram.org/api
-
-Documentation for MTproto protocol is available here: http://core.telegram.org/mtproto
-
-### Installation
-
-Clone GitHub Repository
-
- git clone --recursive https://github.com/vysheng/tgl.git && cd tgl
-
-#### Linux and BSDs
-
-Install libs: openssl, zlib
-if you want to use provided net/timers then install libevent and add --enable-libevent key to configure
-
-Then,
-
- ./configure
- make
-
-### Contacts
-If you would like to ask a question, you can write to my telegram or to the github (or both). To contact me via telegram, you should use import_card method with argument 000653bf:0738ca5d:5521fbac:29246815:a27d0cda
-
diff --git a/protocols/Telegram/docs/tgl/auto-static-fetch-ds.c b/protocols/Telegram/docs/tgl/auto-static-fetch-ds.c
deleted file mode 100644
index e69de29bb2..0000000000
--- a/protocols/Telegram/docs/tgl/auto-static-fetch-ds.c
+++ /dev/null
diff --git a/protocols/Telegram/docs/tgl/auto-static-free-ds.c b/protocols/Telegram/docs/tgl/auto-static-free-ds.c
deleted file mode 100644
index e69de29bb2..0000000000
--- a/protocols/Telegram/docs/tgl/auto-static-free-ds.c
+++ /dev/null
diff --git a/protocols/Telegram/docs/tgl/auto-static-skip.c b/protocols/Telegram/docs/tgl/auto-static-skip.c
deleted file mode 100644
index e69de29bb2..0000000000
--- a/protocols/Telegram/docs/tgl/auto-static-skip.c
+++ /dev/null
diff --git a/protocols/Telegram/docs/tgl/auto-static-store-ds.c b/protocols/Telegram/docs/tgl/auto-static-store-ds.c
deleted file mode 100644
index e69de29bb2..0000000000
--- a/protocols/Telegram/docs/tgl/auto-static-store-ds.c
+++ /dev/null
diff --git a/protocols/Telegram/docs/tgl/auto-static.c b/protocols/Telegram/docs/tgl/auto-static.c
deleted file mode 100644
index 89a0a176bf..0000000000
--- a/protocols/Telegram/docs/tgl/auto-static.c
+++ /dev/null
@@ -1,328 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2014-2015
-*/
-
-#include "mtproto-common.h"
-#include "config.h"
-#include <string.h>
-
-#ifndef DISABLE_EXTF
-static int cur_token_len;
-static char *cur_token;
-static int cur_token_real_len;
-static int cur_token_quoted;
-
-#define expect_token(token,len) \
- if (len != cur_token_len || memcmp (cur_token, token, cur_token_len)) { return -1; } \
- local_next_token ();
-
-#define expect_token_ptr(token,len) \
- if (len != cur_token_len || memcmp (cur_token, token, cur_token_len)) { return 0; } \
- local_next_token ();
-
-#define expect_token_autocomplete(token,len) \
- if (cur_token_len == -3 && len >= cur_token_real_len && !memcmp (cur_token, token, cur_token_real_len)) { set_autocomplete_string (token); return -1; }\
- if (len != cur_token_len || memcmp (cur_token, token, cur_token_len)) { return -1; } \
- local_next_token ();
-
-#define expect_token_ptr_autocomplete(token,len) \
- if (cur_token_len == -3 && len >= cur_token_real_len && !memcmp (cur_token, token, cur_token_real_len)) { set_autocomplete_string (token); return 0; }\
- if (len != cur_token_len || memcmp (cur_token, token, cur_token_len)) { return 0; } \
- local_next_token ();
-
-
-static int autocomplete_mode;
-static char *autocomplete_string;
-static int (*autocomplete_fun)(const char *, int, int, char **);
-
-static void set_autocomplete_string (const char *s) {
- if (autocomplete_string) { free (autocomplete_string); }
- autocomplete_string = strdup (s);
- assert (autocomplete_string);
- autocomplete_mode = 1;
-}
-
-static void set_autocomplete_type (int (*f)(const char *, int, int, char **)) {
- autocomplete_fun = f;
- autocomplete_mode = 2;
-}
-
-static int is_int (void) {
- if (cur_token_len <= 0) { return 0; }
- char c = cur_token[cur_token_len];
- cur_token[cur_token_len] = 0;
- char *p = 0;
-
- if (strtoll (cur_token, &p, 10)) {}
- cur_token[cur_token_len] = c;
-
- return p == cur_token + cur_token_len;
-}
-
-static long long get_int (void) {
- if (cur_token_len <= 0) { return 0; }
- char c = cur_token[cur_token_len];
- cur_token[cur_token_len] = 0;
- char *p = 0;
-
- long long val = strtoll (cur_token, &p, 0);
- cur_token[cur_token_len] = c;
-
- return val;
-}
-
-static int is_double (void) {
- if (cur_token_len <= 0) { return 0; }
- char c = cur_token[cur_token_len];
- cur_token[cur_token_len] = 0;
- char *p = 0;
-
- if (strtod (cur_token, &p)) {}
- cur_token[cur_token_len] = c;
-
- return p == cur_token + cur_token_len;
-}
-
-static double get_double (void) {
- if (cur_token_len <= 0) { return 0; }
- char c = cur_token[cur_token_len];
- cur_token[cur_token_len] = 0;
- char *p = 0;
-
- double val = strtod (cur_token, &p);
- cur_token[cur_token_len] = c;
-
- return val;
-}
-
-static struct paramed_type *paramed_type_dup (struct paramed_type *P) {
- if (ODDP (P)) { return P; }
- struct paramed_type *R = malloc (sizeof (*R));
- assert (R);
- R->type = malloc (sizeof (*R->type));
- assert (R->type);
- memcpy (R->type, P->type, sizeof (*P->type));
- R->type->id = strdup (P->type->id);
- assert (R->type->id);
-
- if (P->type->params_num) {
- R->params = malloc (sizeof (void *) * P->type->params_num);
- assert (R->params);
- int i;
- for (i = 0; i < P->type->params_num; i++) {
- R->params[i] = paramed_type_dup (P->params[i]);
- }
- }
- return R;
-}
-
-void tgl_paramed_type_free (struct paramed_type *P) {
- if (ODDP (P)) { return; }
- if (P->type->params_num) {
- int i;
- for (i = 0; i < P->type->params_num; i++) {
- tgl_paramed_type_free (P->params[i]);
- }
- free (P->params);
- }
- free (P->type->id);
- free (P->type);
- free (P);
-}
-
-static char *buffer_pos, *buffer_end;
-
-static int is_wspc (char c) {
- return c <= 32 && c > 0;
-}
-
-static void skip_wspc (void) {
- while (buffer_pos < buffer_end && is_wspc (*buffer_pos)) {
- buffer_pos ++;
- }
-}
-
-static int is_letter (char c) {
- return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9') || c == '.' || c == '_' || c == '-';
-}
-
-
-static char exp_buffer[1 << 25];;
-static int exp_buffer_pos;
-
-static inline int is_hex (char c) {
- return (c >= '0' && c <= '9') || (c >= 'a' && c <= 'f');
-}
-
-static inline int hex2dec (char c) {
- if (c >= '0' && c <= '9') { return c - '0'; }
- else { return c - 'a' + 10; }
-}
-
-static void expand_backslashed (char *s, int len) {
- int backslashed = 0;
- exp_buffer_pos = 0;
- int i = 0;
- while (i < len) {
- assert (i + 3 <= (1 << 25));
- if (backslashed) {
- backslashed = 0;
- switch (s[i ++]) {
- case 'n':
- exp_buffer[exp_buffer_pos ++] = '\n';
- break;
- case 'r':
- exp_buffer[exp_buffer_pos ++] = '\r';
- break;
- case 't':
- exp_buffer[exp_buffer_pos ++] = '\t';
- break;
- case 'b':
- exp_buffer[exp_buffer_pos ++] = '\b';
- break;
- case 'a':
- exp_buffer[exp_buffer_pos ++] = '\a';
- break;
- case '\\':
- exp_buffer[exp_buffer_pos ++] = '\\';
- break;
- case 'x':
- if (i + 2 > len || !is_hex (s[i]) || !is_hex (s[i + 1])) {
- exp_buffer_pos = -1;
- return;
- }
- exp_buffer[exp_buffer_pos ++] = hex2dec (s[i]) * 16 + hex2dec (s[i + 1]);
- i += 2;
- break;
- default:
- break;
- }
- } else {
- if (s[i] == '\\') {
- backslashed = 1;
- i ++;
- } else {
- exp_buffer[exp_buffer_pos ++] = s[i ++];
- }
- }
- }
-}
-
-static void local_next_token (void) {
- skip_wspc ();
- cur_token_quoted = 0;
- if (buffer_pos >= buffer_end) {
- cur_token_len = -3;
- cur_token_real_len = 0;
- return;
- }
- char c = *buffer_pos;
- if (is_letter (c)) {
- cur_token = buffer_pos;
- while (buffer_pos < buffer_end && is_letter (*buffer_pos)) {
- buffer_pos ++;
- }
- if (buffer_pos < buffer_end) {
- cur_token_len = buffer_pos - cur_token;
- } else {
- cur_token_real_len = buffer_pos - cur_token;
- cur_token_len = -3;
- }
- return;
- } else if (c == '"') {
- cur_token_quoted = 1;
- cur_token = buffer_pos ++;
- int backslashed = 0;
- while (buffer_pos < buffer_end && (*buffer_pos != '"' || backslashed)) {
- if (*buffer_pos == '\\') {
- backslashed ^= 1;
- } else {
- backslashed = 0;
- }
- buffer_pos ++;
- }
- if (*buffer_pos == '"') {
- buffer_pos ++;
- expand_backslashed (cur_token + 1, buffer_pos - cur_token - 2);
- if (exp_buffer_pos < 0) {
- cur_token_len = -2;
- } else {
- cur_token_len = exp_buffer_pos;
- cur_token = exp_buffer;
- }
- } else {
- cur_token_len = -2;
- }
- return;
- } else {
- if (c) {
- cur_token = buffer_pos ++;
- cur_token_len = 1;
- } else {
- cur_token_len = -3;
- cur_token_real_len = 0;
- }
- }
-}
-
-#define MAX_FVARS 100
-static struct paramed_type *fvars[MAX_FVARS];
-static int fvars_pos;
-
-static void add_var_to_be_freed (struct paramed_type *P) {
- assert (fvars_pos < MAX_FVARS);
- fvars[fvars_pos ++] = P;
-}
-
-static void free_vars_to_be_freed (void) {
- int i;
- for (i = 0; i < fvars_pos; i++) {
- tgl_paramed_type_free (fvars[i]);
- }
- fvars_pos = 0;
-}
-
-int tglf_extf_autocomplete (struct tgl_state *TLS, const char *text, int text_len, int index, char **R, char *data, int data_len) {
- if (index == -1) {
- buffer_pos = data;
- buffer_end = data + data_len;
- autocomplete_mode = 0;
- local_next_token ();
- struct paramed_type *P = autocomplete_function_any ();
- free_vars_to_be_freed ();
- if (P) { tgl_paramed_type_free (P); }
- }
- if (autocomplete_mode == 0) { return -1; }
- int len = strlen (text);
- if (autocomplete_mode == 1) {
- if (index >= 0) { return -1; }
- index = 0;
- if (!strncmp (text, autocomplete_string, len)) {
- *R = strdup (autocomplete_string);
- assert (*R);
- return index;
- } else {
- return -1;
- }
- } else {
- return autocomplete_fun (text, len, index, R);
- }
-}
-
-#endif
diff --git a/protocols/Telegram/docs/tgl/binlog.tl b/protocols/Telegram/docs/tgl/binlog.tl
deleted file mode 100644
index a0c52424d7..0000000000
--- a/protocols/Telegram/docs/tgl/binlog.tl
+++ /dev/null
@@ -1,102 +0,0 @@
----types---
-
-binlog.encrKey key:64*[int] = binlog.EncrKey;
-
-binlog.start = binlog.Update;
-
-binlog.dcOption dc:int name:string ip:string port:int = binlog.Update;
-binlog.dcOptionNew flags:int dc:int name:string ip:string port:int = binlog.Update;
-
-binlog.authKey dc:int key:%binlog.EncrKey = binlog.Update;
-binlog.defaultDc dc:int = binlog.Update;
-binlog.dcSigned dc:int = binlog.Update;
-
-binlog.ourId id:int = binlog.Update;
-
-binlog.setDhParams root:int prime:%binlog.EncrKey version:int = binlog.Update;
-
-binlog.setPts pts:int = binlog.Update;
-binlog.setQts qts:int = binlog.Update;
-binlog.setDate date:int = binlog.Update;
-binlog.setSeq seq:int = binlog.Update;
-
-binlog.encrChatDelete id:int = binlog.Update;
-binlog.encrChatNew#84977251 flags:# id:int
- access_hash:flags.17?long
- date:flags.18?int
- admin:flags.19?int
- user_id:flags.20?int
- key:flags.21?%binlog.EncrKey
- g_key:flags.22?%binlog.EncrKey
- state:flags.23?int
- ttl:flags.24?int
- layer:flags.25?int
- in_seq_no:flags.26?int last_in_seq_no:flags.26?int out_seq_no:flags.26?int
- key_fingerprint:flags.27?long
- = binlog.Update;
-
-binlog.encrChatExchangeNew#9d49488d flags:# id:int
- exchange_id:flags.17?long
- key:flags.18?%binlog.EncrKey
- state:flags.19?int
- = binlog.Update;
-
-binlog.userDelete id:int = binlog.Update;
-binlog.userNew#127cf2f9 flags:# id:int
- access_hash:flags.17?long
- first_name:flags.18?string last_name:flags.18?string
- phone:flags.19?string
- username:flags.20?string
- photo:flags.21?Photo
- real_first_name:flags.22?string real_last_name:flags.22?string
- user_photo:flags.23?UserProfilePhoto
- last_read_in:flags.24?int
- last_read_out:flags.25?int
- bot_info:flags.26?BotInfo
- = binlog.Update;
-
-binlog.chatNew#0a10aa92 flags:# id:int
- title:flags.17?string
- user_num:flags.18?int
- date:flags.19?int
- version:flags.20?int participants:flags.20?(Vector ChatParticipant)
- chat_photo:flags.21?ChatPhoto
- photo:flags.22?Photo
- admin:flags.23?int
- last_read_in:flags.24?int
- last_read_out:flags.25?int
- = binlog.Update;
-
-binlog.chatAddParticipant id:int version:int user_id:int inviter_id:int date:int = binlog.Update;
-binlog.chatDelParticipant id:int version:int user_id:int = binlog.Update;
-
-binlog.setMsgId old_id:long new_id:int = binlog.Update;
-binlog.messageDelete lid:long = binlog.Update;
-
-binlog.messageNew#427cfcdb flags:# lid:long
- from_id:flags.17?int to_type:flags.17?int to_id:flags.17?int
- fwd_from_id:flags.18?int fwd_date:flags.18?int
- date:flags.19?int
- message:flags.20?string
- media:flags.21?MessageMedia
- action:flags.22?MessageAction
- reply_id:flags.23?int
- reply_markup:flags.24?ReplyMarkup
- = binlog.Update;
-
-binlog.messageEncrNew#6cf7cabc flags:# lid:long
- from_id:flags.17?int to_type:flags.17?int to_id:flags.17?int
- //empty 18 bit
- date:flags.19?int
- message:flags.20?string
- encr_media:flags.21?DecryptedMessageMedia
- encr_action:flags.22?DecryptedMessageAction
- file:flags.23?EncryptedFile
- = binlog.Update;
-
-binlog.msgUpdate#6dd4d85f lid:long = binlog.Update;
-
-binlog.resetAuthorization = binlog.Update;
-
-
----functions---
diff --git a/protocols/Telegram/docs/tgl/config.bat b/protocols/Telegram/docs/tgl/config.bat
deleted file mode 100644
index 7f18e916c5..0000000000
--- a/protocols/Telegram/docs/tgl/config.bat
+++ /dev/null
@@ -1,524 +0,0 @@
-@echo off
-setlocal enabledelayedexpansion
-set PACKAGE_NAME="telegram-cli"
-set PACKAGE_TARNAME="telegram-cli"
-set PACKAGE_VERSION="1.0"
-set PACKAGE_STRING="!PACKAGE_TARNAME:~1,-1! %PACKAGE_VERSION:~1%"
-set PACKAGE_BUGREPORT=""
-set PACKAGE_URL=""
-
-set SRC_FOLDER=..\..
-set SOURCE_LIST=()
-set AUTO_FOLDER=%SRC_FOLDER%\auto
-set BIN_FOLDER=bin
-set LIB_FOLDER=lib
-set DEFAULT_OUT_FOLDER=build
-set OUT_PATH=
-
-set GEN_TOOL=generate.exe
-set PARSER_TOOL=%SRC_FOLDER%\tl-parser\contrib\vs\build\Release\tl-parser.exe
-
-set CONFIG_HEADER_IN=%SRC_FOLDER%\config.h.in
-set CONFIG_HEADER=%SRC_FOLDER%\config.h
-
-set /p SCHEME_TL=<%SRC_FOLDER%\scheme.tl
-set SCHEME_TL=%SRC_FOLDER%\%SCHEME_TL%
-
-set /p ENCRYPTED_SCHEME_TL=<%SRC_FOLDER%\encrypted_scheme.tl
-set ENCRYPTED_SCHEME_TL=%SRC_FOLDER%\%ENCRYPTED_SCHEME_TL%
-
-set BINLOG_TL=%SRC_FOLDER%\binlog.tl
-set MTPROTO_TL=%SRC_FOLDER%\mtproto.tl
-set APPEND_TL=%SRC_FOLDER%\append.tl
-set CONSTANTS_HEADER=constants.h
-
-
-::#################################################################################################################################################
-:parse_args
-if not "%1"=="" (
- if "%1"=="-o" (
- set OUT_PATH=%2
- )
- if "%1"=="--gen-config" (
- set /A GEN_CONFIG=1
- )
- if "%1"=="--gen-scheme" (
- set /A GEN_SCHEME=1
- )
- if "%1"=="-debug" (
- set /A DEBUG=1
- set PARSER_TOOL=%PARSER_TOOL:Release=Debug%
- )
- if "%1"=="--parser-path" (
- set PARSER_TOOL=%2
- )
- if "%1"=="--help" (
- echo TGL Config
- echo Usage:
- echo --gen-config generate config.h
- echo --gen-scheme generate Telegram API scheme headers and source files
- echo --parser-path path to tl-parser.exe
- echo -debug debuge mode
- exit /b 0
- )
-
- shift
- goto :parse_args
-)
-
-if {%OUT_PATH%}=={} (
- set OUT_PATH=%DEFAULT_OUT_FOLDER%
-)
-::Make output folder if not exists
-if not exist %OUT_PATH% mkdir %OUT_PATH%
-
-
-::Copy source files to the output folder
-for %%i in %SOURCE_LIST% do (
- if not exist %OUT_PATH%\%%i (
- echo |set /p=Copying file: %%i
- copy %%i %OUT_PATH%\%%i 1>NUL && (
- echo Done
- ) || (
- echo Failed
- )
- )
-)
-
-::Generate config.h
-if defined GEN_CONFIG (
- if not exist %CONFIG_HEADER% call :gen_config %CONFIG_HEADER%
-)
-
-
-::Generate Telegram API scheme source files
-if defined GEN_SCHEME (
- set /a ERR_ENC=0
-
- ::Check if tl-parser.exe exists
- if not exist %PARSER_TOOL% (
- echo Error: Cannot find %PARSER_TOOL%
- exit /b 1
- )
-
- ::Check if generate.exe exists
- set "GEN_TOOL=%OUT_PATH%\%BIN_FOLDER%\%GEN_TOOL%"
- if not exist !GEN_TOOL! (
- echo Error: Cannot find !GEN_TOOL!
- exit /b 1
- )
-
- ::Make auto folder
- if not exist %AUTO_FOLDER% mkdir %AUTO_FOLDER%
-
- ::Generate scheme.tl
- echo |set /p=Generating scheme.tl
- type %SCHEME_TL% %ENCRYPTED_SCHEME_TL% %ENCRYPTED_SCHEME% %BINLOG_TL% %MTPROTO_TL% %APPEND_TL% 2>NUL > %AUTO_FOLDER%\scheme.tl
- echo Done
-
- ::Generate scheme2.tl
- echo |set /p=Generating scheme2.tl
- %PARSER_TOOL% -E %AUTO_FOLDER%\scheme.tl 2> %AUTO_FOLDER%\scheme2.tl
- if not !ERRORLEVEL!==0 (
- echo Failed
- exit /b 1
- ) else (
- echo Done
- )
-
- ::Generate scheme.tlo
- echo |set /p=Generating scheme.tlo
- "%PARSER_TOOL%" -e "%AUTO_FOLDER%\scheme.tlo" %AUTO_FOLDER%\scheme.tl
- if not !ERRORLEVEL!==0 (
- echo Failed
- exit /b 1
- ) else (
- echo Done
- )
-
- ::Generate constants.h
- echo |set /p=Generating constants.h
- call :gen_constants %AUTO_FOLDER%\scheme2.tl > %AUTO_FOLDER%\constants.h
- if not !ERRORLEVEL!==0 (
- echo Failed
- exit /b 1
- ) else (
- echo Done
- )
-
-
- ::Generate auto-*.h
- echo |set /p=Generating auto-skip.h
- !GEN_TOOL! -g skip-header %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-skip.h
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-skip.h del /q /f %AUTO_FOLDER%\auto-skip.h
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-fetch.h
- !GEN_TOOL! -g fetch-header %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-fetch.h
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-fetch.h del /q /f %AUTO_FOLDER%\auto-fetch.h
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-store.h
- !GEN_TOOL! -g store-header %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-store.h
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-store.h del /q /f %AUTO_FOLDER%\auto-store.h
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-autocomplete.h
- !GEN_TOOL! -g autocomplete-header %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-autocomplete.h
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-autocomplete.h del /q /f %AUTO_FOLDER%\auto-autocomplete.h
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-types.h
- !GEN_TOOL! -g types-header %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-types.h
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-types.h del /q /f %AUTO_FOLDER%\auto-types.h
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-fetch-ds.h
- !GEN_TOOL! -g fetch-ds-header %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-fetch-ds.h
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-fetch-ds.h del /q /f %AUTO_FOLDER%\auto-fetch-ds.h
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-free-ds.h
- !GEN_TOOL! -g free-ds-header %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-free-ds.h
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-free-ds.h del /q /f %AUTO_FOLDER%\auto-free-ds.h
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-store-ds.h
- !GEN_TOOL! -g store-ds-header %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-store-ds.h
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-store-ds.h del /q /f %AUTO_FOLDER%\auto-store-ds.h
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-print-ds.h
- !GEN_TOOL! -g print-ds-header %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-print-ds.h
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-print-ds.h del /q /f %AUTO_FOLDER%\auto-print-ds.h
- echo Failed
- ) else (
- echo Done
- )
-
-
- ::Generate auto-*.c
- echo |set /p=Generating auto-skip.c
- !GEN_TOOL! -g skip %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-skip.c
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-skip.c del /q /f %AUTO_FOLDER%\auto-skip.c
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-fetch.c
- !GEN_TOOL! -g fetch %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-fetch.c
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-fetch.c del /q /f %AUTO_FOLDER%\auto-fetch.c
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-store.c
- !GEN_TOOL! -g store %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-store.c
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-store.c del /q /f %AUTO_FOLDER%\auto-store.c
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-autocomplete.c
- !GEN_TOOL! -g autocomplete %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-autocomplete.c
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-autocomplete.c del /q /f %AUTO_FOLDER%\auto-autocomplete.c
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-types.c
- !GEN_TOOL! -g types %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-types.c
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-types.c del /q /f %AUTO_FOLDER%\auto-types.c
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-fetch-ds.c
- !GEN_TOOL! -g fetch-ds %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-fetch-ds.c
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-fetch-ds.c del /q /f %AUTO_FOLDER%\auto-fetch-ds.c
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-free-ds.c
- !GEN_TOOL! -g free-ds %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-free-ds.c
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-free-ds.c del /q /f %AUTO_FOLDER%\auto-free-ds.c
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-store-ds.c
- !GEN_TOOL! -g store-ds %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-store-ds.c
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-store-ds.c del /q /f %AUTO_FOLDER%\auto-store-ds.c
- echo Failed
- ) else (
- echo Done
- )
-
- echo |set /p=Generating auto-print-ds.c
- !GEN_TOOL! -g print-ds %AUTO_FOLDER%\scheme.tlo > %AUTO_FOLDER%\auto-print-ds.c
- if not !ERRORLEVEL!==0 (
- set /a ERR_ENC=!ERRORLEVEL!
- if exist %AUTO_FOLDER%\auto-print-ds.c del /q /f %AUTO_FOLDER%\auto-print-ds.c
- echo Failed
- ) else (
- echo Done
- )
- set /a ERRORLEVEL=!ERR_ENC!
-)
-
-::Script End
-exit /b !ERRORLEVEL!
-
-::#################################################################################################################################################
-:: Script Functions
-::#################################################################################################################################################
-
-:gen_config <output folder>
- :rem Copy config.h.in to the output folder
- echo |set /p=Copying file: %CONFIG_HEADER_in%
- copy %CONFIG_HEADER_IN% %1 1>NUL && (
- echo Done
- ) || (
- echo Failed
- exit /B %ERRORLEVEL%
- )
-
- echo |set /p=Configurating file: config.h
- call :find_and_replace %1 "#undef PACKAGE_BUGREPORT" "#define PACKAGE_BUGREPORT %PACKAGE_BUGREPORT%"
- call :find_and_replace %1 "#undef PACKAGE_NAME" "#define PACKAGE_NAME %PACKAGE_NAME%"
- call :find_and_replace %1 "#undef PACKAGE_STRING" "#define PACKAGE_STRING %PACKAGE_STRING%"
- call :find_and_replace %1 "#undef PACKAGE_TARNAME" "#define PACKAGE_TARNAME %PACKAGE_TARNAME%"
- call :find_and_replace %1 "#undef PACKAGE_URL" "#define PACKAGE_URL %PACKAGE_URL%"
- call :find_and_replace %1 "#undef PACKAGE_VERSION" "#define PACKAGE_VERSION %PACKAGE_VERSION%"
-
- call :find_and_replace %1 "#undef EVENT_V2" "#define EVENT_V2 1"
- call :find_and_replace %1 "#undef HAVE_FCNTL_H" "#define HAVE_FCNTL_H 1"
- call :find_and_replace %1 "#undef HAVE_INTTYPES_H" "#define HAVE_INTTYPES_H 1"
- call :find_and_replace %1 "#undef HAVE_LIBM" "#define HAVE_LIBM 1"
- call :find_and_replace %1 "#undef HAVE_LIBZ" "#define HAVE_LIBZ 1"
- call :find_and_replace %1 "#undef HAVE_MALLOC_H" "#define HAVE_MALLOC_H 1"
- call :find_and_replace %1 "#undef HAVE_MALLOC" "#define HAVE_MALLOC 1"
- call :find_and_replace %1 "#undef HAVE_MEMMOVE" "#define HAVE_MEMMOVE 1"
- call :find_and_replace %1 "#undef HAVE_MEMORY_H" "#define HAVE_MEMORY_H 1"
- call :find_and_replace %1 "#undef HAVE_MEMSET" "#define HAVE_MEMSET 1"
- call :find_and_replace %1 "#undef HAVE_MKDIR" "#define HAVE_MKDIR 1"
- call :find_and_replace %1 "#undef HAVE_REALLOC" "#define HAVE_REALLOC 1"
- call :find_and_replace %1 "#undef HAVE_SELECT" "#define HAVE_SELECT 1"
- call :find_and_replace %1 "#undef HAVE_SOCKET" "#define HAVE_SOCKET 1"
- call :find_and_replace %1 "#undef HAVE_STDINT_H" "#define HAVE_STDINT_H 1"
- call :find_and_replace %1 "#undef HAVE_STDLIB_H" "#define HAVE_STDLIB_H 1"
- call :find_and_replace %1 "#undef HAVE_STRDUP" "#define HAVE_STRDUP 1"
- call :find_and_replace %1 "#undef HAVE_STRING_H" "#define HAVE_STRING_H 1"
- call :find_and_replace %1 "#undef HAVE_STRNDUP" "#define HAVE_STRNDUP 1"
- call :find_and_replace %1 "#undef HAVE_SYS_STAT_H" "#define HAVE_SYS_STAT_H 1"
- call :find_and_replace %1 "#undef HAVE_SYS_TYPES_H" "#define HAVE_SYS_TYPES_H 1"
- call :find_and_replace %1 "#undef STDC_HEADERS" "#define STDC_HEADERS 1"
- call :find_and_replace %1 "#undef gid_t" "#define gid_t int"
- call :find_and_replace %1 "#undef uid_t" "#define uid_t int"
- call :find_and_replace %1 "#undef inline" "#define inline __inline"
- call :find_and_replace %1 "#undef" "// #undef"
- if %ERRORLEVEL% == 0 echo Done
- if not %ERRORLEVEL% == 0 (
- echo Failed
- if exist %1\%CONFIG_HEADER% del /q /f %1\%CONFIG_HEADER%
- exit /b 1
- )
- exit /B 0
-
-:gen_constants <input file>
- echo /*
- echo This file is part of telegram-client.
- echo.
- echo Telegram-client is free software: you can redistribute it and/or modify
- echo it under the terms of the GNU General Public License as published by
- echo the Free Software Foundation, either version 2 of the License, or
- echo (at your option) any later version.
- echo.
- echo Telegram-client is distributed in the hope that it will be useful,
- echo but WITHOUT ANY WARRANTY; without even the implied warranty of
- echo MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- echo GNU General Public License for more details.
- echo.
- echo You should have received a copy of the GNU General Public License
- echo along with this telegram-client. If not, see ^<http://www.gnu.org/licenses/^>.
- echo.
- echo Copyright Vitaly Valtman 2013
- echo */
- echo #ifndef CONSTANTS_H
- echo #define CONSTANTS_H
-
- setlocal EnableDelayedExpansion
- for /F "tokens=1" %%A in (%1) do (
- call :split %%A # a
- if %ERRORLEVEL% == 0 (
-
- call :sub a[0]
- if not "!h[%a[1]%]!"=="" (
- echo ERROR: Duplicate magic %a[1]% for define %a[0]% and !h[%a[1]%]! 1>&2
- exit /b 1
- )
-
- set h[!a[1]!]=!a[0]!
- echo #define CODE_!a[0]! 0x!a[1]!
- )
- )
- endlocal
- echo #endif
- exit /b0
-
-
-:find_and_replace <file> <findString> <replaceString>
- set file_path=%1
- set find_str=%2
- set "find_str=!find_str:~1,-1!"
- set replace_str=%3 %4
- set "replace_str=!replace_str:~1,-2!"
-
- for /f "delims=" %%i in ('type "%file_path%" ^| find /n /v "" ^& break ^> "%file_path%" ') do (
- set "line=%%i"
- setlocal enableDelayedExpansion
- set "line=!line:*]%find_str%=%replace_str%!"
- set "line=!line:*]=!"
- >>%file_path% echo(!line!
- endlocal
- )
- exit /B %ERRORLEVEL%
-
-:split <string> <delim> <resultVar>
- for /F "tokens=1,2 delims=%2" %%a in ("%1") do (
- if "%%a"=="" exit /b 1
- set %3[0]=%%a
- if "%%b"=="" exit /b 1
- set %3[1]=%%b
- )
- exit /b0
-
-
-:sub <string>
- set /A len= 0
- call :strlen %%1 len
- (
- setlocal EnableDelayedExpansion
- set "substr="
- for /l %%a IN (0,1,!len!) DO (
- set Char=!%1:~%%a,1!
- if "!Char!" EQU "A" SET Char=_a
- if "!Char!" EQU "B" SET Char=_b
- if "!Char!" EQU "C" SET Char=_c
- if "!Char!" EQU "D" SET Char=_d
- if "!Char!" EQU "E" SET Char=_e
- if "!Char!" EQU "F" SET Char=_f
- if "!Char!" EQU "G" SET Char=_g
- if "!Char!" EQU "H" SET Char=_h
- if "!Char!" EQU "I" SET Char=_i
- if "!Char!" EQU "J" SET Char=_j
- if "!Char!" EQU "K" SET Char=_k
- if "!Char!" EQU "L" SET Char=_l
- if "!Char!" EQU "M" SET Char=_m
- if "!Char!" EQU "N" SET Char=_n
- if "!Char!" EQU "O" SET Char=_o
- if "!Char!" EQU "P" SET Char=_p
- if "!Char!" EQU "Q" SET Char=_q
- if "!Char!" EQU "R" SET Char=_r
- if "!Char!" EQU "S" SET Char=_s
- if "!Char!" EQU "T" SET Char=_t
- if "!Char!" EQU "U" SET Char=_u
- if "!Char!" EQU "V" SET Char=_v
- if "!Char!" EQU "W" SET Char=_w
- if "!Char!" EQU "X" SET Char=_x
- if "!Char!" EQU "Y" SET Char=_y
- if "!Char!" EQU "Z" SET Char=_z
- if "!Char!" EQU "." SET Char=_
-
- set substr=!substr!!Char!
- )
- )
- (
- endlocal
- set "%~1=%substr%"
- exit /b
- )
-
-:strlen <stringVar> <resultVar>
- (
- setlocal EnableDelayedExpansion
- set "s=!%~1!#"
- set "len=0"
- for %%P in (4096 2048 1024 512 256 128 64 32 16 8 4 2 1) do (
- if "!s:~%%P,1!" NEQ "" (
- set /a "len+=%%P"
- set "s=!s:~%%P!"
- )
- )
- )
- (
- endlocal
- set "%~2=%len%"
- exit /b
- )
diff --git a/protocols/Telegram/docs/tgl/config.h.in b/protocols/Telegram/docs/tgl/config.h.in
deleted file mode 100644
index 1fcf6c723f..0000000000
--- a/protocols/Telegram/docs/tgl/config.h.in
+++ /dev/null
@@ -1,162 +0,0 @@
-/* config.h.in. Generated from configure.ac by autoheader. */
-
-/* disable extf queries */
-#undef DISABLE_EXTF
-
-/* Use libevent v1 */
-//#undef EVENT_V1
-
-/* Use libevent v2 */
-#undef EVENT_V2
-
-/* Define to 1 if you have the `alarm' function. */
-#undef HAVE_ALARM
-
-/* Define to 1 if you have the <arpa/inet.h> header file. */
-#undef HAVE_ARPA_INET_H
-
-/* Define to 1 if you have the `endpwent' function. */
-#undef HAVE_ENDPWENT
-
-/* Define to 1 if you have the <execinfo.h> header file. */
-#undef HAVE_EXECINFO_H
-
-/* Define to 1 if you have the <fcntl.h> header file. */
-#undef HAVE_FCNTL_H
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#undef HAVE_INTTYPES_H
-
-/* Define to 1 if you have the `event' library (-levent). */
-#undef HAVE_LIBEVENT
-
-/* Define to 1 if you have the `m' library (-lm). */
-#undef HAVE_LIBM
-
-/* Define to 1 if you have `z' library (-lz) */
-#undef HAVE_LIBZ
-
-/* Define to 1 if you have the <mach/mach.h> header file. */
-#undef HAVE_MACH_MACH_H
-
-/* Define to 1 if your system has a GNU libc compatible `malloc' function, and
- to 0 otherwise. */
-#undef HAVE_MALLOC
-
-/* Define to 1 if you have the <malloc.h> header file. */
-#undef HAVE_MALLOC_H
-
-/* Define to 1 if you have the `memmove' function. */
-#undef HAVE_MEMMOVE
-
-/* Define to 1 if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H
-
-/* Define to 1 if you have the `memset' function. */
-#undef HAVE_MEMSET
-
-/* Define to 1 if you have the `mkdir' function. */
-#undef HAVE_MKDIR
-
-/* Define to 1 if you have the <netdb.h> header file. */
-#undef HAVE_NETDB_H
-
-/* Define to 1 if you have the <netinet/in.h> header file. */
-#undef HAVE_NETINET_IN_H
-
-/* Define to 1 if your system has a GNU libc compatible `realloc' function,
- and to 0 otherwise. */
-#undef HAVE_REALLOC
-
-/* Define to 1 if you have the `select' function. */
-#undef HAVE_SELECT
-
-/* Define to 1 if you have the `socket' function. */
-#undef HAVE_SOCKET
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H
-
-/* Define to 1 if you have the `strdup' function. */
-#undef HAVE_STRDUP
-
-/* Define to 1 if you have the <strings.h> header file. */
-#undef HAVE_STRINGS_H
-
-/* Define to 1 if you have the <string.h> header file. */
-#undef HAVE_STRING_H
-
-/* Define to 1 if you have the `strndup' function. */
-#undef HAVE_STRNDUP
-
-/* Define to 1 if you have the <sys/file.h> header file. */
-#undef HAVE_SYS_FILE_H
-
-/* Define to 1 if you have the <sys/socket.h> header file. */
-#undef HAVE_SYS_SOCKET_H
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#undef HAVE_SYS_STAT_H
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#undef HAVE_SYS_TYPES_H
-
-/* Define to 1 if you have the <termios.h> header file. */
-#undef HAVE_TERMIOS_H
-
-/* Define to 1 if you have the `uname' function. */
-#undef HAVE_UNAME
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H
-
-/* Define to 1 if the system has the `__builtin_bswap32' built-in function */
-#undef HAVE___BUILTIN_BSWAP32
-
-/* Define to the address where bug reports for this package should be sent. */
-#undef PACKAGE_BUGREPORT
-
-/* Define to the full name of this package. */
-#undef PACKAGE_NAME
-
-/* Define to the full name and version of this package. */
-#undef PACKAGE_STRING
-
-/* Define to the one symbol short name of this package. */
-#undef PACKAGE_TARNAME
-
-/* Define to the home page for this package. */
-#undef PACKAGE_URL
-
-/* Define to the version of this package. */
-#undef PACKAGE_VERSION
-
-/* Define to 1 if you have the ANSI C header files. */
-#undef STDC_HEADERS
-
-/* fixed for correct valgrind work */
-#undef VALGRIND_FIXES
-
-/* Define to `int' if <sys/types.h> doesn't define. */
-#undef gid_t
-
-/* Define to `__inline__' or `__inline' if that's what the C compiler
- calls it, or to nothing if 'inline' is not supported under any name. */
-#ifndef __cplusplus
-#undef inline
-#endif
-
-/* Define to rpl_malloc if the replacement function should be used. */
-#undef malloc
-
-/* Define to rpl_realloc if the replacement function should be used. */
-#undef realloc
-
-/* Define to `unsigned int' if <sys/types.h> does not define. */
-#undef size_t
-
-/* Define to `int' if <sys/types.h> doesn't define. */
-#undef uid_t
diff --git a/protocols/Telegram/docs/tgl/configure b/protocols/Telegram/docs/tgl/configure
deleted file mode 100644
index 85b2f872e2..0000000000
--- a/protocols/Telegram/docs/tgl/configure
+++ /dev/null
@@ -1,5669 +0,0 @@
-#! /bin/sh
-# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for telegram-cli 1.0.
-#
-#
-# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
-#
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in #(
- *posix*) :
- set -o posix ;; #(
- *) :
- ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in #(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- PATH_SEPARATOR=:
- (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
- (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
- PATH_SEPARATOR=';'
- }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
-# Find who we are. Look in the path if we contain no directory separator.
-as_myself=
-case $0 in #((
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
- as_myself=$0
-fi
-if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-# Use a proper internal environment variable to ensure we don't fall
- # into an infinite loop, continuously re-executing ourselves.
- if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
- _as_can_reexec=no; export _as_can_reexec;
- # We cannot yet assume a decent shell, so we have to provide a
-# neutralization value for shells without unset; and this also
-# works around shells that cannot unset nonexistent variables.
-# Preserve -v and -x to the replacement shell.
-BASH_ENV=/dev/null
-ENV=/dev/null
-(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-case $- in # ((((
- *v*x* | *x*v* ) as_opts=-vx ;;
- *v* ) as_opts=-v ;;
- *x* ) as_opts=-x ;;
- * ) as_opts= ;;
-esac
-exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
-# Admittedly, this is quite paranoid, since all the known shells bail
-# out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-as_fn_exit 255
- fi
- # We don't want this to propagate to other subprocesses.
- { _as_can_reexec=; unset _as_can_reexec;}
-if test "x$CONFIG_SHELL" = x; then
- as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '\${1+\"\$@\"}'='\"\$@\"'
- setopt NO_GLOB_SUBST
-else
- case \`(set -o) 2>/dev/null\` in #(
- *posix*) :
- set -o posix ;; #(
- *) :
- ;;
-esac
-fi
-"
- as_required="as_fn_return () { (exit \$1); }
-as_fn_success () { as_fn_return 0; }
-as_fn_failure () { as_fn_return 1; }
-as_fn_ret_success () { return 0; }
-as_fn_ret_failure () { return 1; }
-
-exitcode=0
-as_fn_success || { exitcode=1; echo as_fn_success failed.; }
-as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
-as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
-as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
-
-else
- exitcode=1; echo positional parameters were not saved.
-fi
-test x\$exitcode = x0 || exit 1
-test -x / || exit 1"
- as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
- as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
- eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
- test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
-test \$(( 1 + 1 )) = 2 || exit 1"
- if (eval "$as_required") 2>/dev/null; then :
- as_have_required=yes
-else
- as_have_required=no
-fi
- if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_found=false
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- as_found=:
- case $as_dir in #(
- /*)
- for as_base in sh bash ksh sh5; do
- # Try only shells that exist, to save several forks.
- as_shell=$as_dir/$as_base
- if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
- CONFIG_SHELL=$as_shell as_have_required=yes
- if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
- break 2
-fi
-fi
- done;;
- esac
- as_found=false
-done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
- CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
-IFS=$as_save_IFS
-
-
- if test "x$CONFIG_SHELL" != x; then :
- export CONFIG_SHELL
- # We cannot yet assume a decent shell, so we have to provide a
-# neutralization value for shells without unset; and this also
-# works around shells that cannot unset nonexistent variables.
-# Preserve -v and -x to the replacement shell.
-BASH_ENV=/dev/null
-ENV=/dev/null
-(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-case $- in # ((((
- *v*x* | *x*v* ) as_opts=-vx ;;
- *v* ) as_opts=-v ;;
- *x* ) as_opts=-x ;;
- * ) as_opts= ;;
-esac
-exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
-# Admittedly, this is quite paranoid, since all the known shells bail
-# out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-exit 255
-fi
-
- if test x$as_have_required = xno; then :
- $as_echo "$0: This script requires a shell more modern than all"
- $as_echo "$0: the shells that I found on your system."
- if test x${ZSH_VERSION+set} = xset ; then
- $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
- $as_echo "$0: be upgraded to zsh 4.3.4 or later."
- else
- $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
-$0: including any error possibly output before this
-$0: message. Then install a modern shell, or manually run
-$0: the script under such a shell if you do have one."
- fi
- exit 1
-fi
-fi
-fi
-SHELL=${CONFIG_SHELL-/bin/sh}
-export SHELL
-# Unset more variables known to interfere with behavior of common tools.
-CLICOLOR_FORCE= GREP_OPTIONS=
-unset CLICOLOR_FORCE GREP_OPTIONS
-
-## --------------------- ##
-## M4sh Shell Functions. ##
-## --------------------- ##
-# as_fn_unset VAR
-# ---------------
-# Portably unset VAR.
-as_fn_unset ()
-{
- { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} # as_fn_exit
-
-# as_fn_mkdir_p
-# -------------
-# Create "$as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || eval $as_mkdir_p || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} # as_fn_mkdir_p
-
-# as_fn_executable_p FILE
-# -----------------------
-# Test if FILE is an executable regular file.
-as_fn_executable_p ()
-{
- test -f "$1" && test -x "$1"
-} # as_fn_executable_p
-# as_fn_append VAR VALUE
-# ----------------------
-# Append the text in VALUE to the end of the definition contained in VAR. Take
-# advantage of any shell optimizations that allow amortized linear growth over
-# repeated appends, instead of the typical quadratic growth present in naive
-# implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
- eval 'as_fn_append ()
- {
- eval $1+=\$2
- }'
-else
- as_fn_append ()
- {
- eval $1=\$$1\$2
- }
-fi # as_fn_append
-
-# as_fn_arith ARG...
-# ------------------
-# Perform arithmetic evaluation on the ARGs, and store the result in the
-# global $as_val. Take advantage of shells that can avoid forks. The arguments
-# must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
- eval 'as_fn_arith ()
- {
- as_val=$(( $* ))
- }'
-else
- as_fn_arith ()
- {
- as_val=`expr "$@" || test $? -eq 1`
- }
-fi # as_fn_arith
-
-
-# as_fn_error STATUS ERROR [LINENO LOG_FD]
-# ----------------------------------------
-# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-# script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
- as_status=$1; test $as_status -eq 0 && as_status=1
- if test "$4"; then
- as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
- fi
- $as_echo "$as_me: error: $2" >&2
- as_fn_exit $as_status
-} # as_fn_error
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-
- as_lineno_1=$LINENO as_lineno_1a=$LINENO
- as_lineno_2=$LINENO as_lineno_2a=$LINENO
- eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
- test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
- # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
- sed -n '
- p
- /[$]LINENO/=
- ' <$as_myself |
- sed '
- s/[$]LINENO.*/&-/
- t lineno
- b
- :lineno
- N
- :loop
- s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
- t loop
- s/-\n.*//
- ' >$as_me.lineno &&
- chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
- # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
- # already done that, so ensure we don't try to do so again and fall
- # in an infinite loop. This has already happened in practice.
- _as_can_reexec=no; export _as_can_reexec
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensitive to this).
- . "./$as_me.lineno"
- # Exit status is that of the last command.
- exit
-}
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in #(((((
--n*)
- case `echo 'xy\c'` in
- *c*) ECHO_T=' ';; # ECHO_T is single tab character.
- xy) ECHO_C='\c';;
- *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
- ECHO_T=' ';;
- esac;;
-*)
- ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
- rm -f conf$$.dir/conf$$.file
-else
- rm -f conf$$.dir
- mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
- if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -pR'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -pR'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
- as_ln_s='cp -pR'
- fi
-else
- as_ln_s='cp -pR'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p='mkdir -p "$as_dir"'
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-as_test_x='test -x'
-as_executable_p=as_fn_executable_p
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-test -n "$DJDIR" || exec 7<&0 </dev/null
-exec 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIBOBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-
-# Identity of this package.
-PACKAGE_NAME='telegram-cli'
-PACKAGE_TARNAME='telegram-cli'
-PACKAGE_VERSION='1.0'
-PACKAGE_STRING='telegram-cli 1.0'
-PACKAGE_BUGREPORT=''
-PACKAGE_URL=''
-
-ac_unique_file="config.h.in"
-# Factoring default headers for most tests.
-ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-# include <stdlib.h>
-# endif
-#endif
-#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-# include <memory.h>
-# endif
-# include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif"
-
-ac_subst_vars='LTLIBOBJS
-EXTRA_OBJECTS
-EXTRA_LIBS
-LIBOBJS
-EGREP
-GREP
-CPP
-OPENSSL_LDFLAGS
-OPENSSL_LIBS
-OPENSSL_INCLUDES
-PKG_CONFIG
-OBJEXT
-EXEEXT
-ac_ct_CC
-CPPFLAGS
-LDFLAGS
-CFLAGS
-CC
-target_alias
-host_alias
-build_alias
-LIBS
-ECHO_T
-ECHO_N
-ECHO_C
-DEFS
-mandir
-localedir
-libdir
-psdir
-pdfdir
-dvidir
-htmldir
-infodir
-docdir
-oldincludedir
-includedir
-localstatedir
-sharedstatedir
-sysconfdir
-datadir
-datarootdir
-libexecdir
-sbindir
-bindir
-program_transform_name
-prefix
-exec_prefix
-PACKAGE_URL
-PACKAGE_BUGREPORT
-PACKAGE_STRING
-PACKAGE_VERSION
-PACKAGE_TARNAME
-PACKAGE_NAME
-PATH_SEPARATOR
-SHELL'
-ac_subst_files=''
-ac_user_opts='
-enable_option_checking
-with_openssl
-with_zlib
-enable_extf
-enable_libevent
-enable_valgrind
-'
- ac_precious_vars='build_alias
-host_alias
-target_alias
-CC
-CFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS
-CPP'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-ac_unrecognized_opts=
-ac_unrecognized_sep=
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval $ac_prev=\$ac_option
- ac_prev=
- continue
- fi
-
- case $ac_option in
- *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
- *=) ac_optarg= ;;
- *) ac_optarg=yes ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case $ac_dashdash$ac_option in
- --)
- ac_dashdash=yes ;;
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir=$ac_optarg ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build_alias ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build_alias=$ac_optarg ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file=$ac_optarg ;;
-
- --config-cache | -C)
- cache_file=config.cache ;;
-
- -datadir | --datadir | --datadi | --datad)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=*)
- datadir=$ac_optarg ;;
-
- -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
- | --dataroo | --dataro | --datar)
- ac_prev=datarootdir ;;
- -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
- | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
- datarootdir=$ac_optarg ;;
-
- -disable-* | --disable-*)
- ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"enable_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval enable_$ac_useropt=no ;;
-
- -docdir | --docdir | --docdi | --doc | --do)
- ac_prev=docdir ;;
- -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
- docdir=$ac_optarg ;;
-
- -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
- ac_prev=dvidir ;;
- -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
- dvidir=$ac_optarg ;;
-
- -enable-* | --enable-*)
- ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"enable_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval enable_$ac_useropt=\$ac_optarg ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix=$ac_optarg ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he | -h)
- ac_init_help=long ;;
- -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
- ac_init_help=recursive ;;
- -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
- ac_init_help=short ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host_alias ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host_alias=$ac_optarg ;;
-
- -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
- ac_prev=htmldir ;;
- -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
- | --ht=*)
- htmldir=$ac_optarg ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir=$ac_optarg ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir=$ac_optarg ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir=$ac_optarg ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir=$ac_optarg ;;
-
- -localedir | --localedir | --localedi | --localed | --locale)
- ac_prev=localedir ;;
- -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
- localedir=$ac_optarg ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst | --locals)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
- localstatedir=$ac_optarg ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir=$ac_optarg ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c | -n)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir=$ac_optarg ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix=$ac_optarg ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix=$ac_optarg ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix=$ac_optarg ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name=$ac_optarg ;;
-
- -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
- ac_prev=pdfdir ;;
- -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
- pdfdir=$ac_optarg ;;
-
- -psdir | --psdir | --psdi | --psd | --ps)
- ac_prev=psdir ;;
- -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
- psdir=$ac_optarg ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir=$ac_optarg ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir=$ac_optarg ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site=$ac_optarg ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir=$ac_optarg ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir=$ac_optarg ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target_alias ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target_alias=$ac_optarg ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers | -V)
- ac_init_version=: ;;
-
- -with-* | --with-*)
- ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"with_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval with_$ac_useropt=\$ac_optarg ;;
-
- -without-* | --without-*)
- ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"with_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval with_$ac_useropt=no ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes=$ac_optarg ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries=$ac_optarg ;;
-
- -*) as_fn_error $? "unrecognized option: \`$ac_option'
-Try \`$0 --help' for more information"
- ;;
-
- *=*)
- ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
- # Reject names that are not valid shell variable names.
- case $ac_envvar in #(
- '' | [0-9]* | *[!_$as_cr_alnum]* )
- as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
- esac
- eval $ac_envvar=\$ac_optarg
- export $ac_envvar ;;
-
- *)
- # FIXME: should be removed in autoconf 3.0.
- $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- as_fn_error $? "missing argument to $ac_option"
-fi
-
-if test -n "$ac_unrecognized_opts"; then
- case $enable_option_checking in
- no) ;;
- fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
- *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
- esac
-fi
-
-# Check all directory arguments for consistency.
-for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
- datadir sysconfdir sharedstatedir localstatedir includedir \
- oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
- libdir localedir mandir
-do
- eval ac_val=\$$ac_var
- # Remove trailing slashes.
- case $ac_val in
- */ )
- ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
- eval $ac_var=\$ac_val;;
- esac
- # Be sure to have absolute directory names.
- case $ac_val in
- [\\/$]* | ?:[\\/]* ) continue;;
- NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
- esac
- as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
- if test "x$build_alias" = x; then
- cross_compiling=maybe
- elif test "x$build_alias" != "x$host_alias"; then
- cross_compiling=yes
- fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
- as_fn_error $? "working directory cannot be determined"
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
- as_fn_error $? "pwd does not report name of working directory"
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then the parent directory.
- ac_confdir=`$as_dirname -- "$as_myself" ||
-$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_myself" : 'X\(//\)[^/]' \| \
- X"$as_myself" : 'X\(//\)$' \| \
- X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- srcdir=$ac_confdir
- if test ! -r "$srcdir/$ac_unique_file"; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
- test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
- as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
- cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
- pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
- srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
- eval ac_env_${ac_var}_set=\${${ac_var}+set}
- eval ac_env_${ac_var}_value=\$${ac_var}
- eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
- eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat <<_ACEOF
-\`configure' configures telegram-cli 1.0 to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE. See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
- -h, --help display this help and exit
- --help=short display options specific to this package
- --help=recursive display the short help of all the included packages
- -V, --version display version information and exit
- -q, --quiet, --silent do not print \`checking ...' messages
- --cache-file=FILE cache test results in FILE [disabled]
- -C, --config-cache alias for \`--cache-file=config.cache'
- -n, --no-create do not create output files
- --srcdir=DIR find the sources in DIR [configure dir or \`..']
-
-Installation directories:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [PREFIX]
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
- --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
- --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
- --infodir=DIR info documentation [DATAROOTDIR/info]
- --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
- --mandir=DIR man documentation [DATAROOTDIR/man]
- --docdir=DIR documentation root [DATAROOTDIR/doc/telegram-cli]
- --htmldir=DIR html documentation [DOCDIR]
- --dvidir=DIR dvi documentation [DOCDIR]
- --pdfdir=DIR pdf documentation [DOCDIR]
- --psdir=DIR ps documentation [DOCDIR]
-_ACEOF
-
- cat <<\_ACEOF
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
- case $ac_init_help in
- short | recursive ) echo "Configuration of telegram-cli 1.0:";;
- esac
- cat <<\_ACEOF
-
-Optional Features:
- --disable-option-checking ignore unrecognized --enable/--with options
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
-enables extended queries system
---enable-libevent include libevent-based net and timers
-fixes for correct valgrind work
-
-Optional Packages:
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --with-openssl=DIR root of the OpenSSL directory
- --with-zlib=DIR root directory path of zlib installation [defaults to
- /usr/local or /usr if not found in /usr/local]
- --without-zlib to disable zlib usage completely
-
-Some influential environment variables:
- CC C compiler command
- CFLAGS C compiler flags
- LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
- nonstandard directory <lib dir>
- LIBS libraries to pass to the linker, e.g. -l<library>
- CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
- you have headers in a nonstandard directory <include dir>
- CPP C preprocessor
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to the package provider.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
- # If there are subdirs, report their specific --help.
- for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
- test -d "$ac_dir" ||
- { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
- continue
- ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
- # A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
- case $ac_top_builddir_sub in
- "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
- *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
- esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
- .) # We are building in place.
- ac_srcdir=.
- ac_top_srcdir=$ac_top_builddir_sub
- ac_abs_top_srcdir=$ac_pwd ;;
- [\\/]* | ?:[\\/]* ) # Absolute name.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir
- ac_abs_top_srcdir=$srcdir ;;
- *) # Relative name.
- ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_build_prefix$srcdir
- ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
- cd "$ac_dir" || { ac_status=$?; continue; }
- # Check for guested configure.
- if test -f "$ac_srcdir/configure.gnu"; then
- echo &&
- $SHELL "$ac_srcdir/configure.gnu" --help=recursive
- elif test -f "$ac_srcdir/configure"; then
- echo &&
- $SHELL "$ac_srcdir/configure" --help=recursive
- else
- $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
- fi || ac_status=$?
- cd "$ac_pwd" || { ac_status=$?; break; }
- done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
- cat <<\_ACEOF
-telegram-cli configure 1.0
-generated by GNU Autoconf 2.69
-
-Copyright (C) 2012 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
- exit
-fi
-
-## ------------------------ ##
-## Autoconf initialization. ##
-## ------------------------ ##
-
-# ac_fn_c_try_compile LINENO
-# --------------------------
-# Try to compile conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext
- if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_compile
-
-# ac_fn_c_try_link LINENO
-# -----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_link ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- test -x conftest$ac_exeext
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
- # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
- # interfere with the next link command; also delete a directory that is
- # left behind by Apple's compiler. We do this before executing the actions.
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_link
-
-# ac_fn_c_try_cpp LINENO
-# ----------------------
-# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } > conftest.i && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_cpp
-
-# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists, giving a warning if it cannot be compiled using
-# the include files in INCLUDES and setting the cache variable VAR
-# accordingly.
-ac_fn_c_check_header_mongrel ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if eval \${$3+:} false; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_header_compiler=yes
-else
- ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- ac_header_preproc=yes
-else
- ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
- yes:no: )
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
- ;;
- no:yes:* )
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
- ;;
-esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_mongrel
-
-# ac_fn_c_try_run LINENO
-# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then :
- ac_retval=0
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=$ac_status
-fi
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_run
-
-# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists and can be compiled using the include files in
-# INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_compile
-
-# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
-# -------------------------------------------
-# Tests whether TYPE exists after having included INCLUDES, setting cache
-# variable VAR accordingly.
-ac_fn_c_check_type ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- eval "$3=no"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-int
-main ()
-{
-if (sizeof ($2))
- return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-int
-main ()
-{
-if (sizeof (($2)))
- return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
- eval "$3=yes"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_type
-
-# ac_fn_c_check_func LINENO FUNC VAR
-# ----------------------------------
-# Tests whether FUNC exists, setting the cache variable VAR accordingly
-ac_fn_c_check_func ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $2 innocuous_$2
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $2 (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $2
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $2 ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$2 || defined __stub___$2
-choke me
-#endif
-
-int
-main ()
-{
-return $2 ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_func
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by telegram-cli $as_me 1.0, which was
-generated by GNU Autoconf 2.69. Invocation command line was
-
- $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
-
-/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
-/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
-/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- $as_echo "PATH: $as_dir"
- done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
- for ac_arg
- do
- case $ac_arg in
- -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- continue ;;
- *\'*)
- ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- case $ac_pass in
- 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
- 2)
- as_fn_append ac_configure_args1 " '$ac_arg'"
- if test $ac_must_keep_next = true; then
- ac_must_keep_next=false # Got value, back to normal.
- else
- case $ac_arg in
- *=* | --config-cache | -C | -disable-* | --disable-* \
- | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
- | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
- | -with-* | --with-* | -without-* | --without-* | --x)
- case "$ac_configure_args0 " in
- "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
- esac
- ;;
- -* ) ac_must_keep_next=true ;;
- esac
- fi
- as_fn_append ac_configure_args " '$ac_arg'"
- ;;
- esac
- done
-done
-{ ac_configure_args0=; unset ac_configure_args0;}
-{ ac_configure_args1=; unset ac_configure_args1;}
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log. We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
- # Save into config.log some information that might help in debugging.
- {
- echo
-
- $as_echo "## ---------------- ##
-## Cache variables. ##
-## ---------------- ##"
- echo
- # The following way of writing the cache mishandles newlines in values,
-(
- for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
- eval ac_val=\$$ac_var
- case $ac_val in #(
- *${as_nl}*)
- case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
- esac
- case $ac_var in #(
- _ | IFS | as_nl) ;; #(
- BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) { eval $ac_var=; unset $ac_var;} ;;
- esac ;;
- esac
- done
- (set) 2>&1 |
- case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
- *${as_nl}ac_space=\ *)
- sed -n \
- "s/'\''/'\''\\\\'\'''\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
- ;; #(
- *)
- sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
- ;;
- esac |
- sort
-)
- echo
-
- $as_echo "## ----------------- ##
-## Output variables. ##
-## ----------------- ##"
- echo
- for ac_var in $ac_subst_vars
- do
- eval ac_val=\$$ac_var
- case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
- esac
- $as_echo "$ac_var='\''$ac_val'\''"
- done | sort
- echo
-
- if test -n "$ac_subst_files"; then
- $as_echo "## ------------------- ##
-## File substitutions. ##
-## ------------------- ##"
- echo
- for ac_var in $ac_subst_files
- do
- eval ac_val=\$$ac_var
- case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
- esac
- $as_echo "$ac_var='\''$ac_val'\''"
- done | sort
- echo
- fi
-
- if test -s confdefs.h; then
- $as_echo "## ----------- ##
-## confdefs.h. ##
-## ----------- ##"
- echo
- cat confdefs.h
- echo
- fi
- test "$ac_signal" != 0 &&
- $as_echo "$as_me: caught signal $ac_signal"
- $as_echo "$as_me: exit $exit_status"
- } >&5
- rm -f core *.core core.conftest.* &&
- rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
- exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-$as_echo "/* confdefs.h */" > confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
-if test -n "$CONFIG_SITE"; then
- # We do not want a PATH search for config.site.
- case $CONFIG_SITE in #((
- -*) ac_site_file1=./$CONFIG_SITE;;
- */*) ac_site_file1=$CONFIG_SITE;;
- *) ac_site_file1=./$CONFIG_SITE;;
- esac
-elif test "x$prefix" != xNONE; then
- ac_site_file1=$prefix/share/config.site
- ac_site_file2=$prefix/etc/config.site
-else
- ac_site_file1=$ac_default_prefix/share/config.site
- ac_site_file2=$ac_default_prefix/etc/config.site
-fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
-do
- test "x$ac_site_file" = xNONE && continue
- if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
- sed 's/^/| /' "$ac_site_file" >&5
- . "$ac_site_file" \
- || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5; }
- fi
-done
-
-if test -r "$cache_file"; then
- # Some versions of bash will fail to source /dev/null (special files
- # actually), so we avoid doing that. DJGPP emulates it as a regular file.
- if test /dev/null != "$cache_file" && test -f "$cache_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
- case $cache_file in
- [\\/]* | ?:[\\/]* ) . "$cache_file";;
- *) . "./$cache_file";;
- esac
- fi
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
- >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
- eval ac_old_set=\$ac_cv_env_${ac_var}_set
- eval ac_new_set=\$ac_env_${ac_var}_set
- eval ac_old_val=\$ac_cv_env_${ac_var}_value
- eval ac_new_val=\$ac_env_${ac_var}_value
- case $ac_old_set,$ac_new_set in
- set,)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,set)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,);;
- *)
- if test "x$ac_old_val" != "x$ac_new_val"; then
- # differences in whitespace do not lead to failure.
- ac_old_val_w=`echo x $ac_old_val`
- ac_new_val_w=`echo x $ac_new_val`
- if test "$ac_old_val_w" != "$ac_new_val_w"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- ac_cache_corrupted=:
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
- eval $ac_var=\$ac_old_val
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
-$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
-$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
- fi;;
- esac
- # Pass precious variables to config.status.
- if test "$ac_new_set" = set; then
- case $ac_new_val in
- *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
- *) ac_arg=$ac_var=$ac_new_val ;;
- esac
- case " $ac_configure_args " in
- *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) as_fn_append ac_configure_args " '$ac_arg'" ;;
- esac
- fi
-done
-if $ac_cache_corrupted; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
-fi
-## -------------------- ##
-## Main body of script. ##
-## -------------------- ##
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-ac_config_headers="$ac_config_headers config.h"
-
-
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_check_openssl.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_CHECK_OPENSSL([action-if-found[, action-if-not-found]])
-#
-# DESCRIPTION
-#
-# Look for OpenSSL in a number of default spots, or in a user-selected
-# spot (via --with-openssl). Sets
-#
-# OPENSSL_INCLUDES to the include directives required
-# OPENSSL_LIBS to the -l directives required
-# OPENSSL_LDFLAGS to the -L or -R flags required
-#
-# and calls ACTION-IF-FOUND or ACTION-IF-NOT-FOUND appropriately
-#
-# This macro sets OPENSSL_INCLUDES such that source files should use the
-# openssl/ directory in include directives:
-#
-# #include <openssl/hmac.h>
-#
-# LICENSE
-#
-# Copyright (c) 2009,2010 Zmanda Inc. <http://www.zmanda.com/>
-# Copyright (c) 2009,2010 Dustin J. Mitchell <dustin@zmanda.com>
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 8
-
-# This is what autoupdate's m4 run will expand. It fires
-# the warning (with _au_warn_XXX), outputs it into the
-# updated configure.ac (with AC_DIAGNOSE), and then outputs
-# the replacement expansion.
-
-
-# This is an auxiliary macro that is also run when
-# autoupdate runs m4. It simply calls m4_warning, but
-# we need a wrapper so that each warning is emitted only
-# once. We break the quoting in m4_warning's argument in
-# order to expand this macro's arguments, not AU_DEFUN's.
-
-
-# Finally, this is the expansion that is picked up by
-# autoconf. It tells the user to run autoupdate, and
-# then outputs the replacement expansion. We do not care
-# about autoupdate's warning because that contains
-# information on what to do *after* running autoupdate.
-
-
-
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_check_zlib.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_CHECK_ZLIB([action-if-found], [action-if-not-found])
-#
-# DESCRIPTION
-#
-# This macro searches for an installed zlib library. If nothing was
-# specified when calling configure, it searches first in /usr/local and
-# then in /usr, /opt/local and /sw. If the --with-zlib=DIR is specified,
-# it will try to find it in DIR/include/zlib.h and DIR/lib/libz.a. If
-# --without-zlib is specified, the library is not searched at all.
-#
-# If either the header file (zlib.h) or the library (libz) is not found,
-# shell commands 'action-if-not-found' is run. If 'action-if-not-found' is
-# not specified, the configuration exits on error, asking for a valid zlib
-# installation directory or --without-zlib.
-#
-# If both header file and library are found, shell commands
-# 'action-if-found' is run. If 'action-if-found' is not specified, the
-# default action appends '-I${ZLIB_HOME}/include' to CPFLAGS, appends
-# '-L$ZLIB_HOME}/lib' to LDFLAGS, prepends '-lz' to LIBS, and calls
-# AC_DEFINE(HAVE_LIBZ). You should use autoheader to include a definition
-# for this symbol in a config.h file. Sample usage in a C/C++ source is as
-# follows:
-#
-# #ifdef HAVE_LIBZ
-# #include <zlib.h>
-# #endif /* HAVE_LIBZ */
-#
-# LICENSE
-#
-# Copyright (c) 2008 Loic Dachary <loic@senga.org>
-# Copyright (c) 2010 Bastien Chevreux <bach@chevreux.org>
-#
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation; either version 2 of the License, or (at your
-# option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
-# Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-# As a special exception, the respective Autoconf Macro's copyright owner
-# gives unlimited permission to copy, distribute and modify the configure
-# scripts that are the output of Autoconf when processing the Macro. You
-# need not follow the terms of the GNU General Public License when using
-# or distributing such scripts, even though portions of the text of the
-# Macro appear in them. The GNU General Public License (GPL) does govern
-# all other use of the material that constitutes the Autoconf Macro.
-#
-# This special exception to the GPL applies to versions of the Autoconf
-# Macro released by the Autoconf Archive. When you make and distribute a
-# modified version of the Autoconf Macro, you may extend this special
-# exception to the GPL to apply to your modified version as well.
-
-#serial 14
-
-# This is what autoupdate's m4 run will expand. It fires
-# the warning (with _au_warn_XXX), outputs it into the
-# updated configure.ac (with AC_DIAGNOSE), and then outputs
-# the replacement expansion.
-
-
-# This is an auxiliary macro that is also run when
-# autoupdate runs m4. It simply calls m4_warning, but
-# we need a wrapper so that each warning is emitted only
-# once. We break the quoting in m4_warning's argument in
-# order to expand this macro's arguments, not AU_DEFUN's.
-
-
-# Finally, this is the expansion that is picked up by
-# autoconf. It tells the user to run autoupdate, and
-# then outputs the replacement expansion. We do not care
-# about autoupdate's warning because that contains
-# information on what to do *after* running autoupdate.
-
-
-
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_gcc_builtin.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_GCC_BUILTIN(BUILTIN)
-#
-# DESCRIPTION
-#
-# This macro checks if the compiler supports one of GCC's built-in
-# functions; many other compilers also provide those same built-ins.
-#
-# The BUILTIN parameter is the name of the built-in function.
-#
-# If BUILTIN is supported define HAVE_<BUILTIN>. Keep in mind that since
-# builtins usually start with two underscores they will be copied over
-# into the HAVE_<BUILTIN> definition (e.g. HAVE___BUILTIN_EXPECT for
-# __builtin_expect()).
-#
-# The macro caches its result in the ax_cv_have_<BUILTIN> variable (e.g.
-# ax_cv_have___builtin_expect).
-#
-# The macro currently supports the following built-in functions:
-#
-# __builtin_assume_aligned
-# __builtin_bswap32
-# __builtin_bswap64
-# __builtin_choose_expr
-# __builtin___clear_cache
-# __builtin_clrsb
-# __builtin_clrsbl
-# __builtin_clrsbll
-# __builtin_clz
-# __builtin_clzl
-# __builtin_clzll
-# __builtin_complex
-# __builtin_constant_p
-# __builtin_ctz
-# __builtin_ctzl
-# __builtin_ctzll
-# __builtin_expect
-# __builtin_ffs
-# __builtin_ffsl
-# __builtin_ffsll
-# __builtin_fpclassify
-# __builtin_huge_val
-# __builtin_huge_valf
-# __builtin_huge_vall
-# __builtin_inf
-# __builtin_infd128
-# __builtin_infd32
-# __builtin_infd64
-# __builtin_inff
-# __builtin_infl
-# __builtin_isinf_sign
-# __builtin_nan
-# __builtin_nand128
-# __builtin_nand32
-# __builtin_nand64
-# __builtin_nanf
-# __builtin_nanl
-# __builtin_nans
-# __builtin_nansf
-# __builtin_nansl
-# __builtin_object_size
-# __builtin_parity
-# __builtin_parityl
-# __builtin_parityll
-# __builtin_popcount
-# __builtin_popcountl
-# __builtin_popcountll
-# __builtin_powi
-# __builtin_powif
-# __builtin_powil
-# __builtin_prefetch
-# __builtin_trap
-# __builtin_types_compatible_p
-# __builtin_unreachable
-#
-# Unsuppored built-ins will be tested with an empty parameter set and the
-# result of the check might be wrong or meaningless so use with care.
-#
-# LICENSE
-#
-# Copyright (c) 2013 Gabriele Svelto <gabriele.svelto@gmail.com>
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 2
-
-
-
-
-# Checks for programs.
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="${ac_tool_prefix}gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
- ac_ct_CC=$CC
- # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_CC" = x; then
- CC=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CC=$ac_ct_CC
- fi
-else
- CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="${ac_tool_prefix}cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- fi
-fi
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- ac_prog_rejected=no
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# != 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
- fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- for ac_prog in cl.exe
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$CC" && break
- done
-fi
-if test -z "$CC"; then
- ac_ct_CC=$CC
- for ac_prog in cl.exe
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_CC" && break
-done
-
- if test "x$ac_ct_CC" = x; then
- CC=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CC=$ac_ct_CC
- fi
-fi
-
-fi
-
-
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5; }
-
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
- { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compiler $ac_option >&5") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- sed '10a\
-... rest of stderr output deleted ...
- 10q' conftest.err >conftest.er1
- cat conftest.er1 >&5
- fi
- rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
-done
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-
-# The possible output files:
-ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
-
-ac_rmfiles=
-for ac_file in $ac_files
-do
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
- * ) ac_rmfiles="$ac_rmfiles $ac_file";;
- esac
-done
-rm -f $ac_rmfiles
-
-if { { ac_try="$ac_link_default"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link_default") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile. We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
- ;;
- [ab].out )
- # We found the default executable, but exeext='' is most
- # certainly right.
- break;;
- *.* )
- if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
- then :; else
- ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- fi
- # We set ac_cv_exeext here because the later test for it is not
- # safe: cross compilers may not add the suffix if given an `-o'
- # argument, so we may need to know it at that point already.
- # Even if this section looks crufty: it has the advantage of
- # actually working.
- break;;
- * )
- break;;
- esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
- ac_file=''
-fi
-if test -z "$ac_file"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "C compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-ac_exeext=$ac_cv_exeext
-
-rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
-if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
- *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- break;;
- * ) break;;
- esac
-done
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdio.h>
-int
-main ()
-{
-FILE *f = fopen ("conftest.out", "w");
- return ferror (f) || fclose (f) != 0;
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files="$ac_clean_files conftest.out"
-# Check that the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-if test "$cross_compiling" != yes; then
- { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
- if { ac_try='./conftest$ac_cv_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- cross_compiling=no
- else
- if test "$cross_compiling" = maybe; then
- cross_compiling=yes
- else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5; }
- fi
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- for ac_file in conftest.o conftest.obj conftest.*; do
- test -f "$ac_file" || continue;
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
- *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
- break;;
- esac
-done
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_compiler_gnu=yes
-else
- ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
- GCC=yes
-else
- GCC=
-fi
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_save_c_werror_flag=$ac_c_werror_flag
- ac_c_werror_flag=yes
- ac_cv_prog_cc_g=no
- CFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_g=yes
-else
- CFLAGS=""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
- ac_c_werror_flag=$ac_save_c_werror_flag
- CFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
- CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
- if test "$GCC" = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-g"
- fi
-else
- if test "$GCC" = yes; then
- CFLAGS="-O2"
- else
- CFLAGS=
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdarg.h>
-#include <stdio.h>
-struct stat;
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
- char **p;
- int i;
-{
- return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
- char *s;
- va_list v;
- va_start (v,p);
- s = g (p, va_arg (v,int));
- va_end (v);
- return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
- function prototypes and stuff, but not '\xHH' hex character constants.
- These don't provoke an error unfortunately, instead are silently treated
- as 'x'. The following induces an error, until -std is added to get
- proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
- array size at least. It's necessary to write '\x00'==0 to get something
- that's true only with -std. */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
- inside strings and character constants. */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
- ;
- return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
- -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
- CC="$ac_save_CC $ac_arg"
- if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_c89=$ac_arg
-fi
-rm -f core conftest.err conftest.$ac_objext
- test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
- x)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
- xno)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
- *)
- CC="$CC $ac_cv_prog_cc_c89"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
-
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-# BSD locations for headers and libraries from packages, Linux locations for self-compiled stuff.
-CPPFLAGS="$CPPFLAGS -I/usr/local/include"
-LDFLAGS="$LDFLAGS -L/usr/local/lib"
-
-# Checks for libraries.
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sqrt in -lm" >&5
-$as_echo_n "checking for sqrt in -lm... " >&6; }
-if ${ac_cv_lib_m_sqrt+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lm $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char sqrt ();
-int
-main ()
-{
-return sqrt ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_m_sqrt=yes
-else
- ac_cv_lib_m_sqrt=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_sqrt" >&5
-$as_echo "$ac_cv_lib_m_sqrt" >&6; }
-if test "x$ac_cv_lib_m_sqrt" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBM 1
-_ACEOF
-
- LIBS="-lm $LIBS"
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5
-$as_echo_n "checking for library containing clock_gettime... " >&6; }
-if ${ac_cv_search_clock_gettime+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char clock_gettime ();
-int
-main ()
-{
-return clock_gettime ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' rt; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_clock_gettime=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_clock_gettime+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_clock_gettime+:} false; then :
-
-else
- ac_cv_search_clock_gettime=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5
-$as_echo "$ac_cv_search_clock_gettime" >&6; }
-ac_res=$ac_cv_search_clock_gettime
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-
-fi
-
-
-EVENT_VER=""
-EXTRA_OBJECTS=""
-
-# OPENSSL_INCLUDES to the include directives required
-# OPENSSL_LIBS to the -l directives required
-# OPENSSL_LDFLAGS to the -L or -R flags required
-
-
- found=false
-
-# Check whether --with-openssl was given.
-if test "${with_openssl+set}" = set; then :
- withval=$with_openssl;
- case "$withval" in
- "" | y | ye | yes | n | no)
- as_fn_error $? "Invalid --with-openssl value" "$LINENO" 5
- ;;
- *) ssldirs="$withval"
- ;;
- esac
-
-else
-
- # if pkg-config is installed and openssl has installed a .pc file,
- # then use that information and don't search ssldirs
- # Extract the first word of "pkg-config", so it can be a program name with args.
-set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKG_CONFIG+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- case $PKG_CONFIG in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-PKG_CONFIG=$ac_cv_path_PKG_CONFIG
-if test -n "$PKG_CONFIG"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
-$as_echo "$PKG_CONFIG" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if test x"$PKG_CONFIG" != x""; then
- OPENSSL_LDFLAGS=`$PKG_CONFIG openssl --libs-only-L 2>/dev/null`
- if test $? = 0; then
- OPENSSL_LIBS=`$PKG_CONFIG openssl --libs-only-l 2>/dev/null`
- OPENSSL_INCLUDES=`$PKG_CONFIG openssl --cflags-only-I 2>/dev/null`
- found=true
- fi
- fi
-
- # no such luck; use some default ssldirs
- if ! $found; then
- ssldirs="/usr/local/ssl /usr/lib/ssl /usr/ssl /usr/pkg /usr/local /usr"
- fi
-
-
-fi
-
-
-
- # note that we #include <openssl/foo.h>, so the OpenSSL headers have to be in
- # an 'openssl' subdirectory
-
- if ! $found; then
- OPENSSL_INCLUDES=
- for ssldir in $ssldirs; do
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for openssl/ssl.h in $ssldir" >&5
-$as_echo_n "checking for openssl/ssl.h in $ssldir... " >&6; }
- if test -f "$ssldir/include/openssl/ssl.h"; then
- OPENSSL_INCLUDES="-I$ssldir/include"
- OPENSSL_LDFLAGS="-L$ssldir/lib"
- OPENSSL_LIBS="-lssl -lcrypto"
- found=true
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- break
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
- done
-
- # if the file wasn't found, well, go ahead and try the link anyway -- maybe
- # it will just work!
- fi
-
- # try the preprocessor and linker with our new flags,
- # being careful not to pollute the global LIBS, LDFLAGS, and CPPFLAGS
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiling and linking against OpenSSL works" >&5
-$as_echo_n "checking whether compiling and linking against OpenSSL works... " >&6; }
- echo "Trying link with OPENSSL_LDFLAGS=$OPENSSL_LDFLAGS;" \
- "OPENSSL_LIBS=$OPENSSL_LIBS; OPENSSL_INCLUDES=$OPENSSL_INCLUDES" >&5
-
- save_LIBS="$LIBS"
- save_LDFLAGS="$LDFLAGS"
- save_CPPFLAGS="$CPPFLAGS"
- LDFLAGS="$LDFLAGS $OPENSSL_LDFLAGS"
- LIBS="$OPENSSL_LIBS $LIBS"
- CPPFLAGS="$OPENSSL_INCLUDES $CPPFLAGS"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <openssl/ssl.h>
-int
-main ()
-{
-SSL_new(NULL)
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-
-else
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- as_fn_error $? "No openssl found" "$LINENO" 5
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- CPPFLAGS="$save_CPPFLAGS"
- LDFLAGS="$save_LDFLAGS"
- LIBS="$save_LIBS"
-
-
-
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
- CPP=
-fi
-if test -z "$CPP"; then
- if ${ac_cv_prog_CPP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- # Double quotes because CPP needs to be expanded
- for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
- do
- ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
- Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
- break
-fi
-
- done
- ac_cv_prog_CPP=$CPP
-
-fi
- CPP=$ac_cv_prog_CPP
-else
- ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
- Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$GREP"; then
- ac_path_GREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in grep ggrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
- as_fn_executable_p "$ac_path_GREP" || continue
-# Check for GNU ac_path_GREP and select it if it is found.
- # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'GREP' >> "conftest.nl"
- "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_GREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_GREP="$ac_path_GREP"
- ac_path_GREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_GREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_GREP"; then
- as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_GREP=$GREP
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
- then ac_cv_path_EGREP="$GREP -E"
- else
- if test -z "$EGREP"; then
- ac_path_EGREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in egrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
- as_fn_executable_p "$ac_path_EGREP" || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
- # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'EGREP' >> "conftest.nl"
- "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_EGREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_EGREP="$ac_path_EGREP"
- ac_path_EGREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_EGREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_EGREP"; then
- as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_EGREP=$EGREP
-fi
-
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_header_stdc=yes
-else
- ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
- # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "free" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
- if test "$cross_compiling" = yes; then :
- :
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
- (('a' <= (c) && (c) <= 'i') \
- || ('j' <= (c) && (c) <= 'r') \
- || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
- int i;
- for (i = 0; i < 256; i++)
- if (XOR (islower (i), ISLOWER (i))
- || toupper (i) != TOUPPER (i))
- return 2;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
- inttypes.h stdint.h unistd.h
-do :
- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-#
-# Handle user hints
-#
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if zlib is wanted" >&5
-$as_echo_n "checking if zlib is wanted... " >&6; }
-zlib_places="/usr/local /usr /opt/local /sw"
-
-# Check whether --with-zlib was given.
-if test "${with_zlib+set}" = set; then :
- withval=$with_zlib; if test "$withval" != no ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- if test -d "$withval"
- then
- zlib_places="$withval $zlib_places"
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Sorry, $withval does not exist, checking usual places" >&5
-$as_echo "$as_me: WARNING: Sorry, $withval does not exist, checking usual places" >&2;}
- fi
-else
- zlib_places=
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-
-
-#
-# Locate zlib, if wanted
-#
-if test -n "${zlib_places}"
-then
- # check the user supplied or any other more or less 'standard' place:
- # Most UNIX systems : /usr/local and /usr
- # MacPorts / Fink on OSX : /opt/local respectively /sw
- for ZLIB_HOME in ${zlib_places} ; do
- if test -f "${ZLIB_HOME}/include/zlib.h"; then break; fi
- ZLIB_HOME=""
- done
-
- ZLIB_OLD_LDFLAGS=$LDFLAGS
- ZLIB_OLD_CPPFLAGS=$CPPFLAGS
- if test -n "${ZLIB_HOME}"; then
- LDFLAGS="$LDFLAGS -L${ZLIB_HOME}/lib"
- CPPFLAGS="$CPPFLAGS -I${ZLIB_HOME}/include"
- fi
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inflateEnd in -lz" >&5
-$as_echo_n "checking for inflateEnd in -lz... " >&6; }
-if ${ac_cv_lib_z_inflateEnd+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lz $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char inflateEnd ();
-int
-main ()
-{
-return inflateEnd ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_z_inflateEnd=yes
-else
- ac_cv_lib_z_inflateEnd=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_inflateEnd" >&5
-$as_echo "$ac_cv_lib_z_inflateEnd" >&6; }
-if test "x$ac_cv_lib_z_inflateEnd" = xyes; then :
- zlib_cv_libz=yes
-else
- zlib_cv_libz=no
-fi
-
- ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_zlib_h" = xyes; then :
- zlib_cv_zlib_h=yes
-else
- zlib_cv_zlib_h=no
-fi
-
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
- if test "$zlib_cv_libz" = "yes" && test "$zlib_cv_zlib_h" = "yes"
- then
- #
- # If both library and header were found, action-if-found
- #
-
- CPPFLAGS="$CPPFLAGS -I${ZLIB_HOME}/include"
- LDFLAGS="$LDFLAGS -L${ZLIB_HOME}/lib"
- LIBS="-lz $LIBS"
-
-$as_echo "#define HAVE_LIBZ 1" >>confdefs.h
-
-
- else
- #
- # If either header or library was not found, action-if-not-found
- #
- as_fn_error $? "No zlib found" "$LINENO" 5
- fi
-fi
-
-
-# Check whether --enable-extf was given.
-if test "${enable_extf+set}" = set; then :
- enableval=$enable_extf;
- if test "x$enableval" = "xno" ; then
-
-$as_echo "#define DISABLE_EXTF 1" >>confdefs.h
-
- fi
-
-fi
-
-
-# Check whether --enable-libevent was given.
-if test "${enable_libevent+set}" = set; then :
- enableval=$enable_libevent;
- if test "x$enableval" = "xyes" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for event_base_new in -levent" >&5
-$as_echo_n "checking for event_base_new in -levent... " >&6; }
-if ${ac_cv_lib_event_event_base_new+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-levent $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char event_base_new ();
-int
-main ()
-{
-return event_base_new ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_event_event_base_new=yes
-else
- ac_cv_lib_event_event_base_new=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_event_event_base_new" >&5
-$as_echo "$ac_cv_lib_event_event_base_new" >&6; }
-if test "x$ac_cv_lib_event_event_base_new" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBEVENT 1
-_ACEOF
-
- LIBS="-levent $LIBS"
-
-else
- as_fn_error $? "no libevent found" "$LINENO" 5
-fi
-
- ac_fn_c_check_header_mongrel "$LINENO" "event2/event.h" "ac_cv_header_event2_event_h" "$ac_includes_default"
-if test "x$ac_cv_header_event2_event_h" = xyes; then :
-
-$as_echo "#define EVENT_V2 1" >>confdefs.h
-
-else
-
- ac_fn_c_check_header_mongrel "$LINENO" "event.h" "ac_cv_header_event_h" "$ac_includes_default"
-if test "x$ac_cv_header_event_h" = xyes; then :
-
-$as_echo "#define EVENT_V1 1" >>confdefs.h
-
-else
- as_fn_error $? "no libevent found" "$LINENO" 5
-fi
-
-
-
-fi
-
-
- EXTRA_OBJECTS="${EXTRA_OBJECTS} objs/tgl-net.o objs/tgl-timers.o"
- fi
-
-fi
-
-
-# Check whether --enable-valgrind was given.
-if test "${enable_valgrind+set}" = set; then :
- enableval=$enable_valgrind;
- if test "x$enableval" = "xyes" ; then
- ac_fn_c_check_header_mongrel "$LINENO" "valgrind/memcheck.h" "ac_cv_header_valgrind_memcheck_h" "$ac_includes_default"
-if test "x$ac_cv_header_valgrind_memcheck_h" = xyes; then :
-
-$as_echo "#define VALGRIND_FIXES 1" >>confdefs.h
-
-fi
-
-
- fi
-
-fi
-
-
-# Checks for header files.
-for ac_header in execinfo.h fcntl.h malloc.h netdb.h stdlib.h string.h unistd.h arpa/inet.h mach/mach.h netinet/in.h sys/file.h sys/socket.h termios.h
-do :
- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-# Checks for typedefs, structures, and compiler characteristics.
-ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
-
-else
-
-cat >>confdefs.h <<_ACEOF
-#define size_t unsigned int
-_ACEOF
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5
-$as_echo_n "checking for uid_t in sys/types.h... " >&6; }
-if ${ac_cv_type_uid_t+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <sys/types.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "uid_t" >/dev/null 2>&1; then :
- ac_cv_type_uid_t=yes
-else
- ac_cv_type_uid_t=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_uid_t" >&5
-$as_echo "$ac_cv_type_uid_t" >&6; }
-if test $ac_cv_type_uid_t = no; then
-
-$as_echo "#define uid_t int" >>confdefs.h
-
-
-$as_echo "#define gid_t int" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
-$as_echo_n "checking for inline... " >&6; }
-if ${ac_cv_c_inline+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_c_inline=no
-for ac_kw in inline __inline__ __inline; do
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#ifndef __cplusplus
-typedef int foo_t;
-static $ac_kw foo_t static_foo () {return 0; }
-$ac_kw foo_t foo () {return 0; }
-#endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_c_inline=$ac_kw
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- test "$ac_cv_c_inline" != no && break
-done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
-$as_echo "$ac_cv_c_inline" >&6; }
-
-case $ac_cv_c_inline in
- inline | yes) ;;
- *)
- case $ac_cv_c_inline in
- no) ac_val=;;
- *) ac_val=$ac_cv_c_inline;;
- esac
- cat >>confdefs.h <<_ACEOF
-#ifndef __cplusplus
-#define inline $ac_val
-#endif
-_ACEOF
- ;;
-esac
-
-
-# Checks for library functions.
-for ac_header in stdlib.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_stdlib_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_STDLIB_H 1
-_ACEOF
-
-fi
-
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5
-$as_echo_n "checking for GNU libc compatible malloc... " >&6; }
-if ${ac_cv_func_malloc_0_nonnull+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- ac_cv_func_malloc_0_nonnull=no
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#if defined STDC_HEADERS || defined HAVE_STDLIB_H
-# include <stdlib.h>
-#else
-char *malloc ();
-#endif
-
-int
-main ()
-{
-return ! malloc (0);
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- ac_cv_func_malloc_0_nonnull=yes
-else
- ac_cv_func_malloc_0_nonnull=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5
-$as_echo "$ac_cv_func_malloc_0_nonnull" >&6; }
-if test $ac_cv_func_malloc_0_nonnull = yes; then :
-
-$as_echo "#define HAVE_MALLOC 1" >>confdefs.h
-
-else
- $as_echo "#define HAVE_MALLOC 0" >>confdefs.h
-
- case " $LIBOBJS " in
- *" malloc.$ac_objext "* ) ;;
- *) LIBOBJS="$LIBOBJS malloc.$ac_objext"
- ;;
-esac
-
-
-$as_echo "#define malloc rpl_malloc" >>confdefs.h
-
-fi
-
-
-for ac_header in stdlib.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_stdlib_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_STDLIB_H 1
-_ACEOF
-
-fi
-
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible realloc" >&5
-$as_echo_n "checking for GNU libc compatible realloc... " >&6; }
-if ${ac_cv_func_realloc_0_nonnull+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- ac_cv_func_realloc_0_nonnull=no
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#if defined STDC_HEADERS || defined HAVE_STDLIB_H
-# include <stdlib.h>
-#else
-char *realloc ();
-#endif
-
-int
-main ()
-{
-return ! realloc (0, 0);
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- ac_cv_func_realloc_0_nonnull=yes
-else
- ac_cv_func_realloc_0_nonnull=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_realloc_0_nonnull" >&5
-$as_echo "$ac_cv_func_realloc_0_nonnull" >&6; }
-if test $ac_cv_func_realloc_0_nonnull = yes; then :
-
-$as_echo "#define HAVE_REALLOC 1" >>confdefs.h
-
-else
- $as_echo "#define HAVE_REALLOC 0" >>confdefs.h
-
- case " $LIBOBJS " in
- *" realloc.$ac_objext "* ) ;;
- *) LIBOBJS="$LIBOBJS realloc.$ac_objext"
- ;;
-esac
-
-
-$as_echo "#define realloc rpl_realloc" >>confdefs.h
-
-fi
-
-
-for ac_func in alarm endpwent memset memmove mkdir select socket strdup strndup uname
-do :
- as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-done
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __builtin_bswap32" >&5
-$as_echo_n "checking for __builtin_bswap32... " >&6; }
-if ${ax_cv_have___builtin_bswap32+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- __builtin_bswap32(0)
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ax_cv_have___builtin_bswap32=yes
-else
- ax_cv_have___builtin_bswap32=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_have___builtin_bswap32" >&5
-$as_echo "$ax_cv_have___builtin_bswap32" >&6; }
-
- if test yes = $ax_cv_have___builtin_bswap32; then :
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE___BUILTIN_BSWAP32 1
-_ACEOF
-
-fi
-
-
-
-
-
-
-ac_config_files="$ac_config_files Makefile"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems. If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
- for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
- eval ac_val=\$$ac_var
- case $ac_val in #(
- *${as_nl}*)
- case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
- esac
- case $ac_var in #(
- _ | IFS | as_nl) ;; #(
- BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) { eval $ac_var=; unset $ac_var;} ;;
- esac ;;
- esac
- done
-
- (set) 2>&1 |
- case $as_nl`(ac_space=' '; set) 2>&1` in #(
- *${as_nl}ac_space=\ *)
- # `set' does not quote correctly, so add quotes: double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \.
- sed -n \
- "s/'/'\\\\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
- ;; #(
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
- ;;
- esac |
- sort
-) |
- sed '
- /^ac_cv_env_/b end
- t clear
- :clear
- s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
- t end
- s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
- :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
- if test -w "$cache_file"; then
- if test "x$cache_file" != "x/dev/null"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
- if test ! -f "$cache_file" || test -h "$cache_file"; then
- cat confcache >"$cache_file"
- else
- case $cache_file in #(
- */* | ?:*)
- mv -f confcache "$cache_file"$$ &&
- mv -f "$cache_file"$$ "$cache_file" ;; #(
- *)
- mv -f confcache "$cache_file" ;;
- esac
- fi
- fi
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
- fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-DEFS=-DHAVE_CONFIG_H
-
-ac_libobjs=
-ac_ltlibobjs=
-U=
-for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
- # 1. Remove the extension, and $U if already installed.
- ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
- ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
- # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
- # will be set to the directory where LIBOBJS objects are built.
- as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
- as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIBOBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-
-: "${CONFIG_STATUS=./config.status}"
-ac_write_fail=0
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-as_write_fail=0
-cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-
-SHELL=\${CONFIG_SHELL-$SHELL}
-export SHELL
-_ASEOF
-cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in #(
- *posix*) :
- set -o posix ;; #(
- *) :
- ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in #(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- PATH_SEPARATOR=:
- (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
- (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
- PATH_SEPARATOR=';'
- }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
-# Find who we are. Look in the path if we contain no directory separator.
-as_myself=
-case $0 in #((
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
- as_myself=$0
-fi
-if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-
-# as_fn_error STATUS ERROR [LINENO LOG_FD]
-# ----------------------------------------
-# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-# script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
- as_status=$1; test $as_status -eq 0 && as_status=1
- if test "$4"; then
- as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
- fi
- $as_echo "$as_me: error: $2" >&2
- as_fn_exit $as_status
-} # as_fn_error
-
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} # as_fn_exit
-
-# as_fn_unset VAR
-# ---------------
-# Portably unset VAR.
-as_fn_unset ()
-{
- { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-# as_fn_append VAR VALUE
-# ----------------------
-# Append the text in VALUE to the end of the definition contained in VAR. Take
-# advantage of any shell optimizations that allow amortized linear growth over
-# repeated appends, instead of the typical quadratic growth present in naive
-# implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
- eval 'as_fn_append ()
- {
- eval $1+=\$2
- }'
-else
- as_fn_append ()
- {
- eval $1=\$$1\$2
- }
-fi # as_fn_append
-
-# as_fn_arith ARG...
-# ------------------
-# Perform arithmetic evaluation on the ARGs, and store the result in the
-# global $as_val. Take advantage of shells that can avoid forks. The arguments
-# must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
- eval 'as_fn_arith ()
- {
- as_val=$(( $* ))
- }'
-else
- as_fn_arith ()
- {
- as_val=`expr "$@" || test $? -eq 1`
- }
-fi # as_fn_arith
-
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in #(((((
--n*)
- case `echo 'xy\c'` in
- *c*) ECHO_T=' ';; # ECHO_T is single tab character.
- xy) ECHO_C='\c';;
- *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
- ECHO_T=' ';;
- esac;;
-*)
- ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
- rm -f conf$$.dir/conf$$.file
-else
- rm -f conf$$.dir
- mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
- if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -pR'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -pR'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
- as_ln_s='cp -pR'
- fi
-else
- as_ln_s='cp -pR'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-
-# as_fn_mkdir_p
-# -------------
-# Create "$as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || eval $as_mkdir_p || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} # as_fn_mkdir_p
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p='mkdir -p "$as_dir"'
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-
-# as_fn_executable_p FILE
-# -----------------------
-# Test if FILE is an executable regular file.
-as_fn_executable_p ()
-{
- test -f "$1" && test -x "$1"
-} # as_fn_executable_p
-as_test_x='test -x'
-as_executable_p=as_fn_executable_p
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-exec 6>&1
-## ----------------------------------- ##
-## Main body of $CONFIG_STATUS script. ##
-## ----------------------------------- ##
-_ASEOF
-test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# Save the log message, to keep $0 and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling.
-ac_log="
-This file was extended by telegram-cli $as_me 1.0, which was
-generated by GNU Autoconf 2.69. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
- CONFIG_COMMANDS = $CONFIG_COMMANDS
- $ $0 $@
-
-on `(hostname || uname -n) 2>/dev/null | sed 1q`
-"
-
-_ACEOF
-
-case $ac_config_files in *"
-"*) set x $ac_config_files; shift; ac_config_files=$*;;
-esac
-
-case $ac_config_headers in *"
-"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
-esac
-
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-# Files that config.status was made for.
-config_files="$ac_config_files"
-config_headers="$ac_config_headers"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-ac_cs_usage="\
-\`$as_me' instantiates files and other configuration actions
-from templates according to the current configuration. Unless the files
-and actions are specified as TAGs, all are instantiated by default.
-
-Usage: $0 [OPTION]... [TAG]...
-
- -h, --help print this help, then exit
- -V, --version print version number and configuration settings, then exit
- --config print configuration, then exit
- -q, --quiet, --silent
- do not print progress messages
- -d, --debug don't remove temporary files
- --recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
- instantiate the configuration file FILE
- --header=FILE[:TEMPLATE]
- instantiate the configuration header FILE
-
-Configuration files:
-$config_files
-
-Configuration headers:
-$config_headers
-
-Report bugs to the package provider."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
-ac_cs_version="\\
-telegram-cli config.status 1.0
-configured by $0, generated by GNU Autoconf 2.69,
- with options \\"\$ac_cs_config\\"
-
-Copyright (C) 2012 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-
-ac_pwd='$ac_pwd'
-srcdir='$srcdir'
-test -n "\$AWK" || AWK=awk
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# The default lists apply if the user does not specify any file.
-ac_need_defaults=:
-while test $# != 0
-do
- case $1 in
- --*=?*)
- ac_option=`expr "X$1" : 'X\([^=]*\)='`
- ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
- ac_shift=:
- ;;
- --*=)
- ac_option=`expr "X$1" : 'X\([^=]*\)='`
- ac_optarg=
- ac_shift=:
- ;;
- *)
- ac_option=$1
- ac_optarg=$2
- ac_shift=shift
- ;;
- esac
-
- case $ac_option in
- # Handling of the options.
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- ac_cs_recheck=: ;;
- --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
- $as_echo "$ac_cs_version"; exit ;;
- --config | --confi | --conf | --con | --co | --c )
- $as_echo "$ac_cs_config"; exit ;;
- --debug | --debu | --deb | --de | --d | -d )
- debug=: ;;
- --file | --fil | --fi | --f )
- $ac_shift
- case $ac_optarg in
- *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
- '') as_fn_error $? "missing file argument" ;;
- esac
- as_fn_append CONFIG_FILES " '$ac_optarg'"
- ac_need_defaults=false;;
- --header | --heade | --head | --hea )
- $ac_shift
- case $ac_optarg in
- *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- as_fn_append CONFIG_HEADERS " '$ac_optarg'"
- ac_need_defaults=false;;
- --he | --h)
- # Conflict between --help and --header
- as_fn_error $? "ambiguous option: \`$1'
-Try \`$0 --help' for more information.";;
- --help | --hel | -h )
- $as_echo "$ac_cs_usage"; exit ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil | --si | --s)
- ac_cs_silent=: ;;
-
- # This is an error.
- -*) as_fn_error $? "unrecognized option: \`$1'
-Try \`$0 --help' for more information." ;;
-
- *) as_fn_append ac_config_targets " $1"
- ac_need_defaults=false ;;
-
- esac
- shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
- exec 6>/dev/null
- ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-if \$ac_cs_recheck; then
- set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
- shift
- \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
- CONFIG_SHELL='$SHELL'
- export CONFIG_SHELL
- exec "\$@"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-exec 5>>config.log
-{
- echo
- sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
-_ASBOX
- $as_echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-
-# Handling of arguments.
-for ac_config_target in $ac_config_targets
-do
- case $ac_config_target in
- "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
- "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
-
- *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
- esac
-done
-
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used. Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
- test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
- test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
-fi
-
-# Have a temporary directory for convenience. Make it in the build tree
-# simply because there is no reason against having it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Hook for its removal unless debugging.
-# Note that there is a small window in which the directory will not be cleaned:
-# after its creation but before its name has been assigned to `$tmp'.
-$debug ||
-{
- tmp= ac_tmp=
- trap 'exit_status=$?
- : "${ac_tmp:=$tmp}"
- { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
-' 0
- trap 'as_fn_exit 1' 1 2 13 15
-}
-# Create a (secure) tmp directory for tmp files.
-
-{
- tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
- test -d "$tmp"
-} ||
-{
- tmp=./conf$$-$RANDOM
- (umask 077 && mkdir "$tmp")
-} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
-ac_tmp=$tmp
-
-# Set up the scripts for CONFIG_FILES section.
-# No need to generate them if there are no CONFIG_FILES.
-# This happens for instance with `./config.status config.h'.
-if test -n "$CONFIG_FILES"; then
-
-
-ac_cr=`echo X | tr X '\015'`
-# On cygwin, bash can eat \r inside `` if the user requested igncr.
-# But we know of no other shell where ac_cr would be empty at this
-# point, so we can use a bashism as a fallback.
-if test "x$ac_cr" = x; then
- eval ac_cr=\$\'\\r\'
-fi
-ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
-if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
- ac_cs_awk_cr='\\r'
-else
- ac_cs_awk_cr=$ac_cr
-fi
-
-echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
-_ACEOF
-
-
-{
- echo "cat >conf$$subs.awk <<_ACEOF" &&
- echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
- echo "_ACEOF"
-} >conf$$subs.sh ||
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
- . ./conf$$subs.sh ||
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-
- ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
- if test $ac_delim_n = $ac_delim_num; then
- break
- elif $ac_last_try; then
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
- else
- ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
- fi
-done
-rm -f conf$$subs.sh
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
-_ACEOF
-sed -n '
-h
-s/^/S["/; s/!.*/"]=/
-p
-g
-s/^[^!]*!//
-:repl
-t repl
-s/'"$ac_delim"'$//
-t delim
-:nl
-h
-s/\(.\{148\}\)..*/\1/
-t more1
-s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
-p
-n
-b repl
-:more1
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t nl
-:delim
-h
-s/\(.\{148\}\)..*/\1/
-t more2
-s/["\\]/\\&/g; s/^/"/; s/$/"/
-p
-b
-:more2
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t delim
-' <conf$$subs.awk | sed '
-/^[^""]/{
- N
- s/\n//
-}
-' >>$CONFIG_STATUS || ac_write_fail=1
-rm -f conf$$subs.awk
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-_ACAWK
-cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
- for (key in S) S_is_set[key] = 1
- FS = ""
-
-}
-{
- line = $ 0
- nfields = split(line, field, "@")
- substed = 0
- len = length(field[1])
- for (i = 2; i < nfields; i++) {
- key = field[i]
- keylen = length(key)
- if (S_is_set[key]) {
- value = S[key]
- line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
- len += length(value) + length(field[++i])
- substed = 1
- } else
- len += 1 + keylen
- }
-
- print line
-}
-
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
- sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
-else
- cat
-fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
- || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
-_ACEOF
-
-# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
-# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
-h
-s///
-s/^/:/
-s/[ ]*$/:/
-s/:\$(srcdir):/:/g
-s/:\${srcdir}:/:/g
-s/:@srcdir@:/:/g
-s/^:*//
-s/:*$//
-x
-s/\(=[ ]*\).*/\1/
-G
-s/\n//
-s/^[^=]*=[ ]*$//
-}'
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-fi # test -n "$CONFIG_FILES"
-
-# Set up the scripts for CONFIG_HEADERS section.
-# No need to generate them if there are no CONFIG_HEADERS.
-# This happens for instance with `./config.status Makefile'.
-if test -n "$CONFIG_HEADERS"; then
-cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
-BEGIN {
-_ACEOF
-
-# Transform confdefs.h into an awk script `defines.awk', embedded as
-# here-document in config.status, that substitutes the proper values into
-# config.h.in to produce config.h.
-
-# Create a delimiter string that does not exist in confdefs.h, to ease
-# handling of long lines.
-ac_delim='%!_!# '
-for ac_last_try in false false :; do
- ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
- if test -z "$ac_tt"; then
- break
- elif $ac_last_try; then
- as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
- else
- ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
- fi
-done
-
-# For the awk script, D is an array of macro values keyed by name,
-# likewise P contains macro parameters if any. Preserve backslash
-# newline sequences.
-
-ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
-sed -n '
-s/.\{148\}/&'"$ac_delim"'/g
-t rset
-:rset
-s/^[ ]*#[ ]*define[ ][ ]*/ /
-t def
-d
-:def
-s/\\$//
-t bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3"/p
-s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
-d
-:bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3\\\\\\n"\\/p
-t cont
-s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
-t cont
-d
-:cont
-n
-s/.\{148\}/&'"$ac_delim"'/g
-t clear
-:clear
-s/\\$//
-t bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/"/p
-d
-:bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
-b cont
-' <confdefs.h | sed '
-s/'"$ac_delim"'/"\\\
-"/g' >>$CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- for (key in D) D_is_set[key] = 1
- FS = ""
-}
-/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
- line = \$ 0
- split(line, arg, " ")
- if (arg[1] == "#") {
- defundef = arg[2]
- mac1 = arg[3]
- } else {
- defundef = substr(arg[1], 2)
- mac1 = arg[2]
- }
- split(mac1, mac2, "(") #)
- macro = mac2[1]
- prefix = substr(line, 1, index(line, defundef) - 1)
- if (D_is_set[macro]) {
- # Preserve the white space surrounding the "#".
- print prefix "define", macro P[macro] D[macro]
- next
- } else {
- # Replace #undef with comments. This is necessary, for example,
- # in the case of _POSIX_SOURCE, which is predefined and required
- # on some systems where configure will not decide to define it.
- if (defundef == "undef") {
- print "/*", prefix defundef, macro, "*/"
- next
- }
- }
-}
-{ print }
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
- as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
-fi # test -n "$CONFIG_HEADERS"
-
-
-eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS "
-shift
-for ac_tag
-do
- case $ac_tag in
- :[FHLC]) ac_mode=$ac_tag; continue;;
- esac
- case $ac_mode$ac_tag in
- :[FHL]*:*);;
- :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
- :[FH]-) ac_tag=-:-;;
- :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
- esac
- ac_save_IFS=$IFS
- IFS=:
- set x $ac_tag
- IFS=$ac_save_IFS
- shift
- ac_file=$1
- shift
-
- case $ac_mode in
- :L) ac_source=$1;;
- :[FH])
- ac_file_inputs=
- for ac_f
- do
- case $ac_f in
- -) ac_f="$ac_tmp/stdin";;
- *) # Look for the file first in the build tree, then in the source tree
- # (if the path is not absolute). The absolute path cannot be DOS-style,
- # because $ac_f cannot contain `:'.
- test -f "$ac_f" ||
- case $ac_f in
- [\\/$]*) false;;
- *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
- esac ||
- as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
- esac
- case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
- as_fn_append ac_file_inputs " '$ac_f'"
- done
-
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
- configure_input='Generated from '`
- $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
- `' by configure.'
- if test x"$ac_file" != x-; then
- configure_input="$ac_file. $configure_input"
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
- fi
- # Neutralize special characters interpreted by sed in replacement strings.
- case $configure_input in #(
- *\&* | *\|* | *\\* )
- ac_sed_conf_input=`$as_echo "$configure_input" |
- sed 's/[\\\\&|]/\\\\&/g'`;; #(
- *) ac_sed_conf_input=$configure_input;;
- esac
-
- case $ac_tag in
- *:-:* | *:-) cat >"$ac_tmp/stdin" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
- esac
- ;;
- esac
-
- ac_dir=`$as_dirname -- "$ac_file" ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$ac_file" : 'X\(//\)[^/]' \| \
- X"$ac_file" : 'X\(//\)$' \| \
- X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- as_dir="$ac_dir"; as_fn_mkdir_p
- ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
- # A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
- case $ac_top_builddir_sub in
- "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
- *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
- esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
- .) # We are building in place.
- ac_srcdir=.
- ac_top_srcdir=$ac_top_builddir_sub
- ac_abs_top_srcdir=$ac_pwd ;;
- [\\/]* | ?:[\\/]* ) # Absolute name.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir
- ac_abs_top_srcdir=$srcdir ;;
- *) # Relative name.
- ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_build_prefix$srcdir
- ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-
- case $ac_mode in
- :F)
- #
- # CONFIG_FILE
- #
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# If the template does not know about datarootdir, expand it.
-# FIXME: This hack should be removed a few years after 2.60.
-ac_datarootdir_hack=; ac_datarootdir_seen=
-ac_sed_dataroot='
-/datarootdir/ {
- p
- q
-}
-/@datadir@/p
-/@docdir@/p
-/@infodir@/p
-/@localedir@/p
-/@mandir@/p'
-case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
-*datarootdir*) ac_datarootdir_seen=yes;;
-*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- ac_datarootdir_hack='
- s&@datadir@&$datadir&g
- s&@docdir@&$docdir&g
- s&@infodir@&$infodir&g
- s&@localedir@&$localedir&g
- s&@mandir@&$mandir&g
- s&\\\${datarootdir}&$datarootdir&g' ;;
-esac
-_ACEOF
-
-# Neutralize VPATH when `$srcdir' = `.'.
-# Shell code in configure.ac might set extrasub.
-# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_sed_extra="$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s|@configure_input@|$ac_sed_conf_input|;t t
-s&@top_builddir@&$ac_top_builddir_sub&;t t
-s&@top_build_prefix@&$ac_top_build_prefix&;t t
-s&@srcdir@&$ac_srcdir&;t t
-s&@abs_srcdir@&$ac_abs_srcdir&;t t
-s&@top_srcdir@&$ac_top_srcdir&;t t
-s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
-s&@builddir@&$ac_builddir&;t t
-s&@abs_builddir@&$ac_abs_builddir&;t t
-s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
-$ac_datarootdir_hack
-"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
- >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-
-test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
- { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
- { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
- "$ac_tmp/out"`; test -z "$ac_out"; } &&
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined" >&2;}
-
- rm -f "$ac_tmp/stdin"
- case $ac_file in
- -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
- *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
- esac \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- ;;
- :H)
- #
- # CONFIG_HEADER
- #
- if test x"$ac_file" != x-; then
- {
- $as_echo "/* $configure_input */" \
- && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
- } >"$ac_tmp/config.h" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$as_me: $ac_file is unchanged" >&6;}
- else
- rm -f "$ac_file"
- mv "$ac_tmp/config.h" "$ac_file" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- fi
- else
- $as_echo "/* $configure_input */" \
- && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
- || as_fn_error $? "could not create -" "$LINENO" 5
- fi
- ;;
-
-
- esac
-
-done # for ac_tag
-
-
-as_fn_exit 0
-_ACEOF
-ac_clean_files=$ac_clean_files_save
-
-test $ac_write_fail = 0 ||
- as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded. So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status. When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
- ac_cs_success=:
- ac_config_status_args=
- test "$silent" = yes &&
- ac_config_status_args="$ac_config_status_args --quiet"
- exec 5>/dev/null
- $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
- exec 5>>config.log
- # Use ||, not &&, to avoid exiting from the if with $? = 1, which
- # would make configure fail if this is the last instruction.
- $ac_cs_success || as_fn_exit 1
-fi
-if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
-fi
-
-
diff --git a/protocols/Telegram/docs/tgl/configure.ac b/protocols/Telegram/docs/tgl/configure.ac
deleted file mode 100644
index ea935a58ac..0000000000
--- a/protocols/Telegram/docs/tgl/configure.ac
+++ /dev/null
@@ -1,79 +0,0 @@
-AC_PREREQ([2.68])
-AC_INIT([telegram-cli], [1.0])
-AC_CONFIG_SRCDIR([config.h.in])
-AC_CONFIG_HEADERS([config.h])
-
-m4_include([m4_ax_check_openssl.m4])
-m4_include([m4_ax_check_zlib.m4])
-m4_include([m4-ax_gcc_builtin.m4])
-
-# Checks for programs.
-AC_PROG_CC
-
-# BSD locations for headers and libraries from packages, Linux locations for self-compiled stuff.
-CPPFLAGS="$CPPFLAGS -I/usr/local/include"
-LDFLAGS="$LDFLAGS -L/usr/local/lib"
-
-# Checks for libraries.
-AC_CHECK_LIB([m], [sqrt])
-AC_SEARCH_LIBS([clock_gettime], [rt])
-
-EVENT_VER=""
-EXTRA_OBJECTS=""
-
-# OPENSSL_INCLUDES to the include directives required
-# OPENSSL_LIBS to the -l directives required
-# OPENSSL_LDFLAGS to the -L or -R flags required
-
-AX_CHECK_OPENSSL(,[AC_MSG_ERROR([No openssl found])])
-AX_CHECK_ZLIB(, [AC_MSG_ERROR([No zlib found])])
-
-AC_ARG_ENABLE(extf,[enables extended queries system],
- [
- if test "x$enableval" = "xno" ; then
- AC_DEFINE([DISABLE_EXTF],[1],[disable extf queries])
- fi
- ],[
- ])
-
-AC_ARG_ENABLE(libevent,[--enable-libevent include libevent-based net and timers],
- [
- if test "x$enableval" = "xyes" ; then
- AC_CHECK_LIB([event], [event_base_new], [], [AC_MSG_ERROR([no libevent found])])
- AC_CHECK_HEADER(event2/event.h, [AC_DEFINE([EVENT_V2], [1], [Use libevent v2])], [
- AC_CHECK_HEADER(event.h, [AC_DEFINE([EVENT_V1], [1], [Use libevent v1])], [AC_MSG_ERROR([no libevent found])])
- ])
- EXTRA_OBJECTS="${EXTRA_OBJECTS} objs/tgl-net.o objs/tgl-timers.o"
- fi
- ],[
- ])
-
-AC_ARG_ENABLE(valgrind,[fixes for correct valgrind work],
- [
- if test "x$enableval" = "xyes" ; then
- AC_CHECK_HEADER(valgrind/memcheck.h, [AC_DEFINE([VALGRIND_FIXES], [1], [fixed for correct valgrind work])], [
- ])
- fi
- ],[
- ])
-
-# Checks for header files.
-AC_CHECK_HEADERS([execinfo.h fcntl.h malloc.h netdb.h stdlib.h string.h unistd.h arpa/inet.h mach/mach.h netinet/in.h sys/file.h sys/socket.h termios.h])
-
-# Checks for typedefs, structures, and compiler characteristics.
-AC_TYPE_SIZE_T
-AC_TYPE_UID_T
-AC_C_INLINE
-
-# Checks for library functions.
-AC_FUNC_MALLOC
-AC_FUNC_REALLOC
-AC_CHECK_FUNCS([alarm endpwent memset memmove mkdir select socket strdup strndup uname])
-
-AX_GCC_BUILTIN(__builtin_bswap32)
-
-AC_SUBST(EXTRA_LIBS)
-AC_SUBST(EXTRA_OBJECTS)
-AC_CONFIG_FILES([Makefile])
-AC_OUTPUT
-
diff --git a/protocols/Telegram/docs/tgl/encrypted_scheme.tl b/protocols/Telegram/docs/tgl/encrypted_scheme.tl
deleted file mode 100644
index 6fff5b6a55..0000000000
--- a/protocols/Telegram/docs/tgl/encrypted_scheme.tl
+++ /dev/null
@@ -1 +0,0 @@
-encrypted_scheme23.tl \ No newline at end of file
diff --git a/protocols/Telegram/docs/tgl/encrypted_scheme16.tl b/protocols/Telegram/docs/tgl/encrypted_scheme16.tl
deleted file mode 100644
index eb58ed4475..0000000000
--- a/protocols/Telegram/docs/tgl/encrypted_scheme16.tl
+++ /dev/null
@@ -1,22 +0,0 @@
----types---
-decryptedMessageLayer#99a438cf layer:int message:DecryptedMessage = DecryptedMessageLayer;
-decryptedMessage#1f814f1f random_id:long random_bytes:bytes message:string media:DecryptedMessageMedia = DecryptedMessage;
-decryptedMessageService#aa48327d random_id:long random_bytes:bytes action:DecryptedMessageAction = DecryptedMessage;
-decryptedMessageMediaEmpty#89f5c4a = DecryptedMessageMedia;
-decryptedMessageMediaPhoto#32798a8c thumb:bytes thumb_w:int thumb_h:int w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-//decryptedMessageMediaVideo#4cee6ef3 thumb:bytes thumb_w:int thumb_h:int duration:int w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaGeoPoint#35480a59 lat:double long:double = DecryptedMessageMedia;
-decryptedMessageMediaContact#588a0a97 phone_number:string first_name:string last_name:string user_id:int = DecryptedMessageMedia;
-decryptedMessageActionSetMessageTTL#a1733aec ttl_seconds:int = DecryptedMessageAction;
-
-decryptedMessageMediaDocument#b095434b thumb:bytes thumb_w:int thumb_h:int file_name:string mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia;
-//decryptedMessageMediaAudio#6080758f duration:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-
-decryptedMessageMediaVideo#524a415d thumb:bytes thumb_w:int thumb_h:int duration:int mime_type:string w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaAudio#57e0a9cb duration:int mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageActionReadMessages#c4f40be random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionDeleteMessages#65614304 random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionScreenshotMessages#8ac1f475 random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionFlushHistory#6719e45c = DecryptedMessageAction;
-decryptedMessageActionNotifyLayer#f3048883 layer:int = DecryptedMessageAction;
----functions---
diff --git a/protocols/Telegram/docs/tgl/encrypted_scheme17.tl b/protocols/Telegram/docs/tgl/encrypted_scheme17.tl
deleted file mode 100644
index 95e661bda5..0000000000
--- a/protocols/Telegram/docs/tgl/encrypted_scheme17.tl
+++ /dev/null
@@ -1,31 +0,0 @@
----types---
-decryptedMessageLayer#1be31789 layer:int message:DecryptedMessage = DecryptedMessageLayer;
-decryptedMessage_l16#1f814f1f random_id:long random_bytes:bytes message:string media:DecryptedMessageMedia = DecryptedMessage;
-decryptedMessageService_l16#aa48327d random_id:long random_bytes:bytes action:DecryptedMessageAction = DecryptedMessage;
-
-decryptedMessage#204d3878 in_seq_no:int out_seq_no:int ttl:int random_id:long random_bytes:bytes message:string media:DecryptedMessageMedia = DecryptedMessage;
-decryptedMessageService#73164160 in_seq_no:int out_seq_no:int random_id:long random_bytes:bytes action:DecryptedMessageAction = DecryptedMessage;
-
-decryptedMessageMediaEmpty#89f5c4a = DecryptedMessageMedia;
-decryptedMessageMediaPhoto#32798a8c thumb:bytes thumb_w:int thumb_h:int w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-//decryptedMessageMediaVideo#4cee6ef3 thumb:bytes thumb_w:int thumb_h:int duration:int w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaGeoPoint#35480a59 lat:double long:double = DecryptedMessageMedia;
-decryptedMessageMediaContact#588a0a97 phone_number:string first_name:string last_name:string user_id:int = DecryptedMessageMedia;
-decryptedMessageActionSetMessageTTL#a1733aec ttl_seconds:int = DecryptedMessageAction;
-
-decryptedMessageMediaDocument#b095434b thumb:bytes thumb_w:int thumb_h:int file_name:string mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia;
-//decryptedMessageMediaAudio#6080758f duration:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-
-decryptedMessageMediaVideo#524a415d thumb:bytes thumb_w:int thumb_h:int duration:int mime_type:string w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaAudio#57e0a9cb duration:int mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageActionReadMessages#c4f40be random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionDeleteMessages#65614304 random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionScreenshotMessages#8ac1f475 random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionFlushHistory#6719e45c = DecryptedMessageAction;
-decryptedMessageActionNotifyLayer#f3048883 layer:int = DecryptedMessageAction;
-
-decryptedMessageActionResend#511110b0 start_seq_no:int end_seq_no:int = DecryptedMessageAction;
-
-decryptedMessageActionTyping#ccb27641 action:SendMessageAction = DecryptedMessageAction;
-
----functions---
diff --git a/protocols/Telegram/docs/tgl/encrypted_scheme18.tl b/protocols/Telegram/docs/tgl/encrypted_scheme18.tl
deleted file mode 100644
index 134f719973..0000000000
--- a/protocols/Telegram/docs/tgl/encrypted_scheme18.tl
+++ /dev/null
@@ -1,38 +0,0 @@
----types---
-decryptedMessageLayer#1be31789 layer:int message:DecryptedMessage = DecryptedMessageLayer;
-decryptedMessage_l16#1f814f1f random_id:long random_bytes:bytes message:string media:DecryptedMessageMedia = DecryptedMessage;
-decryptedMessageService_l16#aa48327d random_id:long random_bytes:bytes action:DecryptedMessageAction = DecryptedMessage;
-
-decryptedMessage#204d3878 in_seq_no:int out_seq_no:int ttl:int random_id:long random_bytes:bytes message:string media:DecryptedMessageMedia = DecryptedMessage;
-decryptedMessageService#73164160 in_seq_no:int out_seq_no:int random_id:long random_bytes:bytes action:DecryptedMessageAction = DecryptedMessage;
-
-decryptedMessageMediaEmpty#89f5c4a = DecryptedMessageMedia;
-decryptedMessageMediaPhoto#32798a8c thumb:bytes thumb_w:int thumb_h:int w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-//decryptedMessageMediaVideo#4cee6ef3 thumb:bytes thumb_w:int thumb_h:int duration:int w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaGeoPoint#35480a59 latitude:double longitude:double = DecryptedMessageMedia;
-decryptedMessageMediaContact#588a0a97 phone_number:string first_name:string last_name:string user_id:int = DecryptedMessageMedia;
-decryptedMessageActionSetMessageTTL#a1733aec ttl_seconds:int = DecryptedMessageAction;
-
-decryptedMessageMediaDocument#b095434b thumb:bytes thumb_w:int thumb_h:int file_name:string mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia;
-//decryptedMessageMediaAudio#6080758f duration:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-
-decryptedMessageMediaVideo#524a415d thumb:bytes thumb_w:int thumb_h:int duration:int mime_type:string w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaAudio#57e0a9cb duration:int mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageActionReadMessages#c4f40be random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionDeleteMessages#65614304 random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionScreenshotMessages#8ac1f475 random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionFlushHistory#6719e45c = DecryptedMessageAction;
-decryptedMessageActionNotifyLayer#f3048883 layer:int = DecryptedMessageAction;
-
-decryptedMessageActionResend#511110b0 start_seq_no:int end_seq_no:int = DecryptedMessageAction;
-
-decryptedMessageActionTyping#ccb27641 action:SendMessageAction = DecryptedMessageAction;
-
-decryptedMessageActionRequestKey exchange_id:long g_a:string = DecryptedMessageAction;
-decryptedMessageActionAcceptKey exchange_id:long g_b:string key_fingerprint:long = DecryptedMessageAction;
-decryptedMessageActionCommitKey exchange_id:long key_fingerprint:long = DecryptedMessageAction;
-decryptedMessageActionAbortKey exchange_id:long = DecryptedMessageAction;
-decryptedMessageActionNoop = DecryptedMessageAction;
-
-
----functions---
diff --git a/protocols/Telegram/docs/tgl/encrypted_scheme23.tl b/protocols/Telegram/docs/tgl/encrypted_scheme23.tl
deleted file mode 100644
index ae31312de1..0000000000
--- a/protocols/Telegram/docs/tgl/encrypted_scheme23.tl
+++ /dev/null
@@ -1,29 +0,0 @@
----types---
-decryptedMessageMediaEmpty#89f5c4a = DecryptedMessageMedia;
-decryptedMessageMediaPhoto#32798a8c str_thumb:bytes thumb_w:int thumb_h:int w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaGeoPoint#35480a59 latitude:double longitude:double = DecryptedMessageMedia;
-decryptedMessageMediaContact#588a0a97 phone_number:string first_name:string last_name:string user_id:int = DecryptedMessageMedia;
-decryptedMessageActionSetMessageTTL#a1733aec ttl_seconds:int = DecryptedMessageAction;
-decryptedMessageMediaDocument#b095434b str_thumb:bytes thumb_w:int thumb_h:int file_name:string mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageActionReadMessages#c4f40be random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionDeleteMessages#65614304 random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionScreenshotMessages#8ac1f475 random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionFlushHistory#6719e45c = DecryptedMessageAction;
-
-decryptedMessage#204d3878 random_id:long ttl:int message:string media:DecryptedMessageMedia = DecryptedMessage;
-decryptedMessageService#73164160 random_id:long action:DecryptedMessageAction = DecryptedMessage;
-decryptedMessageMediaVideo#524a415d str_thumb:bytes thumb_w:int thumb_h:int duration:int mime_type:string w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaAudio#57e0a9cb duration:int mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageLayer#1be31789 random_bytes:bytes layer:int in_seq_no:int out_seq_no:int message:DecryptedMessage = DecryptedMessageLayer;
-decryptedMessageActionResend#511110b0 start_seq_no:int end_seq_no:int = DecryptedMessageAction;
-decryptedMessageActionNotifyLayer#f3048883 layer:int = DecryptedMessageAction;
-decryptedMessageActionTyping#ccb27641 action:SendMessageAction = DecryptedMessageAction;
-
-decryptedMessageActionRequestKey#f3c9611b exchange_id:long g_a:bytes = DecryptedMessageAction;
-decryptedMessageActionAcceptKey#6fe1735b exchange_id:long g_b:bytes key_fingerprint:long = DecryptedMessageAction;
-decryptedMessageActionAbortKey#dd05ec6b exchange_id:long = DecryptedMessageAction;
-decryptedMessageActionCommitKey#ec2e0b9b exchange_id:long key_fingerprint:long = DecryptedMessageAction;
-decryptedMessageActionNoop#a82fdd63 = DecryptedMessageAction;
-
-decryptedMessageMediaExternalDocument#fa95b0dd id:long access_hash:long date:int mime_type:string size:int thumb:PhotoSize dc_id:int attributes:Vector<DocumentAttribute> = DecryptedMessageMedia;
----functions---
diff --git a/protocols/Telegram/docs/tgl/errors b/protocols/Telegram/docs/tgl/errors
deleted file mode 100644
index 481a144737..0000000000
--- a/protocols/Telegram/docs/tgl/errors
+++ /dev/null
@@ -1,11 +0,0 @@
-type of errors that tgl can set:
-
-EPROTO: server returned error for query. Some kinds of error (such as FLOOD_WAIT) tgl can handle by itself, but others it can not. In most cases it means bug in tgl or invalid parameter supplied to method (such as message id).
-
-EINVAL: tgl detected invalid argument supplied before sending query to server. For example user instead of chat or bad msg id.
-
-ENOENT: tgl received empty response from server. For example when user tried to get message by id
-
-EBADF: tgl can not open file on disk or file is empty
-
-E2BIG: supplied file is too big
diff --git a/protocols/Telegram/docs/tgl/event-old.h b/protocols/Telegram/docs/tgl/event-old.h
deleted file mode 100644
index b920e68f02..0000000000
--- a/protocols/Telegram/docs/tgl/event-old.h
+++ /dev/null
@@ -1,48 +0,0 @@
-#ifndef __EVENT_OLD_H__
-#define __EVENT_OLD_H__
-
-#include <assert.h>
-#include <stdlib.h>
-
-#define BEV_EVENT_READ EVBUFFER_READ
-#define BEV_EVENT_WRITE EVBUFFER_WRITE
-#define BEV_EVENT_EOF EVBUFFER_EOF
-#define BEV_EVENT_ERROR EVBUFFER_ERROR
-#define BEV_EVENT_TIMEOUT EVBUFFER_TIMEOUT
-
-typedef int evutil_socket_t;
-
-static inline struct event *event_new (struct event_base *base, int fd, int what, void(*callback)(int, short, void *), void *arg) __attribute__ ((unused));
-static inline struct event *event_new (struct event_base *base, int fd, int what, void(*callback)(int, short, void *), void *arg) {
- struct event *ev = malloc (sizeof (*ev));
- event_set (ev, fd, what, callback, arg);
- event_base_set (base, ev);
- return ev;
-}
-
-static inline struct event *evtimer_new (struct event_base *base, void(*callback)(int, short, void *), void *arg) __attribute__ ((unused));
-static inline struct event *evtimer_new (struct event_base *base, void(*callback)(int, short, void *), void *arg) {
- struct event *ev = malloc (sizeof (*ev));
- event_set (ev, -1, 0, callback, arg);
- event_base_set (base, ev);
- return ev;
-}
-
-static void event_free (struct event *ev) __attribute__ ((unused));
-static void event_free (struct event *ev) {
- event_del (ev);
- free (ev);
-}
-
-static struct bufferevent *bufferevent_socket_new (struct event_base *base, int fd, int flags) __attribute__ ((unused));
-static struct bufferevent *bufferevent_socket_new (struct event_base *base, int fd, int flags) {
- assert (!flags);
- struct bufferevent *bev = bufferevent_new(fd, 0, 0, 0, 0);
- bufferevent_base_set (base, bev);
- return bev;
-}
-
-static inline void *event_get_callback_arg(const struct event *ev) {
- return ev->ev_arg;
-}
-#endif
diff --git a/protocols/Telegram/docs/tgl/gen_constants_h.awk b/protocols/Telegram/docs/tgl/gen_constants_h.awk
deleted file mode 100644
index 74d20a70e2..0000000000
--- a/protocols/Telegram/docs/tgl/gen_constants_h.awk
+++ /dev/null
@@ -1,37 +0,0 @@
-BEGIN {
- print "/*";
- print " This file is part of telegram-client.";
- print "";
- print " Telegram-client is free software: you can redistribute it and/or modify";
- print " it under the terms of the GNU General Public License as published by";
- print " the Free Software Foundation, either version 2 of the License, or";
- print " (at your option) any later version.";
- print "";
- print " Telegram-client is distributed in the hope that it will be useful,";
- print " but WITHOUT ANY WARRANTY; without even the implied warranty of";
- print " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the";
- print " GNU General Public License for more details.";
- print "";
- print " You should have received a copy of the GNU General Public License";
- print " along with this telegram-client. If not, see <http://www.gnu.org/licenses/>.";
- print "";
- print " Copyright Vitaly Valtman 2013";
- print "*/";
- print "#ifndef CONSTANTS_H";
- print "#define CONSTANTS_H";
-}
-// {
- if (split ($1, a, "#") == 2) {
- gsub (/[ABCDEFGHIJKLMNOPQRSTUVWXYZ]/, "_&", a[1]);
- gsub (/[.]/, "_", a[1]);
- if (a[2] in h) {
- print "ERROR: Duplicate magic " a[2] " for define " a[1] " and " h[a[2]] > "/dev/stderr"
- exit 1;
- }
- h[a[2]] = a[1];
- print "#define", "CODE_" tolower(a[1]), "0x" a[2];
- }
-}
-END {
- print "#endif";
-}
diff --git a/protocols/Telegram/docs/tgl/m4-ax_gcc_builtin.m4 b/protocols/Telegram/docs/tgl/m4-ax_gcc_builtin.m4
deleted file mode 100644
index b28a91b14a..0000000000
--- a/protocols/Telegram/docs/tgl/m4-ax_gcc_builtin.m4
+++ /dev/null
@@ -1,168 +0,0 @@
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_gcc_builtin.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_GCC_BUILTIN(BUILTIN)
-#
-# DESCRIPTION
-#
-# This macro checks if the compiler supports one of GCC's built-in
-# functions; many other compilers also provide those same built-ins.
-#
-# The BUILTIN parameter is the name of the built-in function.
-#
-# If BUILTIN is supported define HAVE_<BUILTIN>. Keep in mind that since
-# builtins usually start with two underscores they will be copied over
-# into the HAVE_<BUILTIN> definition (e.g. HAVE___BUILTIN_EXPECT for
-# __builtin_expect()).
-#
-# The macro caches its result in the ax_cv_have_<BUILTIN> variable (e.g.
-# ax_cv_have___builtin_expect).
-#
-# The macro currently supports the following built-in functions:
-#
-# __builtin_assume_aligned
-# __builtin_bswap32
-# __builtin_bswap64
-# __builtin_choose_expr
-# __builtin___clear_cache
-# __builtin_clrsb
-# __builtin_clrsbl
-# __builtin_clrsbll
-# __builtin_clz
-# __builtin_clzl
-# __builtin_clzll
-# __builtin_complex
-# __builtin_constant_p
-# __builtin_ctz
-# __builtin_ctzl
-# __builtin_ctzll
-# __builtin_expect
-# __builtin_ffs
-# __builtin_ffsl
-# __builtin_ffsll
-# __builtin_fpclassify
-# __builtin_huge_val
-# __builtin_huge_valf
-# __builtin_huge_vall
-# __builtin_inf
-# __builtin_infd128
-# __builtin_infd32
-# __builtin_infd64
-# __builtin_inff
-# __builtin_infl
-# __builtin_isinf_sign
-# __builtin_nan
-# __builtin_nand128
-# __builtin_nand32
-# __builtin_nand64
-# __builtin_nanf
-# __builtin_nanl
-# __builtin_nans
-# __builtin_nansf
-# __builtin_nansl
-# __builtin_object_size
-# __builtin_parity
-# __builtin_parityl
-# __builtin_parityll
-# __builtin_popcount
-# __builtin_popcountl
-# __builtin_popcountll
-# __builtin_powi
-# __builtin_powif
-# __builtin_powil
-# __builtin_prefetch
-# __builtin_trap
-# __builtin_types_compatible_p
-# __builtin_unreachable
-#
-# Unsuppored built-ins will be tested with an empty parameter set and the
-# result of the check might be wrong or meaningless so use with care.
-#
-# LICENSE
-#
-# Copyright (c) 2013 Gabriele Svelto <gabriele.svelto@gmail.com>
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 2
-
-AC_DEFUN([AX_GCC_BUILTIN], [
- AS_VAR_PUSHDEF([ac_var], [ax_cv_have_$1])
-
- AC_CACHE_CHECK([for $1], [ac_var], [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([], [
- m4_case([$1],
- [__builtin_assume_aligned], [$1("", 0)],
- [__builtin_bswap32], [$1(0)],
- [__builtin_bswap64], [$1(0)],
- [__builtin_choose_expr], [$1(0, 0, 0)],
- [__builtin___clear_cache], [$1("", "")],
- [__builtin_clrsb], [$1(0)],
- [__builtin_clrsbl], [$1(0)],
- [__builtin_clrsbll], [$1(0)],
- [__builtin_clz], [$1(0)],
- [__builtin_clzl], [$1(0)],
- [__builtin_clzll], [$1(0)],
- [__builtin_complex], [$1(0.0, 0.0)],
- [__builtin_constant_p], [$1(0)],
- [__builtin_ctz], [$1(0)],
- [__builtin_ctzl], [$1(0)],
- [__builtin_ctzll], [$1(0)],
- [__builtin_expect], [$1(0, 0)],
- [__builtin_ffs], [$1(0)],
- [__builtin_ffsl], [$1(0)],
- [__builtin_ffsll], [$1(0)],
- [__builtin_fpclassify], [$1(0, 1, 2, 3, 4, 0.0)],
- [__builtin_huge_val], [$1()],
- [__builtin_huge_valf], [$1()],
- [__builtin_huge_vall], [$1()],
- [__builtin_inf], [$1()],
- [__builtin_infd128], [$1()],
- [__builtin_infd32], [$1()],
- [__builtin_infd64], [$1()],
- [__builtin_inff], [$1()],
- [__builtin_infl], [$1()],
- [__builtin_isinf_sign], [$1(0.0)],
- [__builtin_nan], [$1("")],
- [__builtin_nand128], [$1("")],
- [__builtin_nand32], [$1("")],
- [__builtin_nand64], [$1("")],
- [__builtin_nanf], [$1("")],
- [__builtin_nanl], [$1("")],
- [__builtin_nans], [$1("")],
- [__builtin_nansf], [$1("")],
- [__builtin_nansl], [$1("")],
- [__builtin_object_size], [$1("", 0)],
- [__builtin_parity], [$1(0)],
- [__builtin_parityl], [$1(0)],
- [__builtin_parityll], [$1(0)],
- [__builtin_popcount], [$1(0)],
- [__builtin_popcountl], [$1(0)],
- [__builtin_popcountll], [$1(0)],
- [__builtin_powi], [$1(0, 0)],
- [__builtin_powif], [$1(0, 0)],
- [__builtin_powil], [$1(0, 0)],
- [__builtin_prefetch], [$1("")],
- [__builtin_trap], [$1()],
- [__builtin_types_compatible_p], [$1(int, int)],
- [__builtin_unreachable], [$1()],
- [m4_warn([syntax], [Unsupported built-in $1, the test may fail])
- $1()]
- )
- ])],
- [AS_VAR_SET([ac_var], [yes])],
- [AS_VAR_SET([ac_var], [no])])
- ])
-
- AS_IF([test yes = AS_VAR_GET([ac_var])],
- [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_$1), 1,
- [Define to 1 if the system has the `$1' built-in function])], [])
-
- AS_VAR_POPDEF([ac_var])
-])
diff --git a/protocols/Telegram/docs/tgl/m4_ax_check_openssl.m4 b/protocols/Telegram/docs/tgl/m4_ax_check_openssl.m4
deleted file mode 100644
index a87c5a6b6f..0000000000
--- a/protocols/Telegram/docs/tgl/m4_ax_check_openssl.m4
+++ /dev/null
@@ -1,124 +0,0 @@
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_check_openssl.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_CHECK_OPENSSL([action-if-found[, action-if-not-found]])
-#
-# DESCRIPTION
-#
-# Look for OpenSSL in a number of default spots, or in a user-selected
-# spot (via --with-openssl). Sets
-#
-# OPENSSL_INCLUDES to the include directives required
-# OPENSSL_LIBS to the -l directives required
-# OPENSSL_LDFLAGS to the -L or -R flags required
-#
-# and calls ACTION-IF-FOUND or ACTION-IF-NOT-FOUND appropriately
-#
-# This macro sets OPENSSL_INCLUDES such that source files should use the
-# openssl/ directory in include directives:
-#
-# #include <openssl/hmac.h>
-#
-# LICENSE
-#
-# Copyright (c) 2009,2010 Zmanda Inc. <http://www.zmanda.com/>
-# Copyright (c) 2009,2010 Dustin J. Mitchell <dustin@zmanda.com>
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 8
-
-AU_ALIAS([CHECK_SSL], [AX_CHECK_OPENSSL])
-AC_DEFUN([AX_CHECK_OPENSSL], [
- found=false
- AC_ARG_WITH([openssl],
- [AS_HELP_STRING([--with-openssl=DIR],
- [root of the OpenSSL directory])],
- [
- case "$withval" in
- "" | y | ye | yes | n | no)
- AC_MSG_ERROR([Invalid --with-openssl value])
- ;;
- *) ssldirs="$withval"
- ;;
- esac
- ], [
- # if pkg-config is installed and openssl has installed a .pc file,
- # then use that information and don't search ssldirs
- AC_PATH_PROG([PKG_CONFIG], [pkg-config])
- if test x"$PKG_CONFIG" != x""; then
- OPENSSL_LDFLAGS=`$PKG_CONFIG openssl --libs-only-L 2>/dev/null`
- if test $? = 0; then
- OPENSSL_LIBS=`$PKG_CONFIG openssl --libs-only-l 2>/dev/null`
- OPENSSL_INCLUDES=`$PKG_CONFIG openssl --cflags-only-I 2>/dev/null`
- found=true
- fi
- fi
-
- # no such luck; use some default ssldirs
- if ! $found; then
- ssldirs="/usr/local/ssl /usr/lib/ssl /usr/ssl /usr/pkg /usr/local /usr"
- fi
- ]
- )
-
-
- # note that we #include <openssl/foo.h>, so the OpenSSL headers have to be in
- # an 'openssl' subdirectory
-
- if ! $found; then
- OPENSSL_INCLUDES=
- for ssldir in $ssldirs; do
- AC_MSG_CHECKING([for openssl/ssl.h in $ssldir])
- if test -f "$ssldir/include/openssl/ssl.h"; then
- OPENSSL_INCLUDES="-I$ssldir/include"
- OPENSSL_LDFLAGS="-L$ssldir/lib"
- OPENSSL_LIBS="-lssl -lcrypto"
- found=true
- AC_MSG_RESULT([yes])
- break
- else
- AC_MSG_RESULT([no])
- fi
- done
-
- # if the file wasn't found, well, go ahead and try the link anyway -- maybe
- # it will just work!
- fi
-
- # try the preprocessor and linker with our new flags,
- # being careful not to pollute the global LIBS, LDFLAGS, and CPPFLAGS
-
- AC_MSG_CHECKING([whether compiling and linking against OpenSSL works])
- echo "Trying link with OPENSSL_LDFLAGS=$OPENSSL_LDFLAGS;" \
- "OPENSSL_LIBS=$OPENSSL_LIBS; OPENSSL_INCLUDES=$OPENSSL_INCLUDES" >&AS_MESSAGE_LOG_FD
-
- save_LIBS="$LIBS"
- save_LDFLAGS="$LDFLAGS"
- save_CPPFLAGS="$CPPFLAGS"
- LDFLAGS="$LDFLAGS $OPENSSL_LDFLAGS"
- LIBS="$OPENSSL_LIBS $LIBS"
- CPPFLAGS="$OPENSSL_INCLUDES $CPPFLAGS"
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM([#include <openssl/ssl.h>], [SSL_new(NULL)])],
- [
- AC_MSG_RESULT([yes])
- $1
- ], [
- AC_MSG_RESULT([no])
- $2
- ])
- CPPFLAGS="$save_CPPFLAGS"
- LDFLAGS="$save_LDFLAGS"
- LIBS="$save_LIBS"
-
- AC_SUBST([OPENSSL_INCLUDES])
- AC_SUBST([OPENSSL_LIBS])
- AC_SUBST([OPENSSL_LDFLAGS])
-])
diff --git a/protocols/Telegram/docs/tgl/m4_ax_check_zlib.m4 b/protocols/Telegram/docs/tgl/m4_ax_check_zlib.m4
deleted file mode 100644
index ae5705f624..0000000000
--- a/protocols/Telegram/docs/tgl/m4_ax_check_zlib.m4
+++ /dev/null
@@ -1,142 +0,0 @@
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_check_zlib.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_CHECK_ZLIB([action-if-found], [action-if-not-found])
-#
-# DESCRIPTION
-#
-# This macro searches for an installed zlib library. If nothing was
-# specified when calling configure, it searches first in /usr/local and
-# then in /usr, /opt/local and /sw. If the --with-zlib=DIR is specified,
-# it will try to find it in DIR/include/zlib.h and DIR/lib/libz.a. If
-# --without-zlib is specified, the library is not searched at all.
-#
-# If either the header file (zlib.h) or the library (libz) is not found,
-# shell commands 'action-if-not-found' is run. If 'action-if-not-found' is
-# not specified, the configuration exits on error, asking for a valid zlib
-# installation directory or --without-zlib.
-#
-# If both header file and library are found, shell commands
-# 'action-if-found' is run. If 'action-if-found' is not specified, the
-# default action appends '-I${ZLIB_HOME}/include' to CPFLAGS, appends
-# '-L$ZLIB_HOME}/lib' to LDFLAGS, prepends '-lz' to LIBS, and calls
-# AC_DEFINE(HAVE_LIBZ). You should use autoheader to include a definition
-# for this symbol in a config.h file. Sample usage in a C/C++ source is as
-# follows:
-#
-# #ifdef HAVE_LIBZ
-# #include <zlib.h>
-# #endif /* HAVE_LIBZ */
-#
-# LICENSE
-#
-# Copyright (c) 2008 Loic Dachary <loic@senga.org>
-# Copyright (c) 2010 Bastien Chevreux <bach@chevreux.org>
-#
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation; either version 2 of the License, or (at your
-# option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
-# Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-# As a special exception, the respective Autoconf Macro's copyright owner
-# gives unlimited permission to copy, distribute and modify the configure
-# scripts that are the output of Autoconf when processing the Macro. You
-# need not follow the terms of the GNU General Public License when using
-# or distributing such scripts, even though portions of the text of the
-# Macro appear in them. The GNU General Public License (GPL) does govern
-# all other use of the material that constitutes the Autoconf Macro.
-#
-# This special exception to the GPL applies to versions of the Autoconf
-# Macro released by the Autoconf Archive. When you make and distribute a
-# modified version of the Autoconf Macro, you may extend this special
-# exception to the GPL to apply to your modified version as well.
-
-#serial 14
-
-AU_ALIAS([CHECK_ZLIB], [AX_CHECK_ZLIB])
-AC_DEFUN([AX_CHECK_ZLIB],
-#
-# Handle user hints
-#
-[AC_MSG_CHECKING(if zlib is wanted)
-zlib_places="/usr/local /usr /opt/local /sw"
-AC_ARG_WITH([zlib],
-[ --with-zlib=DIR root directory path of zlib installation @<:@defaults to
- /usr/local or /usr if not found in /usr/local@:>@
- --without-zlib to disable zlib usage completely],
-[if test "$withval" != no ; then
- AC_MSG_RESULT(yes)
- if test -d "$withval"
- then
- zlib_places="$withval $zlib_places"
- else
- AC_MSG_WARN([Sorry, $withval does not exist, checking usual places])
- fi
-else
- zlib_places=
- AC_MSG_RESULT(no)
-fi],
-[AC_MSG_RESULT(yes)])
-
-#
-# Locate zlib, if wanted
-#
-if test -n "${zlib_places}"
-then
- # check the user supplied or any other more or less 'standard' place:
- # Most UNIX systems : /usr/local and /usr
- # MacPorts / Fink on OSX : /opt/local respectively /sw
- for ZLIB_HOME in ${zlib_places} ; do
- if test -f "${ZLIB_HOME}/include/zlib.h"; then break; fi
- ZLIB_HOME=""
- done
-
- ZLIB_OLD_LDFLAGS=$LDFLAGS
- ZLIB_OLD_CPPFLAGS=$CPPFLAGS
- if test -n "${ZLIB_HOME}"; then
- LDFLAGS="$LDFLAGS -L${ZLIB_HOME}/lib"
- CPPFLAGS="$CPPFLAGS -I${ZLIB_HOME}/include"
- fi
- AC_LANG_SAVE
- AC_LANG_C
- AC_CHECK_LIB([z], [inflateEnd], [zlib_cv_libz=yes], [zlib_cv_libz=no])
- AC_CHECK_HEADER([zlib.h], [zlib_cv_zlib_h=yes], [zlib_cv_zlib_h=no])
- AC_LANG_RESTORE
- if test "$zlib_cv_libz" = "yes" && test "$zlib_cv_zlib_h" = "yes"
- then
- #
- # If both library and header were found, action-if-found
- #
- m4_ifblank([$1],[
- CPPFLAGS="$CPPFLAGS -I${ZLIB_HOME}/include"
- LDFLAGS="$LDFLAGS -L${ZLIB_HOME}/lib"
- LIBS="-lz $LIBS"
- AC_DEFINE([HAVE_LIBZ], [1],
- [Define to 1 if you have `z' library (-lz)])
- ],[
- # Restore variables
- LDFLAGS="$ZLIB_OLD_LDFLAGS"
- CPPFLAGS="$ZLIB_OLD_CPPFLAGS"
- $1
- ])
- else
- #
- # If either header or library was not found, action-if-not-found
- #
- m4_default([$2],[
- AC_MSG_ERROR([either specify a valid zlib installation with --with-zlib=DIR or disable zlib usage with --without-zlib])
- ])
- fi
-fi
-])
diff --git a/protocols/Telegram/docs/tgl/mime.types b/protocols/Telegram/docs/tgl/mime.types
deleted file mode 100644
index da8cd69187..0000000000
--- a/protocols/Telegram/docs/tgl/mime.types
+++ /dev/null
@@ -1,1588 +0,0 @@
-# This file maps Internet media types to unique file extension(s).
-# Although created for httpd, this file is used by many software systems
-# and has been placed in the public domain for unlimited redisribution.
-#
-# The table below contains both registered and (common) unregistered types.
-# A type that has no unique extension can be ignored -- they are listed
-# here to guide configurations toward known types and to make it easier to
-# identify "new" types. File extensions are also commonly used to indicate
-# content languages and encodings, so choose them carefully.
-#
-# Internet media types should be registered as described in RFC 4288.
-# The registry is at <http://www.iana.org/assignments/media-types/>.
-#
-# MIME type (lowercased) Extensions
-# ============================================ ==========
-# application/1d-interleaved-parityfec
-# application/3gpp-ims+xml
-# application/activemessage
-application/andrew-inset ez
-# application/applefile
-application/applixware aw
-application/atom+xml atom
-application/atomcat+xml atomcat
-# application/atomicmail
-application/atomsvc+xml atomsvc
-# application/auth-policy+xml
-# application/batch-smtp
-# application/beep+xml
-# application/calendar+xml
-# application/cals-1840
-# application/ccmp+xml
-application/ccxml+xml ccxml
-application/cdmi-capability cdmia
-application/cdmi-container cdmic
-application/cdmi-domain cdmid
-application/cdmi-object cdmio
-application/cdmi-queue cdmiq
-# application/cea-2018+xml
-# application/cellml+xml
-# application/cfw
-# application/cnrp+xml
-# application/commonground
-# application/conference-info+xml
-# application/cpl+xml
-# application/csta+xml
-# application/cstadata+xml
-application/cu-seeme cu
-# application/cybercash
-application/davmount+xml davmount
-# application/dca-rft
-# application/dec-dx
-# application/dialog-info+xml
-# application/dicom
-# application/dns
-application/docbook+xml dbk
-# application/dskpp+xml
-application/dssc+der dssc
-application/dssc+xml xdssc
-# application/dvcs
-application/ecmascript ecma
-# application/edi-consent
-# application/edi-x12
-# application/edifact
-application/emma+xml emma
-# application/epp+xml
-application/epub+zip epub
-# application/eshop
-# application/example
-application/exi exi
-# application/fastinfoset
-# application/fastsoap
-# application/fits
-application/font-tdpfr pfr
-# application/framework-attributes+xml
-application/gml+xml gml
-application/gpx+xml gpx
-application/gxf gxf
-# application/h224
-# application/held+xml
-# application/http
-application/hyperstudio stk
-# application/ibe-key-request+xml
-# application/ibe-pkg-reply+xml
-# application/ibe-pp-data
-# application/iges
-# application/im-iscomposing+xml
-# application/index
-# application/index.cmd
-# application/index.obj
-# application/index.response
-# application/index.vnd
-application/inkml+xml ink inkml
-# application/iotp
-application/ipfix ipfix
-# application/ipp
-# application/isup
-application/java-archive jar
-application/java-serialized-object ser
-application/java-vm class
-application/javascript js
-application/json json
-application/jsonml+json jsonml
-# application/kpml-request+xml
-# application/kpml-response+xml
-application/lost+xml lostxml
-application/mac-binhex40 hqx
-application/mac-compactpro cpt
-# application/macwriteii
-application/mads+xml mads
-application/marc mrc
-application/marcxml+xml mrcx
-application/mathematica ma nb mb
-# application/mathml-content+xml
-# application/mathml-presentation+xml
-application/mathml+xml mathml
-# application/mbms-associated-procedure-description+xml
-# application/mbms-deregister+xml
-# application/mbms-envelope+xml
-# application/mbms-msk+xml
-# application/mbms-msk-response+xml
-# application/mbms-protection-description+xml
-# application/mbms-reception-report+xml
-# application/mbms-register+xml
-# application/mbms-register-response+xml
-# application/mbms-user-service-description+xml
-application/mbox mbox
-# application/media_control+xml
-application/mediaservercontrol+xml mscml
-application/metalink+xml metalink
-application/metalink4+xml meta4
-application/mets+xml mets
-# application/mikey
-application/mods+xml mods
-# application/moss-keys
-# application/moss-signature
-# application/mosskey-data
-# application/mosskey-request
-application/mp21 m21 mp21
-application/mp4 mp4s
-# application/mpeg4-generic
-# application/mpeg4-iod
-# application/mpeg4-iod-xmt
-# application/msc-ivr+xml
-# application/msc-mixer+xml
-application/msword doc dot
-application/mxf mxf
-# application/nasdata
-# application/news-checkgroups
-# application/news-groupinfo
-# application/news-transmission
-# application/nss
-# application/ocsp-request
-# application/ocsp-response
-application/octet-stream bin dms lrf mar so dist distz pkg bpk dump elc deploy
-application/oda oda
-application/oebps-package+xml opf
-application/ogg ogx
-application/omdoc+xml omdoc
-application/onenote onetoc onetoc2 onetmp onepkg
-application/oxps oxps
-# application/parityfec
-application/patch-ops-error+xml xer
-application/pdf pdf
-application/pgp-encrypted pgp
-# application/pgp-keys
-application/pgp-signature asc sig
-application/pics-rules prf
-# application/pidf+xml
-# application/pidf-diff+xml
-application/pkcs10 p10
-application/pkcs7-mime p7m p7c
-application/pkcs7-signature p7s
-application/pkcs8 p8
-application/pkix-attr-cert ac
-application/pkix-cert cer
-application/pkix-crl crl
-application/pkix-pkipath pkipath
-application/pkixcmp pki
-application/pls+xml pls
-# application/poc-settings+xml
-application/postscript ai eps ps
-# application/prs.alvestrand.titrax-sheet
-application/prs.cww cww
-# application/prs.nprend
-# application/prs.plucker
-# application/prs.rdf-xml-crypt
-# application/prs.xsf+xml
-application/pskc+xml pskcxml
-# application/qsig
-application/rdf+xml rdf
-application/reginfo+xml rif
-application/relax-ng-compact-syntax rnc
-# application/remote-printing
-application/resource-lists+xml rl
-application/resource-lists-diff+xml rld
-# application/riscos
-# application/rlmi+xml
-application/rls-services+xml rs
-application/rpki-ghostbusters gbr
-application/rpki-manifest mft
-application/rpki-roa roa
-# application/rpki-updown
-application/rsd+xml rsd
-application/rss+xml rss
-application/rtf rtf
-# application/rtx
-# application/samlassertion+xml
-# application/samlmetadata+xml
-application/sbml+xml sbml
-application/scvp-cv-request scq
-application/scvp-cv-response scs
-application/scvp-vp-request spq
-application/scvp-vp-response spp
-application/sdp sdp
-# application/set-payment
-application/set-payment-initiation setpay
-# application/set-registration
-application/set-registration-initiation setreg
-# application/sgml
-# application/sgml-open-catalog
-application/shf+xml shf
-# application/sieve
-# application/simple-filter+xml
-# application/simple-message-summary
-# application/simplesymbolcontainer
-# application/slate
-# application/smil
-application/smil+xml smi smil
-# application/soap+fastinfoset
-# application/soap+xml
-application/sparql-query rq
-application/sparql-results+xml srx
-# application/spirits-event+xml
-application/srgs gram
-application/srgs+xml grxml
-application/sru+xml sru
-application/ssdl+xml ssdl
-application/ssml+xml ssml
-# application/tamp-apex-update
-# application/tamp-apex-update-confirm
-# application/tamp-community-update
-# application/tamp-community-update-confirm
-# application/tamp-error
-# application/tamp-sequence-adjust
-# application/tamp-sequence-adjust-confirm
-# application/tamp-status-query
-# application/tamp-status-response
-# application/tamp-update
-# application/tamp-update-confirm
-application/tei+xml tei teicorpus
-application/thraud+xml tfi
-# application/timestamp-query
-# application/timestamp-reply
-application/timestamped-data tsd
-# application/tve-trigger
-# application/ulpfec
-# application/vcard+xml
-# application/vemmi
-# application/vividence.scriptfile
-# application/vnd.3gpp.bsf+xml
-application/vnd.3gpp.pic-bw-large plb
-application/vnd.3gpp.pic-bw-small psb
-application/vnd.3gpp.pic-bw-var pvb
-# application/vnd.3gpp.sms
-# application/vnd.3gpp2.bcmcsinfo+xml
-# application/vnd.3gpp2.sms
-application/vnd.3gpp2.tcap tcap
-application/vnd.3m.post-it-notes pwn
-application/vnd.accpac.simply.aso aso
-application/vnd.accpac.simply.imp imp
-application/vnd.acucobol acu
-application/vnd.acucorp atc acutc
-application/vnd.adobe.air-application-installer-package+zip air
-application/vnd.adobe.formscentral.fcdt fcdt
-application/vnd.adobe.fxp fxp fxpl
-# application/vnd.adobe.partial-upload
-application/vnd.adobe.xdp+xml xdp
-application/vnd.adobe.xfdf xfdf
-# application/vnd.aether.imp
-# application/vnd.ah-barcode
-application/vnd.ahead.space ahead
-application/vnd.airzip.filesecure.azf azf
-application/vnd.airzip.filesecure.azs azs
-application/vnd.amazon.ebook azw
-application/vnd.americandynamics.acc acc
-application/vnd.amiga.ami ami
-# application/vnd.amundsen.maze+xml
-application/vnd.android.package-archive apk
-application/vnd.anser-web-certificate-issue-initiation cii
-application/vnd.anser-web-funds-transfer-initiation fti
-application/vnd.antix.game-component atx
-application/vnd.apple.installer+xml mpkg
-application/vnd.apple.mpegurl m3u8
-# application/vnd.arastra.swi
-application/vnd.aristanetworks.swi swi
-application/vnd.astraea-software.iota iota
-application/vnd.audiograph aep
-# application/vnd.autopackage
-# application/vnd.avistar+xml
-application/vnd.blueice.multipass mpm
-# application/vnd.bluetooth.ep.oob
-application/vnd.bmi bmi
-application/vnd.businessobjects rep
-# application/vnd.cab-jscript
-# application/vnd.canon-cpdl
-# application/vnd.canon-lips
-# application/vnd.cendio.thinlinc.clientconf
-application/vnd.chemdraw+xml cdxml
-application/vnd.chipnuts.karaoke-mmd mmd
-application/vnd.cinderella cdy
-# application/vnd.cirpack.isdn-ext
-application/vnd.claymore cla
-application/vnd.cloanto.rp9 rp9
-application/vnd.clonk.c4group c4g c4d c4f c4p c4u
-application/vnd.cluetrust.cartomobile-config c11amc
-application/vnd.cluetrust.cartomobile-config-pkg c11amz
-# application/vnd.collection+json
-# application/vnd.commerce-battelle
-application/vnd.commonspace csp
-application/vnd.contact.cmsg cdbcmsg
-application/vnd.cosmocaller cmc
-application/vnd.crick.clicker clkx
-application/vnd.crick.clicker.keyboard clkk
-application/vnd.crick.clicker.palette clkp
-application/vnd.crick.clicker.template clkt
-application/vnd.crick.clicker.wordbank clkw
-application/vnd.criticaltools.wbs+xml wbs
-application/vnd.ctc-posml pml
-# application/vnd.ctct.ws+xml
-# application/vnd.cups-pdf
-# application/vnd.cups-postscript
-application/vnd.cups-ppd ppd
-# application/vnd.cups-raster
-# application/vnd.cups-raw
-# application/vnd.curl
-application/vnd.curl.car car
-application/vnd.curl.pcurl pcurl
-# application/vnd.cybank
-application/vnd.dart dart
-application/vnd.data-vision.rdz rdz
-application/vnd.dece.data uvf uvvf uvd uvvd
-application/vnd.dece.ttml+xml uvt uvvt
-application/vnd.dece.unspecified uvx uvvx
-application/vnd.dece.zip uvz uvvz
-application/vnd.denovo.fcselayout-link fe_launch
-# application/vnd.dir-bi.plate-dl-nosuffix
-application/vnd.dna dna
-application/vnd.dolby.mlp mlp
-# application/vnd.dolby.mobile.1
-# application/vnd.dolby.mobile.2
-application/vnd.dpgraph dpg
-application/vnd.dreamfactory dfac
-application/vnd.ds-keypoint kpxx
-application/vnd.dvb.ait ait
-# application/vnd.dvb.dvbj
-# application/vnd.dvb.esgcontainer
-# application/vnd.dvb.ipdcdftnotifaccess
-# application/vnd.dvb.ipdcesgaccess
-# application/vnd.dvb.ipdcesgaccess2
-# application/vnd.dvb.ipdcesgpdd
-# application/vnd.dvb.ipdcroaming
-# application/vnd.dvb.iptv.alfec-base
-# application/vnd.dvb.iptv.alfec-enhancement
-# application/vnd.dvb.notif-aggregate-root+xml
-# application/vnd.dvb.notif-container+xml
-# application/vnd.dvb.notif-generic+xml
-# application/vnd.dvb.notif-ia-msglist+xml
-# application/vnd.dvb.notif-ia-registration-request+xml
-# application/vnd.dvb.notif-ia-registration-response+xml
-# application/vnd.dvb.notif-init+xml
-# application/vnd.dvb.pfr
-application/vnd.dvb.service svc
-# application/vnd.dxr
-application/vnd.dynageo geo
-# application/vnd.easykaraoke.cdgdownload
-# application/vnd.ecdis-update
-application/vnd.ecowin.chart mag
-# application/vnd.ecowin.filerequest
-# application/vnd.ecowin.fileupdate
-# application/vnd.ecowin.series
-# application/vnd.ecowin.seriesrequest
-# application/vnd.ecowin.seriesupdate
-# application/vnd.emclient.accessrequest+xml
-application/vnd.enliven nml
-# application/vnd.eprints.data+xml
-application/vnd.epson.esf esf
-application/vnd.epson.msf msf
-application/vnd.epson.quickanime qam
-application/vnd.epson.salt slt
-application/vnd.epson.ssf ssf
-# application/vnd.ericsson.quickcall
-application/vnd.eszigno3+xml es3 et3
-# application/vnd.etsi.aoc+xml
-# application/vnd.etsi.cug+xml
-# application/vnd.etsi.iptvcommand+xml
-# application/vnd.etsi.iptvdiscovery+xml
-# application/vnd.etsi.iptvprofile+xml
-# application/vnd.etsi.iptvsad-bc+xml
-# application/vnd.etsi.iptvsad-cod+xml
-# application/vnd.etsi.iptvsad-npvr+xml
-# application/vnd.etsi.iptvservice+xml
-# application/vnd.etsi.iptvsync+xml
-# application/vnd.etsi.iptvueprofile+xml
-# application/vnd.etsi.mcid+xml
-# application/vnd.etsi.overload-control-policy-dataset+xml
-# application/vnd.etsi.sci+xml
-# application/vnd.etsi.simservs+xml
-# application/vnd.etsi.tsl+xml
-# application/vnd.etsi.tsl.der
-# application/vnd.eudora.data
-application/vnd.ezpix-album ez2
-application/vnd.ezpix-package ez3
-# application/vnd.f-secure.mobile
-application/vnd.fdf fdf
-application/vnd.fdsn.mseed mseed
-application/vnd.fdsn.seed seed dataless
-# application/vnd.ffsns
-# application/vnd.fints
-application/vnd.flographit gph
-application/vnd.fluxtime.clip ftc
-# application/vnd.font-fontforge-sfd
-application/vnd.framemaker fm frame maker book
-application/vnd.frogans.fnc fnc
-application/vnd.frogans.ltf ltf
-application/vnd.fsc.weblaunch fsc
-application/vnd.fujitsu.oasys oas
-application/vnd.fujitsu.oasys2 oa2
-application/vnd.fujitsu.oasys3 oa3
-application/vnd.fujitsu.oasysgp fg5
-application/vnd.fujitsu.oasysprs bh2
-# application/vnd.fujixerox.art-ex
-# application/vnd.fujixerox.art4
-# application/vnd.fujixerox.hbpl
-application/vnd.fujixerox.ddd ddd
-application/vnd.fujixerox.docuworks xdw
-application/vnd.fujixerox.docuworks.binder xbd
-# application/vnd.fut-misnet
-application/vnd.fuzzysheet fzs
-application/vnd.genomatix.tuxedo txd
-# application/vnd.geocube+xml
-application/vnd.geogebra.file ggb
-application/vnd.geogebra.tool ggt
-application/vnd.geometry-explorer gex gre
-application/vnd.geonext gxt
-application/vnd.geoplan g2w
-application/vnd.geospace g3w
-# application/vnd.globalplatform.card-content-mgt
-# application/vnd.globalplatform.card-content-mgt-response
-application/vnd.gmx gmx
-application/vnd.google-earth.kml+xml kml
-application/vnd.google-earth.kmz kmz
-application/vnd.grafeq gqf gqs
-# application/vnd.gridmp
-application/vnd.groove-account gac
-application/vnd.groove-help ghf
-application/vnd.groove-identity-message gim
-application/vnd.groove-injector grv
-application/vnd.groove-tool-message gtm
-application/vnd.groove-tool-template tpl
-application/vnd.groove-vcard vcg
-# application/vnd.hal+json
-application/vnd.hal+xml hal
-application/vnd.handheld-entertainment+xml zmm
-application/vnd.hbci hbci
-# application/vnd.hcl-bireports
-application/vnd.hhe.lesson-player les
-application/vnd.hp-hpgl hpgl
-application/vnd.hp-hpid hpid
-application/vnd.hp-hps hps
-application/vnd.hp-jlyt jlt
-application/vnd.hp-pcl pcl
-application/vnd.hp-pclxl pclxl
-# application/vnd.httphone
-application/vnd.hydrostatix.sof-data sfd-hdstx
-# application/vnd.hzn-3d-crossword
-# application/vnd.ibm.afplinedata
-# application/vnd.ibm.electronic-media
-application/vnd.ibm.minipay mpy
-application/vnd.ibm.modcap afp listafp list3820
-application/vnd.ibm.rights-management irm
-application/vnd.ibm.secure-container sc
-application/vnd.iccprofile icc icm
-application/vnd.igloader igl
-application/vnd.immervision-ivp ivp
-application/vnd.immervision-ivu ivu
-# application/vnd.informedcontrol.rms+xml
-# application/vnd.informix-visionary
-# application/vnd.infotech.project
-# application/vnd.infotech.project+xml
-# application/vnd.innopath.wamp.notification
-application/vnd.insors.igm igm
-application/vnd.intercon.formnet xpw xpx
-application/vnd.intergeo i2g
-# application/vnd.intertrust.digibox
-# application/vnd.intertrust.nncp
-application/vnd.intu.qbo qbo
-application/vnd.intu.qfx qfx
-# application/vnd.iptc.g2.conceptitem+xml
-# application/vnd.iptc.g2.knowledgeitem+xml
-# application/vnd.iptc.g2.newsitem+xml
-# application/vnd.iptc.g2.newsmessage+xml
-# application/vnd.iptc.g2.packageitem+xml
-# application/vnd.iptc.g2.planningitem+xml
-application/vnd.ipunplugged.rcprofile rcprofile
-application/vnd.irepository.package+xml irp
-application/vnd.is-xpr xpr
-application/vnd.isac.fcs fcs
-application/vnd.jam jam
-# application/vnd.japannet-directory-service
-# application/vnd.japannet-jpnstore-wakeup
-# application/vnd.japannet-payment-wakeup
-# application/vnd.japannet-registration
-# application/vnd.japannet-registration-wakeup
-# application/vnd.japannet-setstore-wakeup
-# application/vnd.japannet-verification
-# application/vnd.japannet-verification-wakeup
-application/vnd.jcp.javame.midlet-rms rms
-application/vnd.jisp jisp
-application/vnd.joost.joda-archive joda
-application/vnd.kahootz ktz ktr
-application/vnd.kde.karbon karbon
-application/vnd.kde.kchart chrt
-application/vnd.kde.kformula kfo
-application/vnd.kde.kivio flw
-application/vnd.kde.kontour kon
-application/vnd.kde.kpresenter kpr kpt
-application/vnd.kde.kspread ksp
-application/vnd.kde.kword kwd kwt
-application/vnd.kenameaapp htke
-application/vnd.kidspiration kia
-application/vnd.kinar kne knp
-application/vnd.koan skp skd skt skm
-application/vnd.kodak-descriptor sse
-application/vnd.las.las+xml lasxml
-# application/vnd.liberty-request+xml
-application/vnd.llamagraphics.life-balance.desktop lbd
-application/vnd.llamagraphics.life-balance.exchange+xml lbe
-application/vnd.lotus-1-2-3 123
-application/vnd.lotus-approach apr
-application/vnd.lotus-freelance pre
-application/vnd.lotus-notes nsf
-application/vnd.lotus-organizer org
-application/vnd.lotus-screencam scm
-application/vnd.lotus-wordpro lwp
-application/vnd.macports.portpkg portpkg
-# application/vnd.marlin.drm.actiontoken+xml
-# application/vnd.marlin.drm.conftoken+xml
-# application/vnd.marlin.drm.license+xml
-# application/vnd.marlin.drm.mdcf
-application/vnd.mcd mcd
-application/vnd.medcalcdata mc1
-application/vnd.mediastation.cdkey cdkey
-# application/vnd.meridian-slingshot
-application/vnd.mfer mwf
-application/vnd.mfmp mfm
-application/vnd.micrografx.flo flo
-application/vnd.micrografx.igx igx
-application/vnd.mif mif
-# application/vnd.minisoft-hp3000-save
-# application/vnd.mitsubishi.misty-guard.trustweb
-application/vnd.mobius.daf daf
-application/vnd.mobius.dis dis
-application/vnd.mobius.mbk mbk
-application/vnd.mobius.mqy mqy
-application/vnd.mobius.msl msl
-application/vnd.mobius.plc plc
-application/vnd.mobius.txf txf
-application/vnd.mophun.application mpn
-application/vnd.mophun.certificate mpc
-# application/vnd.motorola.flexsuite
-# application/vnd.motorola.flexsuite.adsi
-# application/vnd.motorola.flexsuite.fis
-# application/vnd.motorola.flexsuite.gotap
-# application/vnd.motorola.flexsuite.kmr
-# application/vnd.motorola.flexsuite.ttc
-# application/vnd.motorola.flexsuite.wem
-# application/vnd.motorola.iprm
-application/vnd.mozilla.xul+xml xul
-application/vnd.ms-artgalry cil
-# application/vnd.ms-asf
-application/vnd.ms-cab-compressed cab
-# application/vnd.ms-color.iccprofile
-application/vnd.ms-excel xls xlm xla xlc xlt xlw
-application/vnd.ms-excel.addin.macroenabled.12 xlam
-application/vnd.ms-excel.sheet.binary.macroenabled.12 xlsb
-application/vnd.ms-excel.sheet.macroenabled.12 xlsm
-application/vnd.ms-excel.template.macroenabled.12 xltm
-application/vnd.ms-fontobject eot
-application/vnd.ms-htmlhelp chm
-application/vnd.ms-ims ims
-application/vnd.ms-lrm lrm
-# application/vnd.ms-office.activex+xml
-application/vnd.ms-officetheme thmx
-# application/vnd.ms-opentype
-# application/vnd.ms-package.obfuscated-opentype
-application/vnd.ms-pki.seccat cat
-application/vnd.ms-pki.stl stl
-# application/vnd.ms-playready.initiator+xml
-application/vnd.ms-powerpoint ppt pps pot
-application/vnd.ms-powerpoint.addin.macroenabled.12 ppam
-application/vnd.ms-powerpoint.presentation.macroenabled.12 pptm
-application/vnd.ms-powerpoint.slide.macroenabled.12 sldm
-application/vnd.ms-powerpoint.slideshow.macroenabled.12 ppsm
-application/vnd.ms-powerpoint.template.macroenabled.12 potm
-# application/vnd.ms-printing.printticket+xml
-application/vnd.ms-project mpp mpt
-# application/vnd.ms-tnef
-# application/vnd.ms-wmdrm.lic-chlg-req
-# application/vnd.ms-wmdrm.lic-resp
-# application/vnd.ms-wmdrm.meter-chlg-req
-# application/vnd.ms-wmdrm.meter-resp
-application/vnd.ms-word.document.macroenabled.12 docm
-application/vnd.ms-word.template.macroenabled.12 dotm
-application/vnd.ms-works wps wks wcm wdb
-application/vnd.ms-wpl wpl
-application/vnd.ms-xpsdocument xps
-application/vnd.mseq mseq
-# application/vnd.msign
-# application/vnd.multiad.creator
-# application/vnd.multiad.creator.cif
-# application/vnd.music-niff
-application/vnd.musician mus
-application/vnd.muvee.style msty
-application/vnd.mynfc taglet
-# application/vnd.ncd.control
-# application/vnd.ncd.reference
-# application/vnd.nervana
-# application/vnd.netfpx
-application/vnd.neurolanguage.nlu nlu
-application/vnd.nitf ntf nitf
-application/vnd.noblenet-directory nnd
-application/vnd.noblenet-sealer nns
-application/vnd.noblenet-web nnw
-# application/vnd.nokia.catalogs
-# application/vnd.nokia.conml+wbxml
-# application/vnd.nokia.conml+xml
-# application/vnd.nokia.isds-radio-presets
-# application/vnd.nokia.iptv.config+xml
-# application/vnd.nokia.landmark+wbxml
-# application/vnd.nokia.landmark+xml
-# application/vnd.nokia.landmarkcollection+xml
-# application/vnd.nokia.n-gage.ac+xml
-application/vnd.nokia.n-gage.data ngdat
-application/vnd.nokia.n-gage.symbian.install n-gage
-# application/vnd.nokia.ncd
-# application/vnd.nokia.pcd+wbxml
-# application/vnd.nokia.pcd+xml
-application/vnd.nokia.radio-preset rpst
-application/vnd.nokia.radio-presets rpss
-application/vnd.novadigm.edm edm
-application/vnd.novadigm.edx edx
-application/vnd.novadigm.ext ext
-# application/vnd.ntt-local.file-transfer
-# application/vnd.ntt-local.sip-ta_remote
-# application/vnd.ntt-local.sip-ta_tcp_stream
-application/vnd.oasis.opendocument.chart odc
-application/vnd.oasis.opendocument.chart-template otc
-application/vnd.oasis.opendocument.database odb
-application/vnd.oasis.opendocument.formula odf
-application/vnd.oasis.opendocument.formula-template odft
-application/vnd.oasis.opendocument.graphics odg
-application/vnd.oasis.opendocument.graphics-template otg
-application/vnd.oasis.opendocument.image odi
-application/vnd.oasis.opendocument.image-template oti
-application/vnd.oasis.opendocument.presentation odp
-application/vnd.oasis.opendocument.presentation-template otp
-application/vnd.oasis.opendocument.spreadsheet ods
-application/vnd.oasis.opendocument.spreadsheet-template ots
-application/vnd.oasis.opendocument.text odt
-application/vnd.oasis.opendocument.text-master odm
-application/vnd.oasis.opendocument.text-template ott
-application/vnd.oasis.opendocument.text-web oth
-# application/vnd.obn
-# application/vnd.oftn.l10n+json
-# application/vnd.oipf.contentaccessdownload+xml
-# application/vnd.oipf.contentaccessstreaming+xml
-# application/vnd.oipf.cspg-hexbinary
-# application/vnd.oipf.dae.svg+xml
-# application/vnd.oipf.dae.xhtml+xml
-# application/vnd.oipf.mippvcontrolmessage+xml
-# application/vnd.oipf.pae.gem
-# application/vnd.oipf.spdiscovery+xml
-# application/vnd.oipf.spdlist+xml
-# application/vnd.oipf.ueprofile+xml
-# application/vnd.oipf.userprofile+xml
-application/vnd.olpc-sugar xo
-# application/vnd.oma-scws-config
-# application/vnd.oma-scws-http-request
-# application/vnd.oma-scws-http-response
-# application/vnd.oma.bcast.associated-procedure-parameter+xml
-# application/vnd.oma.bcast.drm-trigger+xml
-# application/vnd.oma.bcast.imd+xml
-# application/vnd.oma.bcast.ltkm
-# application/vnd.oma.bcast.notification+xml
-# application/vnd.oma.bcast.provisioningtrigger
-# application/vnd.oma.bcast.sgboot
-# application/vnd.oma.bcast.sgdd+xml
-# application/vnd.oma.bcast.sgdu
-# application/vnd.oma.bcast.simple-symbol-container
-# application/vnd.oma.bcast.smartcard-trigger+xml
-# application/vnd.oma.bcast.sprov+xml
-# application/vnd.oma.bcast.stkm
-# application/vnd.oma.cab-address-book+xml
-# application/vnd.oma.cab-feature-handler+xml
-# application/vnd.oma.cab-pcc+xml
-# application/vnd.oma.cab-user-prefs+xml
-# application/vnd.oma.dcd
-# application/vnd.oma.dcdc
-application/vnd.oma.dd2+xml dd2
-# application/vnd.oma.drm.risd+xml
-# application/vnd.oma.group-usage-list+xml
-# application/vnd.oma.pal+xml
-# application/vnd.oma.poc.detailed-progress-report+xml
-# application/vnd.oma.poc.final-report+xml
-# application/vnd.oma.poc.groups+xml
-# application/vnd.oma.poc.invocation-descriptor+xml
-# application/vnd.oma.poc.optimized-progress-report+xml
-# application/vnd.oma.push
-# application/vnd.oma.scidm.messages+xml
-# application/vnd.oma.xcap-directory+xml
-# application/vnd.omads-email+xml
-# application/vnd.omads-file+xml
-# application/vnd.omads-folder+xml
-# application/vnd.omaloc-supl-init
-application/vnd.openofficeorg.extension oxt
-# application/vnd.openxmlformats-officedocument.custom-properties+xml
-# application/vnd.openxmlformats-officedocument.customxmlproperties+xml
-# application/vnd.openxmlformats-officedocument.drawing+xml
-# application/vnd.openxmlformats-officedocument.drawingml.chart+xml
-# application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml
-# application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml
-# application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml
-# application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml
-# application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml
-# application/vnd.openxmlformats-officedocument.extended-properties+xml
-# application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml
-# application/vnd.openxmlformats-officedocument.presentationml.comments+xml
-# application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml
-# application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml
-# application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml
-application/vnd.openxmlformats-officedocument.presentationml.presentation pptx
-# application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml
-# application/vnd.openxmlformats-officedocument.presentationml.presprops+xml
-application/vnd.openxmlformats-officedocument.presentationml.slide sldx
-# application/vnd.openxmlformats-officedocument.presentationml.slide+xml
-# application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml
-# application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml
-application/vnd.openxmlformats-officedocument.presentationml.slideshow ppsx
-# application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml
-# application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml
-# application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml
-# application/vnd.openxmlformats-officedocument.presentationml.tags+xml
-application/vnd.openxmlformats-officedocument.presentationml.template potx
-# application/vnd.openxmlformats-officedocument.presentationml.template.main+xml
-# application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml
-application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx
-# application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml
-application/vnd.openxmlformats-officedocument.spreadsheetml.template xltx
-# application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml
-# application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml
-# application/vnd.openxmlformats-officedocument.theme+xml
-# application/vnd.openxmlformats-officedocument.themeoverride+xml
-# application/vnd.openxmlformats-officedocument.vmldrawing
-# application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml
-application/vnd.openxmlformats-officedocument.wordprocessingml.document docx
-# application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml
-# application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml
-# application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml
-# application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml
-# application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml
-# application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml
-# application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml
-# application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml
-# application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml
-application/vnd.openxmlformats-officedocument.wordprocessingml.template dotx
-# application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml
-# application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml
-# application/vnd.openxmlformats-package.core-properties+xml
-# application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml
-# application/vnd.openxmlformats-package.relationships+xml
-# application/vnd.quobject-quoxdocument
-# application/vnd.osa.netdeploy
-application/vnd.osgeo.mapguide.package mgp
-# application/vnd.osgi.bundle
-application/vnd.osgi.dp dp
-application/vnd.osgi.subsystem esa
-# application/vnd.otps.ct-kip+xml
-application/vnd.palm pdb pqa oprc
-# application/vnd.paos.xml
-application/vnd.pawaafile paw
-application/vnd.pg.format str
-application/vnd.pg.osasli ei6
-# application/vnd.piaccess.application-licence
-application/vnd.picsel efif
-application/vnd.pmi.widget wg
-# application/vnd.poc.group-advertisement+xml
-application/vnd.pocketlearn plf
-application/vnd.powerbuilder6 pbd
-# application/vnd.powerbuilder6-s
-# application/vnd.powerbuilder7
-# application/vnd.powerbuilder7-s
-# application/vnd.powerbuilder75
-# application/vnd.powerbuilder75-s
-# application/vnd.preminet
-application/vnd.previewsystems.box box
-application/vnd.proteus.magazine mgz
-application/vnd.publishare-delta-tree qps
-application/vnd.pvi.ptid1 ptid
-# application/vnd.pwg-multiplexed
-# application/vnd.pwg-xhtml-print+xml
-# application/vnd.qualcomm.brew-app-res
-application/vnd.quark.quarkxpress qxd qxt qwd qwt qxl qxb
-# application/vnd.radisys.moml+xml
-# application/vnd.radisys.msml+xml
-# application/vnd.radisys.msml-audit+xml
-# application/vnd.radisys.msml-audit-conf+xml
-# application/vnd.radisys.msml-audit-conn+xml
-# application/vnd.radisys.msml-audit-dialog+xml
-# application/vnd.radisys.msml-audit-stream+xml
-# application/vnd.radisys.msml-conf+xml
-# application/vnd.radisys.msml-dialog+xml
-# application/vnd.radisys.msml-dialog-base+xml
-# application/vnd.radisys.msml-dialog-fax-detect+xml
-# application/vnd.radisys.msml-dialog-fax-sendrecv+xml
-# application/vnd.radisys.msml-dialog-group+xml
-# application/vnd.radisys.msml-dialog-speech+xml
-# application/vnd.radisys.msml-dialog-transform+xml
-# application/vnd.rainstor.data
-# application/vnd.rapid
-application/vnd.realvnc.bed bed
-application/vnd.recordare.musicxml mxl
-application/vnd.recordare.musicxml+xml musicxml
-# application/vnd.renlearn.rlprint
-application/vnd.rig.cryptonote cryptonote
-application/vnd.rim.cod cod
-application/vnd.rn-realmedia rm
-application/vnd.rn-realmedia-vbr rmvb
-application/vnd.route66.link66+xml link66
-# application/vnd.rs-274x
-# application/vnd.ruckus.download
-# application/vnd.s3sms
-application/vnd.sailingtracker.track st
-# application/vnd.sbm.cid
-# application/vnd.sbm.mid2
-# application/vnd.scribus
-# application/vnd.sealed.3df
-# application/vnd.sealed.csf
-# application/vnd.sealed.doc
-# application/vnd.sealed.eml
-# application/vnd.sealed.mht
-# application/vnd.sealed.net
-# application/vnd.sealed.ppt
-# application/vnd.sealed.tiff
-# application/vnd.sealed.xls
-# application/vnd.sealedmedia.softseal.html
-# application/vnd.sealedmedia.softseal.pdf
-application/vnd.seemail see
-application/vnd.sema sema
-application/vnd.semd semd
-application/vnd.semf semf
-application/vnd.shana.informed.formdata ifm
-application/vnd.shana.informed.formtemplate itp
-application/vnd.shana.informed.interchange iif
-application/vnd.shana.informed.package ipk
-application/vnd.simtech-mindmapper twd twds
-application/vnd.smaf mmf
-# application/vnd.smart.notebook
-application/vnd.smart.teacher teacher
-# application/vnd.software602.filler.form+xml
-# application/vnd.software602.filler.form-xml-zip
-application/vnd.solent.sdkm+xml sdkm sdkd
-application/vnd.spotfire.dxp dxp
-application/vnd.spotfire.sfs sfs
-# application/vnd.sss-cod
-# application/vnd.sss-dtf
-# application/vnd.sss-ntf
-application/vnd.stardivision.calc sdc
-application/vnd.stardivision.draw sda
-application/vnd.stardivision.impress sdd
-application/vnd.stardivision.math smf
-application/vnd.stardivision.writer sdw vor
-application/vnd.stardivision.writer-global sgl
-application/vnd.stepmania.package smzip
-application/vnd.stepmania.stepchart sm
-# application/vnd.street-stream
-application/vnd.sun.xml.calc sxc
-application/vnd.sun.xml.calc.template stc
-application/vnd.sun.xml.draw sxd
-application/vnd.sun.xml.draw.template std
-application/vnd.sun.xml.impress sxi
-application/vnd.sun.xml.impress.template sti
-application/vnd.sun.xml.math sxm
-application/vnd.sun.xml.writer sxw
-application/vnd.sun.xml.writer.global sxg
-application/vnd.sun.xml.writer.template stw
-# application/vnd.sun.wadl+xml
-application/vnd.sus-calendar sus susp
-application/vnd.svd svd
-# application/vnd.swiftview-ics
-application/vnd.symbian.install sis sisx
-application/vnd.syncml+xml xsm
-application/vnd.syncml.dm+wbxml bdm
-application/vnd.syncml.dm+xml xdm
-# application/vnd.syncml.dm.notification
-# application/vnd.syncml.ds.notification
-application/vnd.tao.intent-module-archive tao
-application/vnd.tcpdump.pcap pcap cap dmp
-application/vnd.tmobile-livetv tmo
-application/vnd.trid.tpt tpt
-application/vnd.triscape.mxs mxs
-application/vnd.trueapp tra
-# application/vnd.truedoc
-# application/vnd.ubisoft.webplayer
-application/vnd.ufdl ufd ufdl
-application/vnd.uiq.theme utz
-application/vnd.umajin umj
-application/vnd.unity unityweb
-application/vnd.uoml+xml uoml
-# application/vnd.uplanet.alert
-# application/vnd.uplanet.alert-wbxml
-# application/vnd.uplanet.bearer-choice
-# application/vnd.uplanet.bearer-choice-wbxml
-# application/vnd.uplanet.cacheop
-# application/vnd.uplanet.cacheop-wbxml
-# application/vnd.uplanet.channel
-# application/vnd.uplanet.channel-wbxml
-# application/vnd.uplanet.list
-# application/vnd.uplanet.list-wbxml
-# application/vnd.uplanet.listcmd
-# application/vnd.uplanet.listcmd-wbxml
-# application/vnd.uplanet.signal
-application/vnd.vcx vcx
-# application/vnd.vd-study
-# application/vnd.vectorworks
-# application/vnd.verimatrix.vcas
-# application/vnd.vidsoft.vidconference
-application/vnd.visio vsd vst vss vsw
-application/vnd.visionary vis
-# application/vnd.vividence.scriptfile
-application/vnd.vsf vsf
-# application/vnd.wap.sic
-# application/vnd.wap.slc
-application/vnd.wap.wbxml wbxml
-application/vnd.wap.wmlc wmlc
-application/vnd.wap.wmlscriptc wmlsc
-application/vnd.webturbo wtb
-# application/vnd.wfa.wsc
-# application/vnd.wmc
-# application/vnd.wmf.bootstrap
-# application/vnd.wolfram.mathematica
-# application/vnd.wolfram.mathematica.package
-application/vnd.wolfram.player nbp
-application/vnd.wordperfect wpd
-application/vnd.wqd wqd
-# application/vnd.wrq-hp3000-labelled
-application/vnd.wt.stf stf
-# application/vnd.wv.csp+wbxml
-# application/vnd.wv.csp+xml
-# application/vnd.wv.ssp+xml
-application/vnd.xara xar
-application/vnd.xfdl xfdl
-# application/vnd.xfdl.webform
-# application/vnd.xmi+xml
-# application/vnd.xmpie.cpkg
-# application/vnd.xmpie.dpkg
-# application/vnd.xmpie.plan
-# application/vnd.xmpie.ppkg
-# application/vnd.xmpie.xlim
-application/vnd.yamaha.hv-dic hvd
-application/vnd.yamaha.hv-script hvs
-application/vnd.yamaha.hv-voice hvp
-application/vnd.yamaha.openscoreformat osf
-application/vnd.yamaha.openscoreformat.osfpvg+xml osfpvg
-# application/vnd.yamaha.remote-setup
-application/vnd.yamaha.smaf-audio saf
-application/vnd.yamaha.smaf-phrase spf
-# application/vnd.yamaha.through-ngn
-# application/vnd.yamaha.tunnel-udpencap
-application/vnd.yellowriver-custom-menu cmp
-application/vnd.zul zir zirz
-application/vnd.zzazz.deck+xml zaz
-application/voicexml+xml vxml
-# application/vq-rtcpxr
-# application/watcherinfo+xml
-# application/whoispp-query
-# application/whoispp-response
-application/widget wgt
-application/winhlp hlp
-# application/wita
-# application/wordperfect5.1
-application/wsdl+xml wsdl
-application/wspolicy+xml wspolicy
-application/x-7z-compressed 7z
-application/x-abiword abw
-application/x-ace-compressed ace
-# application/x-amf
-application/x-apple-diskimage dmg
-application/x-authorware-bin aab x32 u32 vox
-application/x-authorware-map aam
-application/x-authorware-seg aas
-application/x-bcpio bcpio
-application/x-bittorrent torrent
-application/x-blorb blb blorb
-application/x-bzip bz
-application/x-bzip2 bz2 boz
-application/x-cbr cbr cba cbt cbz cb7
-application/x-cdlink vcd
-application/x-cfs-compressed cfs
-application/x-chat chat
-application/x-chess-pgn pgn
-application/x-conference nsc
-# application/x-compress
-application/x-cpio cpio
-application/x-csh csh
-application/x-debian-package deb udeb
-application/x-dgc-compressed dgc
-application/x-director dir dcr dxr cst cct cxt w3d fgd swa
-application/x-doom wad
-application/x-dtbncx+xml ncx
-application/x-dtbook+xml dtb
-application/x-dtbresource+xml res
-application/x-dvi dvi
-application/x-envoy evy
-application/x-eva eva
-application/x-font-bdf bdf
-# application/x-font-dos
-# application/x-font-framemaker
-application/x-font-ghostscript gsf
-# application/x-font-libgrx
-application/x-font-linux-psf psf
-application/x-font-otf otf
-application/x-font-pcf pcf
-application/x-font-snf snf
-# application/x-font-speedo
-# application/x-font-sunos-news
-application/x-font-ttf ttf ttc
-application/x-font-type1 pfa pfb pfm afm
-application/font-woff woff
-# application/x-font-vfont
-application/x-freearc arc
-application/x-futuresplash spl
-application/x-gca-compressed gca
-application/x-glulx ulx
-application/x-gnumeric gnumeric
-application/x-gramps-xml gramps
-application/x-gtar gtar
-# application/x-gzip
-application/x-hdf hdf
-application/x-install-instructions install
-application/x-iso9660-image iso
-application/x-java-jnlp-file jnlp
-application/x-latex latex
-application/x-lzh-compressed lzh lha
-application/x-mie mie
-application/x-mobipocket-ebook prc mobi
-application/x-ms-application application
-application/x-ms-shortcut lnk
-application/x-ms-wmd wmd
-application/x-ms-wmz wmz
-application/x-ms-xbap xbap
-application/x-msaccess mdb
-application/x-msbinder obd
-application/x-mscardfile crd
-application/x-msclip clp
-application/x-msdownload exe dll com bat msi
-application/x-msmediaview mvb m13 m14
-application/x-msmetafile wmf wmz emf emz
-application/x-msmoney mny
-application/x-mspublisher pub
-application/x-msschedule scd
-application/x-msterminal trm
-application/x-mswrite wri
-application/x-netcdf nc cdf
-application/x-nzb nzb
-application/x-pkcs12 p12 pfx
-application/x-pkcs7-certificates p7b spc
-application/x-pkcs7-certreqresp p7r
-application/x-rar-compressed rar
-application/x-research-info-systems ris
-application/x-sh sh
-application/x-shar shar
-application/x-shockwave-flash swf
-application/x-silverlight-app xap
-application/x-sql sql
-application/x-stuffit sit
-application/x-stuffitx sitx
-application/x-subrip srt
-application/x-sv4cpio sv4cpio
-application/x-sv4crc sv4crc
-application/x-t3vm-image t3
-application/x-tads gam
-application/x-tar tar
-application/x-tcl tcl
-application/x-tex tex
-application/x-tex-tfm tfm
-application/x-texinfo texinfo texi
-application/x-tgif obj
-application/x-ustar ustar
-application/x-wais-source src
-application/x-x509-ca-cert der crt
-application/x-xfig fig
-application/x-xliff+xml xlf
-application/x-xpinstall xpi
-application/x-xz xz
-application/x-zmachine z1 z2 z3 z4 z5 z6 z7 z8
-# application/x400-bp
-application/xaml+xml xaml
-# application/xcap-att+xml
-# application/xcap-caps+xml
-application/xcap-diff+xml xdf
-# application/xcap-el+xml
-# application/xcap-error+xml
-# application/xcap-ns+xml
-# application/xcon-conference-info-diff+xml
-# application/xcon-conference-info+xml
-application/xenc+xml xenc
-application/xhtml+xml xhtml xht
-# application/xhtml-voice+xml
-application/xml xml xsl
-application/xml-dtd dtd
-# application/xml-external-parsed-entity
-# application/xmpp+xml
-application/xop+xml xop
-application/xproc+xml xpl
-application/xslt+xml xslt
-application/xspf+xml xspf
-application/xv+xml mxml xhvml xvml xvm
-application/yang yang
-application/yin+xml yin
-application/zip zip
-# audio/1d-interleaved-parityfec
-# audio/32kadpcm
-# audio/3gpp
-# audio/3gpp2
-# audio/ac3
-audio/adpcm adp
-# audio/amr
-# audio/amr-wb
-# audio/amr-wb+
-# audio/asc
-# audio/atrac-advanced-lossless
-# audio/atrac-x
-# audio/atrac3
-audio/basic au snd
-# audio/bv16
-# audio/bv32
-# audio/clearmode
-# audio/cn
-# audio/dat12
-# audio/dls
-# audio/dsr-es201108
-# audio/dsr-es202050
-# audio/dsr-es202211
-# audio/dsr-es202212
-# audio/dv
-# audio/dvi4
-# audio/eac3
-# audio/evrc
-# audio/evrc-qcp
-# audio/evrc0
-# audio/evrc1
-# audio/evrcb
-# audio/evrcb0
-# audio/evrcb1
-# audio/evrcwb
-# audio/evrcwb0
-# audio/evrcwb1
-# audio/example
-# audio/fwdred
-# audio/g719
-# audio/g722
-# audio/g7221
-# audio/g723
-# audio/g726-16
-# audio/g726-24
-# audio/g726-32
-# audio/g726-40
-# audio/g728
-# audio/g729
-# audio/g7291
-# audio/g729d
-# audio/g729e
-# audio/gsm
-# audio/gsm-efr
-# audio/gsm-hr-08
-# audio/ilbc
-# audio/ip-mr_v2.5
-# audio/isac
-# audio/l16
-# audio/l20
-# audio/l24
-# audio/l8
-# audio/lpc
-audio/midi mid midi kar rmi
-# audio/mobile-xmf
-audio/mp4 mp4a
-# audio/mp4a-latm
-# audio/mpa
-# audio/mpa-robust
-audio/mpeg mpga mp2 mp2a mp3 m2a m3a
-# audio/mpeg4-generic
-# audio/musepack
-audio/ogg oga ogg spx
-# audio/opus
-# audio/parityfec
-# audio/pcma
-# audio/pcma-wb
-# audio/pcmu-wb
-# audio/pcmu
-# audio/prs.sid
-# audio/qcelp
-# audio/red
-# audio/rtp-enc-aescm128
-# audio/rtp-midi
-# audio/rtx
-audio/s3m s3m
-audio/silk sil
-# audio/smv
-# audio/smv0
-# audio/smv-qcp
-# audio/sp-midi
-# audio/speex
-# audio/t140c
-# audio/t38
-# audio/telephone-event
-# audio/tone
-# audio/uemclip
-# audio/ulpfec
-# audio/vdvi
-# audio/vmr-wb
-# audio/vnd.3gpp.iufp
-# audio/vnd.4sb
-# audio/vnd.audiokoz
-# audio/vnd.celp
-# audio/vnd.cisco.nse
-# audio/vnd.cmles.radio-events
-# audio/vnd.cns.anp1
-# audio/vnd.cns.inf1
-audio/vnd.dece.audio uva uvva
-audio/vnd.digital-winds eol
-# audio/vnd.dlna.adts
-# audio/vnd.dolby.heaac.1
-# audio/vnd.dolby.heaac.2
-# audio/vnd.dolby.mlp
-# audio/vnd.dolby.mps
-# audio/vnd.dolby.pl2
-# audio/vnd.dolby.pl2x
-# audio/vnd.dolby.pl2z
-# audio/vnd.dolby.pulse.1
-audio/vnd.dra dra
-audio/vnd.dts dts
-audio/vnd.dts.hd dtshd
-# audio/vnd.dvb.file
-# audio/vnd.everad.plj
-# audio/vnd.hns.audio
-audio/vnd.lucent.voice lvp
-audio/vnd.ms-playready.media.pya pya
-# audio/vnd.nokia.mobile-xmf
-# audio/vnd.nortel.vbk
-audio/vnd.nuera.ecelp4800 ecelp4800
-audio/vnd.nuera.ecelp7470 ecelp7470
-audio/vnd.nuera.ecelp9600 ecelp9600
-# audio/vnd.octel.sbc
-# audio/vnd.qcelp
-# audio/vnd.rhetorex.32kadpcm
-audio/vnd.rip rip
-# audio/vnd.sealedmedia.softseal.mpeg
-# audio/vnd.vmx.cvsd
-# audio/vorbis
-# audio/vorbis-config
-audio/webm weba
-audio/x-aac aac
-audio/x-aiff aif aiff aifc
-audio/x-caf caf
-audio/x-flac flac
-audio/x-matroska mka
-audio/x-mpegurl m3u
-audio/x-ms-wax wax
-audio/x-ms-wma wma
-audio/x-pn-realaudio ram ra
-audio/x-pn-realaudio-plugin rmp
-# audio/x-tta
-audio/x-wav wav
-audio/xm xm
-chemical/x-cdx cdx
-chemical/x-cif cif
-chemical/x-cmdf cmdf
-chemical/x-cml cml
-chemical/x-csml csml
-# chemical/x-pdb
-chemical/x-xyz xyz
-image/bmp bmp
-image/cgm cgm
-# image/example
-# image/fits
-image/g3fax g3
-image/gif gif
-image/ief ief
-# image/jp2
-image/jpeg jpeg jpg jpe
-# image/jpm
-# image/jpx
-image/ktx ktx
-# image/naplps
-image/png png
-image/prs.btif btif
-# image/prs.pti
-image/sgi sgi
-image/svg+xml svg svgz
-# image/t38
-image/tiff tiff tif
-# image/tiff-fx
-image/vnd.adobe.photoshop psd
-# image/vnd.cns.inf2
-image/vnd.dece.graphic uvi uvvi uvg uvvg
-image/vnd.dvb.subtitle sub
-image/vnd.djvu djvu djv
-image/vnd.dwg dwg
-image/vnd.dxf dxf
-image/vnd.fastbidsheet fbs
-image/vnd.fpx fpx
-image/vnd.fst fst
-image/vnd.fujixerox.edmics-mmr mmr
-image/vnd.fujixerox.edmics-rlc rlc
-# image/vnd.globalgraphics.pgb
-# image/vnd.microsoft.icon
-# image/vnd.mix
-image/vnd.ms-modi mdi
-image/vnd.ms-photo wdp
-image/vnd.net-fpx npx
-# image/vnd.radiance
-# image/vnd.sealed.png
-# image/vnd.sealedmedia.softseal.gif
-# image/vnd.sealedmedia.softseal.jpg
-# image/vnd.svf
-image/vnd.wap.wbmp wbmp
-image/vnd.xiff xif
-image/webp webp
-image/x-3ds 3ds
-image/x-cmu-raster ras
-image/x-cmx cmx
-image/x-freehand fh fhc fh4 fh5 fh7
-image/x-icon ico
-image/x-mrsid-image sid
-image/x-pcx pcx
-image/x-pict pic pct
-image/x-portable-anymap pnm
-image/x-portable-bitmap pbm
-image/x-portable-graymap pgm
-image/x-portable-pixmap ppm
-image/x-rgb rgb
-image/x-tga tga
-image/x-xbitmap xbm
-image/x-xpixmap xpm
-image/x-xwindowdump xwd
-# message/cpim
-# message/delivery-status
-# message/disposition-notification
-# message/example
-# message/external-body
-# message/feedback-report
-# message/global
-# message/global-delivery-status
-# message/global-disposition-notification
-# message/global-headers
-# message/http
-# message/imdn+xml
-# message/news
-# message/partial
-message/rfc822 eml mime
-# message/s-http
-# message/sip
-# message/sipfrag
-# message/tracking-status
-# message/vnd.si.simp
-# model/example
-model/iges igs iges
-model/mesh msh mesh silo
-model/vnd.collada+xml dae
-model/vnd.dwf dwf
-# model/vnd.flatland.3dml
-model/vnd.gdl gdl
-# model/vnd.gs-gdl
-# model/vnd.gs.gdl
-model/vnd.gtw gtw
-# model/vnd.moml+xml
-model/vnd.mts mts
-# model/vnd.parasolid.transmit.binary
-# model/vnd.parasolid.transmit.text
-model/vnd.vtu vtu
-model/vrml wrl vrml
-model/x3d+binary x3db x3dbz
-model/x3d+vrml x3dv x3dvz
-model/x3d+xml x3d x3dz
-# multipart/alternative
-# multipart/appledouble
-# multipart/byteranges
-# multipart/digest
-# multipart/encrypted
-# multipart/example
-# multipart/form-data
-# multipart/header-set
-# multipart/mixed
-# multipart/parallel
-# multipart/related
-# multipart/report
-# multipart/signed
-# multipart/voice-message
-# text/1d-interleaved-parityfec
-text/cache-manifest appcache
-text/calendar ics ifb
-text/css css
-text/csv csv
-# text/directory
-# text/dns
-# text/ecmascript
-# text/enriched
-# text/example
-# text/fwdred
-text/html html htm
-# text/javascript
-text/n3 n3
-# text/parityfec
-text/plain txt text conf def list log in
-# text/prs.fallenstein.rst
-text/prs.lines.tag dsc
-# text/vnd.radisys.msml-basic-layout
-# text/red
-# text/rfc822-headers
-text/richtext rtx
-# text/rtf
-# text/rtp-enc-aescm128
-# text/rtx
-text/sgml sgml sgm
-# text/t140
-text/tab-separated-values tsv
-text/troff t tr roff man me ms
-text/turtle ttl
-# text/ulpfec
-text/uri-list uri uris urls
-text/vcard vcard
-# text/vnd.abc
-text/vnd.curl curl
-text/vnd.curl.dcurl dcurl
-text/vnd.curl.scurl scurl
-text/vnd.curl.mcurl mcurl
-# text/vnd.dmclientscript
-text/vnd.dvb.subtitle sub
-# text/vnd.esmertec.theme-descriptor
-text/vnd.fly fly
-text/vnd.fmi.flexstor flx
-text/vnd.graphviz gv
-text/vnd.in3d.3dml 3dml
-text/vnd.in3d.spot spot
-# text/vnd.iptc.newsml
-# text/vnd.iptc.nitf
-# text/vnd.latex-z
-# text/vnd.motorola.reflex
-# text/vnd.ms-mediapackage
-# text/vnd.net2phone.commcenter.command
-# text/vnd.si.uricatalogue
-text/vnd.sun.j2me.app-descriptor jad
-# text/vnd.trolltech.linguist
-# text/vnd.wap.si
-# text/vnd.wap.sl
-text/vnd.wap.wml wml
-text/vnd.wap.wmlscript wmls
-text/x-asm s asm
-text/x-c c cc cxx cpp h hh dic
-text/x-fortran f for f77 f90
-text/x-java-source java
-text/x-opml opml
-text/x-pascal p pas
-text/x-nfo nfo
-text/x-setext etx
-text/x-sfv sfv
-text/x-uuencode uu
-text/x-vcalendar vcs
-text/x-vcard vcf
-# text/xml
-# text/xml-external-parsed-entity
-# video/1d-interleaved-parityfec
-video/3gpp 3gp
-# video/3gpp-tt
-video/3gpp2 3g2
-# video/bmpeg
-# video/bt656
-# video/celb
-# video/dv
-# video/example
-video/h261 h261
-video/h263 h263
-# video/h263-1998
-# video/h263-2000
-video/h264 h264
-# video/h264-rcdo
-# video/h264-svc
-video/jpeg jpgv
-# video/jpeg2000
-video/jpm jpm jpgm
-video/mj2 mj2 mjp2
-# video/mp1s
-# video/mp2p
-# video/mp2t
-video/mp4 mp4 mp4v mpg4
-# video/mp4v-es
-video/mpeg mpeg mpg mpe m1v m2v
-# video/mpeg4-generic
-# video/mpv
-# video/nv
-video/ogg ogv
-# video/parityfec
-# video/pointer
-video/quicktime qt mov
-# video/raw
-# video/rtp-enc-aescm128
-# video/rtx
-# video/smpte292m
-# video/ulpfec
-# video/vc1
-# video/vnd.cctv
-video/vnd.dece.hd uvh uvvh
-video/vnd.dece.mobile uvm uvvm
-# video/vnd.dece.mp4
-video/vnd.dece.pd uvp uvvp
-video/vnd.dece.sd uvs uvvs
-video/vnd.dece.video uvv uvvv
-# video/vnd.directv.mpeg
-# video/vnd.directv.mpeg-tts
-# video/vnd.dlna.mpeg-tts
-video/vnd.dvb.file dvb
-video/vnd.fvt fvt
-# video/vnd.hns.video
-# video/vnd.iptvforum.1dparityfec-1010
-# video/vnd.iptvforum.1dparityfec-2005
-# video/vnd.iptvforum.2dparityfec-1010
-# video/vnd.iptvforum.2dparityfec-2005
-# video/vnd.iptvforum.ttsavc
-# video/vnd.iptvforum.ttsmpeg2
-# video/vnd.motorola.video
-# video/vnd.motorola.videop
-video/vnd.mpegurl mxu m4u
-video/vnd.ms-playready.media.pyv pyv
-# video/vnd.nokia.interleaved-multimedia
-# video/vnd.nokia.videovoip
-# video/vnd.objectvideo
-# video/vnd.sealed.mpeg1
-# video/vnd.sealed.mpeg4
-# video/vnd.sealed.swf
-# video/vnd.sealedmedia.softseal.mov
-video/vnd.uvvu.mp4 uvu uvvu
-video/vnd.vivo viv
-video/webm webm
-video/x-f4v f4v
-video/x-fli fli
-video/x-flv flv
-video/x-m4v m4v
-video/x-matroska mkv mk3d mks
-video/x-mng mng
-video/x-ms-asf asf asx
-video/x-ms-vob vob
-video/x-ms-wm wm
-video/x-ms-wmv wmv
-video/x-ms-wmx wmx
-video/x-ms-wvx wvx
-video/x-msvideo avi
-video/x-sgi-movie movie
-video/x-smv smv
-x-conference/x-cooltalk ice
diff --git a/protocols/Telegram/docs/tgl/mtproto.tl b/protocols/Telegram/docs/tgl/mtproto.tl
deleted file mode 100644
index 2f02c49ae8..0000000000
--- a/protocols/Telegram/docs/tgl/mtproto.tl
+++ /dev/null
@@ -1,19 +0,0 @@
----types---
-resPQ#05162463 nonce:int128 server_nonce:int128 pq:string server_public_key_fingerprints:(Vector long) = ResPQ;
-server_DH_params_fail#79cb045d nonce:int128 server_nonce:int128 new_nonce_hash:int128 = Server_DH_Params;
-server_DH_params_ok#d0e8075c nonce:int128 server_nonce:int128 encrypted_answer:string = Server_DH_Params;
-
-p_q_inner_data#83c95aec pq:string p:string q:string nonce:int128 server_nonce:int128 new_nonce:int256 = P_Q_inner_data;
-p_q_inner_data_temp#3c6a84d4 pq:string p:string q:string nonce:int128 server_nonce:int128 new_nonce:int256 expires_in:int = P_Q_inner_data;
-client_DH_inner_data#6643b654 nonce:int128 server_nonce:int128 retry_id:long g_b:string = Client_DH_Inner_Data;
-
-dh_gen_ok#3bcbf734 nonce:int128 server_nonce:int128 new_nonce_hash1:int128 = Set_client_DH_params_answer;
-dh_gen_retry#46dc1fb9 nonce:int128 server_nonce:int128 new_nonce_hash2:int128 = Set_client_DH_params_answer;
-dh_gen_fail#a69dae02 nonce:int128 server_nonce:int128 new_nonce_hash3:int128 = Set_client_DH_params_answer;
-
-server_DH_inner_data#b5890dba nonce:int128 server_nonce:int128 g:int dh_prime:string g_a:string server_time:int = Server_DH_inner_data;
-
----functions---
-req_pq#60469778 nonce:int128 = ResPQ;
-req_DH_params#d712e4be nonce:int128 server_nonce:int128 p:string q:string public_key_fingerprint:long encrypted_data:string = Server_DH_Params;
-set_client_DH_params#f5045f1f nonce:int128 server_nonce:int128 encrypted_data:string = Set_client_DH_params_answer;
diff --git a/protocols/Telegram/docs/tgl/scheme.tl b/protocols/Telegram/docs/tgl/scheme.tl
deleted file mode 100644
index a38980aea4..0000000000
--- a/protocols/Telegram/docs/tgl/scheme.tl
+++ /dev/null
@@ -1 +0,0 @@
-scheme31.tl \ No newline at end of file
diff --git a/protocols/Telegram/docs/tgl/scheme.tlo b/protocols/Telegram/docs/tgl/scheme.tlo
deleted file mode 100644
index 02d3ca415e..0000000000
--- a/protocols/Telegram/docs/tgl/scheme.tlo
+++ /dev/null
Binary files differ
diff --git a/protocols/Telegram/docs/tgl/scheme12.tl b/protocols/Telegram/docs/tgl/scheme12.tl
deleted file mode 100644
index 7d37a6fdc5..0000000000
--- a/protocols/Telegram/docs/tgl/scheme12.tl
+++ /dev/null
@@ -1,505 +0,0 @@
-int ?= Int;
-long ?= Long;
-double ?= Double;
-string ?= String;
-
-bytes string = Bytes;
-
-boolFalse#bc799737 = Bool;
-boolTrue#997275b5 = Bool;
-
-vector#1cb5c415 {t:Type} # [ t ] = Vector t;
-
-error#c4b9f9bb code:int text:string = Error;
-
-null#56730bcc = Null;
-
-inputPeerEmpty#7f3b18ea = InputPeer;
-inputPeerSelf#7da07ec9 = InputPeer;
-inputPeerContact#1023dbe8 user_id:int = InputPeer;
-inputPeerForeign#9b447325 user_id:int access_hash:long = InputPeer;
-inputPeerChat#179be863 chat_id:int = InputPeer;
-
-inputUserEmpty#b98886cf = InputUser;
-inputUserSelf#f7c1b13f = InputUser;
-inputUserContact#86e94f65 user_id:int = InputUser;
-inputUserForeign#655e74ff user_id:int access_hash:long = InputUser;
-
-inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact;
-
-inputFile#f52ff27f id:long parts:int name:string md5_checksum:string = InputFile;
-
-inputMediaEmpty#9664f57f = InputMedia;
-inputMediaUploadedPhoto#2dc53a7d file:InputFile = InputMedia;
-inputMediaPhoto#8f2ab2ec id:InputPhoto = InputMedia;
-inputMediaGeoPoint#f9c44144 geo_point:InputGeoPoint = InputMedia;
-inputMediaContact#a6e45987 phone_number:string first_name:string last_name:string = InputMedia;
-inputMediaUploadedVideo#4847d92a file:InputFile duration:int w:int h:int = InputMedia;
-inputMediaUploadedThumbVideo#e628a145 file:InputFile thumb:InputFile duration:int w:int h:int = InputMedia;
-inputMediaVideo#7f023ae6 id:InputVideo = InputMedia;
-
-inputChatPhotoEmpty#1ca48f57 = InputChatPhoto;
-inputChatUploadedPhoto#94254732 file:InputFile crop:InputPhotoCrop = InputChatPhoto;
-inputChatPhoto#b2e1bf08 id:InputPhoto crop:InputPhotoCrop = InputChatPhoto;
-
-inputGeoPointEmpty#e4c123d6 = InputGeoPoint;
-inputGeoPoint#f3b7acc9 lat:double long:double = InputGeoPoint;
-
-inputPhotoEmpty#1cd7bf0d = InputPhoto;
-inputPhoto#fb95c6c4 id:long access_hash:long = InputPhoto;
-
-inputVideoEmpty#5508ec75 = InputVideo;
-inputVideo#ee579652 id:long access_hash:long = InputVideo;
-
-inputFileLocation#14637196 volume_id:long local_id:int secret:long = InputFileLocation;
-inputVideoFileLocation#3d0364ec id:long access_hash:long = InputFileLocation;
-
-inputPhotoCropAuto#ade6b004 = InputPhotoCrop;
-inputPhotoCrop#d9915325 crop_left:double crop_top:double crop_width:double = InputPhotoCrop;
-
-inputAppEvent#770656a8 time:double type:string peer:long data:string = InputAppEvent;
-
-peerUser#9db1bc6d user_id:int = Peer;
-peerChat#bad0e5bb chat_id:int = Peer;
-
-storage.fileUnknown#aa963b05 = storage.FileType;
-storage.fileJpeg#7efe0e = storage.FileType;
-storage.fileGif#cae1aadf = storage.FileType;
-storage.filePng#a4f63c0 = storage.FileType;
-storage.filePdf#ae1e508d = storage.FileType;
-storage.fileMp3#528a0677 = storage.FileType;
-storage.fileMov#4b09ebbc = storage.FileType;
-storage.filePartial#40bc6f52 = storage.FileType;
-storage.fileMp4#b3cea0e4 = storage.FileType;
-storage.fileWebp#1081464c = storage.FileType;
-
-fileLocationUnavailable#7c596b46 volume_id:long local_id:int secret:long = FileLocation;
-fileLocation#53d69076 dc_id:int volume_id:long local_id:int secret:long = FileLocation;
-
-userEmpty#200250ba id:int = User;
-userSelf#720535ec id:int first_name:string last_name:string phone:string photo:UserProfilePhoto status:UserStatus inactive:Bool = User;
-userContact#f2fb8319 id:int first_name:string last_name:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userRequest#22e8ceb0 id:int first_name:string last_name:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userForeign#5214c89d id:int first_name:string last_name:string access_hash:long photo:UserProfilePhoto status:UserStatus = User;
-userDeleted#b29ad7cc id:int first_name:string last_name:string = User;
-
-userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
-userProfilePhoto#d559d8c8 photo_id:long photo_small:FileLocation photo_big:FileLocation = UserProfilePhoto;
-
-userStatusEmpty#9d05049 = UserStatus;
-userStatusOnline#edb93949 expires:int = UserStatus;
-userStatusOffline#8c703f was_online:int = UserStatus;
-
-chatEmpty#9ba2d800 id:int = Chat;
-chat#6e9c9bc7 id:int title:string photo:ChatPhoto participants_count:int date:int left:Bool version:int = Chat;
-chatForbidden#fb0ccc41 id:int title:string date:int = Chat;
-
-chatFull#630e61be id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings = ChatFull;
-
-chatParticipant#c8d7493e user_id:int inviter_id:int date:int = ChatParticipant;
-
-chatParticipantsForbidden#fd2bb8a chat_id:int = ChatParticipants;
-chatParticipants#7841b415 chat_id:int admin_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
-
-chatPhotoEmpty#37c1011c = ChatPhoto;
-chatPhoto#6153276a photo_small:FileLocation photo_big:FileLocation = ChatPhoto;
-
-messageEmpty#83e5de54 id:int = Message;
-message#22eb6aba id:int from_id:int to_id:Peer out:Bool unread:Bool date:int message:string media:MessageMedia = Message;
-messageForwarded#5f46804 id:int fwd_from_id:int fwd_date:int from_id:int to_id:Peer out:Bool unread:Bool date:int message:string media:MessageMedia = Message;
-messageService#9f8d60bb id:int from_id:int to_id:Peer out:Bool unread:Bool date:int action:MessageAction = Message;
-
-messageMediaEmpty#3ded6320 = MessageMedia;
-messageMediaPhoto#c8c45a2a photo:Photo = MessageMedia;
-messageMediaVideo#a2d24290 video:Video = MessageMedia;
-messageMediaGeo#56e0d474 geo:GeoPoint = MessageMedia;
-messageMediaContact#5e7d2f39 phone_number:string first_name:string last_name:string user_id:int = MessageMedia;
-messageMediaUnsupported#29632a36 bytes:bytes = MessageMedia;
-
-messageActionEmpty#b6aef7b0 = MessageAction;
-messageActionChatCreate#a6638b9a title:string users:Vector<int> = MessageAction;
-messageActionChatEditTitle#b5a1ce5a title:string = MessageAction;
-messageActionChatEditPhoto#7fcb13a8 photo:Photo = MessageAction;
-messageActionChatDeletePhoto#95e3fbef = MessageAction;
-messageActionChatAddUser#5e3cfc4b user_id:int = MessageAction;
-messageActionChatDeleteUser#b2ae9b0c user_id:int = MessageAction;
-
-dialog#214a8cdf peer:Peer top_message:int unread_count:int = Dialog;
-
-photoEmpty#2331b22d id:long = Photo;
-photo#22b56751 id:long access_hash:long user_id:int date:int caption:string geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-
-photoSizeEmpty#e17e23c type:string = PhotoSize;
-photoSize#77bfb61b type:string location:FileLocation w:int h:int size:int = PhotoSize;
-photoCachedSize#e9a734fa type:string location:FileLocation w:int h:int bytes:bytes = PhotoSize;
-
-videoEmpty#c10658a8 id:long = Video;
-video#5a04a49f id:long access_hash:long user_id:int date:int caption:string duration:int size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-
-geoPointEmpty#1117dd5f = GeoPoint;
-geoPoint#2049d70c long:double lat:double = GeoPoint;
-
-auth.checkedPhone#e300cc3b phone_registered:Bool phone_invited:Bool = auth.CheckedPhone;
-
-auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-auth.authorization#f6b673a4 expires:int user:User = auth.Authorization;
-
-auth.exportedAuthorization#df969c2d id:int bytes:bytes = auth.ExportedAuthorization;
-
-inputNotifyPeer#b8bc5b0c peer:InputPeer = InputNotifyPeer;
-inputNotifyUsers#193b4417 = InputNotifyPeer;
-inputNotifyChats#4a95e84e = InputNotifyPeer;
-inputNotifyAll#a429b886 = InputNotifyPeer;
-
-inputPeerNotifyEventsEmpty#f03064d8 = InputPeerNotifyEvents;
-inputPeerNotifyEventsAll#e86a2c74 = InputPeerNotifyEvents;
-
-inputPeerNotifySettings#46a2ce98 mute_until:int sound:string show_previews:Bool events_mask:int = InputPeerNotifySettings;
-
-peerNotifyEventsEmpty#add53cb3 = PeerNotifyEvents;
-peerNotifyEventsAll#6d1ded88 = PeerNotifyEvents;
-
-peerNotifySettingsEmpty#70a68512 = PeerNotifySettings;
-peerNotifySettings#8d5e11ee mute_until:int sound:string show_previews:Bool events_mask:int = PeerNotifySettings;
-
-wallPaper#ccb03657 id:int title:string sizes:Vector<PhotoSize> color:int = WallPaper;
-
-userFull#771095da user:User link:contacts.Link profile_photo:Photo notify_settings:PeerNotifySettings blocked:Bool real_first_name:string real_last_name:string = UserFull;
-
-contact#f911c994 user_id:int mutual:Bool = Contact;
-
-importedContact#d0028438 user_id:int client_id:long = ImportedContact;
-
-contactBlocked#561bc879 user_id:int date:int = ContactBlocked;
-
-contactFound#ea879f95 user_id:int = ContactFound;
-
-contactSuggested#3de191a1 user_id:int mutual_contacts:int = ContactSuggested;
-
-contactStatus#aa77b873 user_id:int expires:int = ContactStatus;
-
-chatLocated#3631cf4c chat_id:int distance:int = ChatLocated;
-
-contacts.foreignLinkUnknown#133421f8 = contacts.ForeignLink;
-contacts.foreignLinkRequested#a7801f47 has_phone:Bool = contacts.ForeignLink;
-contacts.foreignLinkMutual#1bea8ce1 = contacts.ForeignLink;
-
-contacts.myLinkEmpty#d22a1c60 = contacts.MyLink;
-contacts.myLinkRequested#6c69efee contact:Bool = contacts.MyLink;
-contacts.myLinkContact#c240ebd9 = contacts.MyLink;
-
-contacts.link#eccea3f5 my_link:contacts.MyLink foreign_link:contacts.ForeignLink user:User = contacts.Link;
-
-contacts.contacts#6f8b8cb2 contacts:Vector<Contact> users:Vector<User> = contacts.Contacts;
-contacts.contactsNotModified#b74ba9d2 = contacts.Contacts;
-
-contacts.importedContacts#d1cd0a4c imported:Vector<ImportedContact> users:Vector<User> = contacts.ImportedContacts;
-
-contacts.blocked#1c138d15 blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-contacts.blockedSlice#900802a1 count:int blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-
-contacts.found#566000e results:Vector<ContactFound> users:Vector<User> = contacts.Found;
-
-contacts.suggested#5649dcc5 results:Vector<ContactSuggested> users:Vector<User> = contacts.Suggested;
-
-messages.dialogs#15ba6c40 dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-messages.dialogsSlice#71e094f3 count:int dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-
-messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-messages.messagesSlice#b446ae3 count:int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-
-messages.messageEmpty#3f4e0648 = messages.Message;
-messages.message#ff90c417 message:Message chats:Vector<Chat> users:Vector<User> = messages.Message;
-
-messages.statedMessages#969478bb messages:Vector<Message> chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessage#d07ae726 message:Message chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessage#d1f4d35c id:int date:int pts:int seq:int = messages.SentMessage;
-
-messages.chat#40e9002a chat:Chat users:Vector<User> = messages.Chat;
-
-messages.chats#8150cbd8 chats:Vector<Chat> users:Vector<User> = messages.Chats;
-
-messages.chatFull#e5d7d19c full_chat:ChatFull chats:Vector<Chat> users:Vector<User> = messages.ChatFull;
-
-messages.affectedHistory#b7de36f2 pts:int seq:int offset:int = messages.AffectedHistory;
-
-inputMessagesFilterEmpty#57e2f66c = MessagesFilter;
-inputMessagesFilterPhotos#9609a51c = MessagesFilter;
-inputMessagesFilterVideo#9fc00e65 = MessagesFilter;
-inputMessagesFilterPhotoVideo#56e9f0e4 = MessagesFilter;
-inputMessagesFilterDocument#9eddf188 = MessagesFilter;
-inputMessagesFilterAudio#cfc87522 = MessagesFilter;
-
-updateNewMessage#13abdb3 message:Message pts:int = Update;
-updateMessageID#4e90bfd6 id:int random_id:long = Update;
-updateReadMessages#c6649e31 messages:Vector<int> pts:int = Update;
-updateDeleteMessages#a92bfe26 messages:Vector<int> pts:int = Update;
-updateRestoreMessages#d15de04d messages:Vector<int> pts:int = Update;
-updateUserTyping#6baa8508 user_id:int = Update;
-updateChatUserTyping#3c46cfe6 chat_id:int user_id:int = Update;
-updateChatParticipants#7761198 participants:ChatParticipants = Update;
-updateUserStatus#1bfbd823 user_id:int status:UserStatus = Update;
-updateUserName#da22d9ad user_id:int first_name:string last_name:string = Update;
-updateUserPhoto#95313b0c user_id:int date:int photo:UserProfilePhoto previous:Bool = Update;
-updateContactRegistered#2575bbb9 user_id:int date:int = Update;
-updateContactLink#51a48a9a user_id:int my_link:contacts.MyLink foreign_link:contacts.ForeignLink = Update;
-updateActivation#6f690963 user_id:int = Update;
-updateNewAuthorization#8f06529a auth_key_id:long date:int device:string location:string = Update;
-
-updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
-
-updates.differenceEmpty#5d75a138 date:int seq:int = updates.Difference;
-updates.difference#f49ca0 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> state:updates.State = updates.Difference;
-updates.differenceSlice#a8fb1981 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> intermediate_state:updates.State = updates.Difference;
-
-updatesTooLong#e317af7e = Updates;
-updateShortMessage#d3f45784 id:int from_id:int message:string pts:int date:int seq:int = Updates;
-updateShortChatMessage#2b2fbd4e id:int from_id:int chat_id:int message:string pts:int date:int seq:int = Updates;
-updateShort#78d4dec1 update:Update date:int = Updates;
-updatesCombined#725b04c3 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq_start:int seq:int = Updates;
-updates#74ae4240 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq:int = Updates;
-
-photos.photos#8dca6aa5 photos:Vector<Photo> users:Vector<User> = photos.Photos;
-photos.photosSlice#15051f54 count:int photos:Vector<Photo> users:Vector<User> = photos.Photos;
-
-photos.photo#20212ca8 photo:Photo users:Vector<User> = photos.Photo;
-
-upload.file#96a18d5 type:storage.FileType mtime:int bytes:bytes = upload.File;
-
-dcOption#2ec2a43c id:int hostname:string ip_address:string port:int = DcOption;
-
-config#2e54dd74 date:int test_mode:Bool this_dc:int dc_options:Vector<DcOption> chat_size_max:int broadcast_size_max:int = Config;
-
-nearestDc#8e1a1775 country:string this_dc:int nearest_dc:int = NearestDc;
-
-help.appUpdate#8987f311 id:int critical:Bool url:string text:string = help.AppUpdate;
-help.noAppUpdate#c45a6536 = help.AppUpdate;
-
-help.inviteText#18cb9f78 message:string = help.InviteText;
-
-messages.statedMessagesLinks#3e74f5c6 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessageLink#a9af2881 message:Message chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessageLink#e9db4a3f id:int date:int pts:int seq:int links:Vector<contacts.Link> = messages.SentMessage;
-
-inputGeoChat#74d456fa chat_id:int access_hash:long = InputGeoChat;
-
-inputNotifyGeoChatPeer#4d8ddec8 peer:InputGeoChat = InputNotifyPeer;
-
-geoChat#75eaea5a id:int access_hash:long title:string address:string venue:string geo:GeoPoint photo:ChatPhoto participants_count:int date:int checked_in:Bool version:int = Chat;
-
-geoChatMessageEmpty#60311a9b chat_id:int id:int = GeoChatMessage;
-geoChatMessage#4505f8e1 chat_id:int id:int from_id:int date:int message:string media:MessageMedia = GeoChatMessage;
-geoChatMessageService#d34fa24e chat_id:int id:int from_id:int date:int action:MessageAction = GeoChatMessage;
-
-geochats.statedMessage#17b1578b message:GeoChatMessage chats:Vector<Chat> users:Vector<User> seq:int = geochats.StatedMessage;
-
-geochats.located#48feb267 results:Vector<ChatLocated> messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Located;
-
-geochats.messages#d1526db1 messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-geochats.messagesSlice#bc5863e8 count:int messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-
-messageActionGeoChatCreate#6f038ebc title:string address:string = MessageAction;
-messageActionGeoChatCheckin#c7d53de = MessageAction;
-
-updateNewGeoChatMessage#5a68e3f7 message:GeoChatMessage = Update;
-
-wallPaperSolid#63117f24 id:int title:string bg_color:int color:int = WallPaper;
-
-updateNewEncryptedMessage#12bcbd9a message:EncryptedMessage qts:int = Update;
-updateEncryptedChatTyping#1710f156 chat_id:int = Update;
-updateEncryption#b4a2e88d chat:EncryptedChat date:int = Update;
-updateEncryptedMessagesRead#38fe25b7 chat_id:int max_date:int date:int = Update;
-
-encryptedChatEmpty#ab7ec0a0 id:int = EncryptedChat;
-encryptedChatWaiting#3bf703dc id:int access_hash:long date:int admin_id:int participant_id:int = EncryptedChat;
-encryptedChatRequested#c878527e id:int access_hash:long date:int admin_id:int participant_id:int g_a:bytes = EncryptedChat;
-encryptedChat#fa56ce36 id:int access_hash:long date:int admin_id:int participant_id:int g_a_or_b:bytes key_fingerprint:long = EncryptedChat;
-encryptedChatDiscarded#13d6dd27 id:int = EncryptedChat;
-
-inputEncryptedChat#f141b5e1 chat_id:int access_hash:long = InputEncryptedChat;
-
-encryptedFileEmpty#c21f497e = EncryptedFile;
-encryptedFile#4a70994c id:long access_hash:long size:int dc_id:int key_fingerprint:int = EncryptedFile;
-
-inputEncryptedFileEmpty#1837c364 = InputEncryptedFile;
-inputEncryptedFileUploaded#64bd0306 id:long parts:int md5_checksum:string key_fingerprint:int = InputEncryptedFile;
-inputEncryptedFile#5a17b5e5 id:long access_hash:long = InputEncryptedFile;
-
-inputEncryptedFileLocation#f5235d55 id:long access_hash:long = InputFileLocation;
-
-encryptedMessage#ed18c118 random_id:long chat_id:int date:int bytes:bytes file:EncryptedFile = EncryptedMessage;
-encryptedMessageService#23734b06 random_id:long chat_id:int date:int bytes:bytes = EncryptedMessage;
-
-decryptedMessageLayer#99a438cf layer:int message:DecryptedMessage = DecryptedMessageLayer;
-
-decryptedMessage#1f814f1f random_id:long random_bytes:bytes message:string media:DecryptedMessageMedia = DecryptedMessage;
-decryptedMessageService#aa48327d random_id:long random_bytes:bytes action:DecryptedMessageAction = DecryptedMessage;
-
-decryptedMessageMediaEmpty#89f5c4a = DecryptedMessageMedia;
-decryptedMessageMediaPhoto#32798a8c thumb:bytes thumb_w:int thumb_h:int w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaVideo#4cee6ef3 thumb:bytes thumb_w:int thumb_h:int duration:int w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaGeoPoint#35480a59 lat:double long:double = DecryptedMessageMedia;
-decryptedMessageMediaContact#588a0a97 phone_number:string first_name:string last_name:string user_id:int = DecryptedMessageMedia;
-
-decryptedMessageActionSetMessageTTL#a1733aec ttl_seconds:int = DecryptedMessageAction;
-
-messages.dhConfigNotModified#c0e24635 random:bytes = messages.DhConfig;
-messages.dhConfig#2c221edd g:int p:bytes version:int random:bytes = messages.DhConfig;
-
-messages.sentEncryptedMessage#560f8935 date:int = messages.SentEncryptedMessage;
-messages.sentEncryptedFile#9493ff32 date:int file:EncryptedFile = messages.SentEncryptedMessage;
-
-inputFileBig#fa4f0bb5 id:long parts:int name:string = InputFile;
-
-inputEncryptedFileBigUploaded#2dc173c8 id:long parts:int key_fingerprint:int = InputEncryptedFile;
-
-updateChatParticipantAdd#3a0eeb22 chat_id:int user_id:int inviter_id:int version:int = Update;
-updateChatParticipantDelete#6e5f8c22 chat_id:int user_id:int version:int = Update;
-updateDcOptions#8e5e9873 dc_options:Vector<DcOption> = Update;
-
-inputMediaUploadedAudio#61a6d436 file:InputFile duration:int = InputMedia;
-inputMediaAudio#89938781 id:InputAudio = InputMedia;
-inputMediaUploadedDocument#34e794bd file:InputFile file_name:string mime_type:string = InputMedia;
-inputMediaUploadedThumbDocument#3e46de5d file:InputFile thumb:InputFile file_name:string mime_type:string = InputMedia;
-inputMediaDocument#d184e841 id:InputDocument = InputMedia;
-
-messageMediaDocument#2fda2204 document:Document = MessageMedia;
-messageMediaAudio#c6b68300 audio:Audio = MessageMedia;
-
-inputAudioEmpty#d95adc84 = InputAudio;
-inputAudio#77d440ff id:long access_hash:long = InputAudio;
-
-inputDocumentEmpty#72f0eaae = InputDocument;
-inputDocument#18798952 id:long access_hash:long = InputDocument;
-
-inputAudioFileLocation#74dc404d id:long access_hash:long = InputFileLocation;
-inputDocumentFileLocation#4e45abe9 id:long access_hash:long = InputFileLocation;
-
-decryptedMessageMediaDocument#b095434b thumb:bytes thumb_w:int thumb_h:int file_name:string mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaAudio#6080758f duration:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-
-audioEmpty#586988d8 id:long = Audio;
-audio#427425e7 id:long access_hash:long user_id:int date:int duration:int size:int dc_id:int = Audio;
-
-documentEmpty#36f8c871 id:long = Document;
-document#9efc6326 id:long access_hash:long user_id:int date:int file_name:string mime_type:string size:int thumb:PhotoSize dc_id:int = Document;
-
-help.support#17c6b5f6 phone_number:string user:User = help.Support;
-
----functions---
-
-invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
-
-invokeAfterMsgs#3dc4b4f0 {X:Type} msg_ids:Vector<long> query:!X = X;
-
-auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone;
-auth.sendCode#768d5f4d phone_number:string sms_type:int api_id:int api_hash:string lang_code:string = auth.SentCode;
-auth.sendCall#3c51564 phone_number:string phone_code_hash:string = Bool;
-auth.signUp#1b067634 phone_number:string phone_code_hash:string phone_code:string first_name:string last_name:string = auth.Authorization;
-auth.signIn#bcd51581 phone_number:string phone_code_hash:string phone_code:string = auth.Authorization;
-auth.logOut#5717da40 = Bool;
-auth.resetAuthorizations#9fab0d1a = Bool;
-auth.sendInvites#771c1d97 phone_numbers:Vector<string> message:string = Bool;
-auth.exportAuthorization#e5bfffcd dc_id:int = auth.ExportedAuthorization;
-auth.importAuthorization#e3ef9613 id:int bytes:bytes = auth.Authorization;
-
-account.registerDevice#446c712c token_type:int token:string device_model:string system_version:string app_version:string app_sandbox:Bool lang_code:string = Bool;
-account.unregisterDevice#65c55b40 token_type:int token:string = Bool;
-account.updateNotifySettings#84be5b93 peer:InputNotifyPeer settings:InputPeerNotifySettings = Bool;
-account.getNotifySettings#12b3ad31 peer:InputNotifyPeer = PeerNotifySettings;
-account.resetNotifySettings#db7e1747 = Bool;
-account.updateProfile#f0888d68 first_name:string last_name:string = User;
-account.updateStatus#6628562c offline:Bool = Bool;
-account.getWallPapers#c04cfac2 = Vector<WallPaper>;
-
-users.getUsers#d91a548 id:Vector<InputUser> = Vector<User>;
-users.getFullUser#ca30a5b1 id:InputUser = UserFull;
-
-contacts.getStatuses#c4a353ee = Vector<ContactStatus>;
-contacts.getContacts#22c6aa08 hash:string = contacts.Contacts;
-contacts.importContacts#da30b32d contacts:Vector<InputContact> replace:Bool = contacts.ImportedContacts;
-contacts.search#11f812d8 q:string limit:int = contacts.Found;
-contacts.getSuggested#cd773428 limit:int = contacts.Suggested;
-contacts.deleteContact#8e953744 id:InputUser = contacts.Link;
-contacts.deleteContacts#59ab389e id:Vector<InputUser> = Bool;
-contacts.block#332b49fc id:InputUser = Bool;
-contacts.unblock#e54100bd id:InputUser = Bool;
-contacts.getBlocked#f57c350f offset:int limit:int = contacts.Blocked;
-
-messages.getMessages#4222fa74 id:Vector<int> = messages.Messages;
-messages.getDialogs#eccf1df6 offset:int max_id:int limit:int = messages.Dialogs;
-messages.getHistory#92a1df2f peer:InputPeer offset:int max_id:int limit:int = messages.Messages;
-messages.search#7e9f2ab peer:InputPeer q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = messages.Messages;
-messages.readHistory#b04f2510 peer:InputPeer max_id:int offset:int = messages.AffectedHistory;
-messages.deleteHistory#f4f8fb61 peer:InputPeer offset:int = messages.AffectedHistory;
-messages.deleteMessages#14f2dd0a id:Vector<int> = Vector<int>;
-messages.restoreMessages#395f9d7e id:Vector<int> = Vector<int>;
-messages.receivedMessages#28abcb68 max_id:int = Vector<int>;
-messages.setTyping#719839e9 peer:InputPeer typing:Bool = Bool;
-messages.sendMessage#4cde0aab peer:InputPeer message:string random_id:long = messages.SentMessage;
-messages.sendMedia#a3c85d76 peer:InputPeer media:InputMedia random_id:long = messages.StatedMessage;
-messages.forwardMessages#514cd10f peer:InputPeer id:Vector<int> = messages.StatedMessages;
-messages.getChats#3c6aa187 id:Vector<int> = messages.Chats;
-messages.getFullChat#3b831c66 chat_id:int = messages.ChatFull;
-messages.editChatTitle#b4bc68b5 chat_id:int title:string = messages.StatedMessage;
-messages.editChatPhoto#d881821d chat_id:int photo:InputChatPhoto = messages.StatedMessage;
-messages.addChatUser#2ee9ee9e chat_id:int user_id:InputUser fwd_limit:int = messages.StatedMessage;
-messages.deleteChatUser#c3c5cd23 chat_id:int user_id:InputUser = messages.StatedMessage;
-messages.createChat#419d9aee users:Vector<InputUser> title:string = messages.StatedMessage;
-
-updates.getState#edd4882a = updates.State;
-updates.getDifference#a041495 pts:int date:int qts:int = updates.Difference;
-
-photos.updateProfilePhoto#eef579a0 id:InputPhoto crop:InputPhotoCrop = UserProfilePhoto;
-photos.uploadProfilePhoto#d50f9c88 file:InputFile caption:string geo_point:InputGeoPoint crop:InputPhotoCrop = photos.Photo;
-
-upload.saveFilePart#b304a621 file_id:long file_part:int bytes:bytes = Bool;
-upload.getFile#e3a6cfb5 location:InputFileLocation offset:int limit:int = upload.File;
-
-help.getConfig#c4f9186b = Config;
-help.getNearestDc#1fb33026 = NearestDc;
-help.getAppUpdate#c812ac7e device_model:string system_version:string app_version:string lang_code:string = help.AppUpdate;
-help.saveAppLog#6f02f748 events:Vector<InputAppEvent> = Bool;
-help.getInviteText#a4a95186 lang_code:string = help.InviteText;
-
-photos.getUserPhotos#b7ee553c user_id:InputUser offset:int max_id:int limit:int = photos.Photos;
-
-messages.forwardMessage#3f3f4f2 peer:InputPeer id:int random_id:long = messages.StatedMessage;
-messages.sendBroadcast#41bb0972 contacts:Vector<InputUser> message:string media:InputMedia = messages.StatedMessages;
-
-geochats.getLocated#7f192d8f geo_point:InputGeoPoint radius:int limit:int = geochats.Located;
-geochats.getRecents#e1427e6f offset:int limit:int = geochats.Messages;
-geochats.checkin#55b3e8fb peer:InputGeoChat = geochats.StatedMessage;
-geochats.getFullChat#6722dd6f peer:InputGeoChat = messages.ChatFull;
-geochats.editChatTitle#4c8e2273 peer:InputGeoChat title:string address:string = geochats.StatedMessage;
-geochats.editChatPhoto#35d81a95 peer:InputGeoChat photo:InputChatPhoto = geochats.StatedMessage;
-geochats.search#cfcdc44d peer:InputGeoChat q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = geochats.Messages;
-geochats.getHistory#b53f7a68 peer:InputGeoChat offset:int max_id:int limit:int = geochats.Messages;
-geochats.setTyping#8b8a729 peer:InputGeoChat typing:Bool = Bool;
-geochats.sendMessage#61b0044 peer:InputGeoChat message:string random_id:long = geochats.StatedMessage;
-geochats.sendMedia#b8f0deff peer:InputGeoChat media:InputMedia random_id:long = geochats.StatedMessage;
-geochats.createGeoChat#e092e16 title:string geo_point:InputGeoPoint address:string venue:string = geochats.StatedMessage;
-
-messages.getDhConfig#26cf8950 version:int random_length:int = messages.DhConfig;
-messages.requestEncryption#f64daf43 user_id:InputUser random_id:int g_a:bytes = EncryptedChat;
-messages.acceptEncryption#3dbc0415 peer:InputEncryptedChat g_b:bytes key_fingerprint:long = EncryptedChat;
-messages.discardEncryption#edd923c5 chat_id:int = Bool;
-messages.setEncryptedTyping#791451ed peer:InputEncryptedChat typing:Bool = Bool;
-messages.readEncryptedHistory#7f4b690a peer:InputEncryptedChat max_date:int = Bool;
-messages.sendEncrypted#a9776773 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.sendEncryptedFile#9a901b66 peer:InputEncryptedChat random_id:long data:bytes file:InputEncryptedFile = messages.SentEncryptedMessage;
-messages.sendEncryptedService#32d439a4 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.receivedQueue#55a5bb66 max_qts:int = Vector<long>;
-
-upload.saveBigFilePart#de7b673d file_id:long file_part:int file_total_parts:int bytes:bytes = Bool;
-
-initConnection#69796de9 {X:Type} api_id:int device_model:string system_version:string app_version:string lang_code:string query:!X = X;
-
-help.getSupport#9cdf08cd = help.Support;
-
-invokeWithLayer12#dda60d3c {X:Type} query:!X = X;
diff --git a/protocols/Telegram/docs/tgl/scheme15.tl b/protocols/Telegram/docs/tgl/scheme15.tl
deleted file mode 100644
index 4e18fad21b..0000000000
--- a/protocols/Telegram/docs/tgl/scheme15.tl
+++ /dev/null
@@ -1,522 +0,0 @@
-int ?= Int;
-long ?= Long;
-double ?= Double;
-string ?= String;
-
-bytes string = Bytes;
-
-boolFalse#bc799737 = Bool;
-boolTrue#997275b5 = Bool;
-
-vector#1cb5c415 {t:Type} # [ t ] = Vector t;
-
-error#c4b9f9bb code:int text:string = Error;
-
-null#56730bcc = Null;
-
-inputPeerEmpty#7f3b18ea = InputPeer;
-inputPeerSelf#7da07ec9 = InputPeer;
-inputPeerContact#1023dbe8 user_id:int = InputPeer;
-inputPeerForeign#9b447325 user_id:int access_hash:long = InputPeer;
-inputPeerChat#179be863 chat_id:int = InputPeer;
-
-inputUserEmpty#b98886cf = InputUser;
-inputUserSelf#f7c1b13f = InputUser;
-inputUserContact#86e94f65 user_id:int = InputUser;
-inputUserForeign#655e74ff user_id:int access_hash:long = InputUser;
-
-inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact;
-
-inputFile#f52ff27f id:long parts:int name:string md5_checksum:string = InputFile;
-
-inputMediaEmpty#9664f57f = InputMedia;
-inputMediaUploadedPhoto#2dc53a7d file:InputFile = InputMedia;
-inputMediaPhoto#8f2ab2ec id:InputPhoto = InputMedia;
-inputMediaGeoPoint#f9c44144 geo_point:InputGeoPoint = InputMedia;
-inputMediaContact#a6e45987 phone_number:string first_name:string last_name:string = InputMedia;
-inputMediaUploadedVideo#133ad6f6 file:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaUploadedThumbVideo#9912dabf file:InputFile thumb:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaVideo#7f023ae6 id:InputVideo = InputMedia;
-
-inputChatPhotoEmpty#1ca48f57 = InputChatPhoto;
-inputChatUploadedPhoto#94254732 file:InputFile crop:InputPhotoCrop = InputChatPhoto;
-inputChatPhoto#b2e1bf08 id:InputPhoto crop:InputPhotoCrop = InputChatPhoto;
-
-inputGeoPointEmpty#e4c123d6 = InputGeoPoint;
-inputGeoPoint#f3b7acc9 lat:double long:double = InputGeoPoint;
-
-inputPhotoEmpty#1cd7bf0d = InputPhoto;
-inputPhoto#fb95c6c4 id:long access_hash:long = InputPhoto;
-
-inputVideoEmpty#5508ec75 = InputVideo;
-inputVideo#ee579652 id:long access_hash:long = InputVideo;
-
-inputFileLocation#14637196 volume_id:long local_id:int secret:long = InputFileLocation;
-inputVideoFileLocation#3d0364ec id:long access_hash:long = InputFileLocation;
-
-inputPhotoCropAuto#ade6b004 = InputPhotoCrop;
-inputPhotoCrop#d9915325 crop_left:double crop_top:double crop_width:double = InputPhotoCrop;
-
-inputAppEvent#770656a8 time:double type:string peer:long data:string = InputAppEvent;
-
-peerUser#9db1bc6d user_id:int = Peer;
-peerChat#bad0e5bb chat_id:int = Peer;
-
-storage.fileUnknown#aa963b05 = storage.FileType;
-storage.fileJpeg#007efe0e = storage.FileType;
-storage.fileGif#cae1aadf = storage.FileType;
-storage.filePng#0a4f63c0 = storage.FileType;
-storage.filePdf#ae1e508d = storage.FileType;
-storage.fileMp3#528a0677 = storage.FileType;
-storage.fileMov#4b09ebbc = storage.FileType;
-storage.filePartial#40bc6f52 = storage.FileType;
-storage.fileMp4#b3cea0e4 = storage.FileType;
-storage.fileWebp#1081464c = storage.FileType;
-
-fileLocationUnavailable#7c596b46 volume_id:long local_id:int secret:long = FileLocation;
-fileLocation#53d69076 dc_id:int volume_id:long local_id:int secret:long = FileLocation;
-
-userEmpty#200250ba id:int = User;
-userSelf#720535ec id:int first_name:string last_name:string phone:string photo:UserProfilePhoto status:UserStatus inactive:Bool = User;
-userContact#f2fb8319 id:int first_name:string last_name:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userRequest#22e8ceb0 id:int first_name:string last_name:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userForeign#5214c89d id:int first_name:string last_name:string access_hash:long photo:UserProfilePhoto status:UserStatus = User;
-userDeleted#b29ad7cc id:int first_name:string last_name:string = User;
-
-userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
-userProfilePhoto#d559d8c8 photo_id:long photo_small:FileLocation photo_big:FileLocation = UserProfilePhoto;
-
-userStatusEmpty#09d05049 = UserStatus;
-userStatusOnline#edb93949 expires:int = UserStatus;
-userStatusOffline#008c703f was_online:int = UserStatus;
-
-chatEmpty#9ba2d800 id:int = Chat;
-chat#6e9c9bc7 id:int title:string photo:ChatPhoto participants_count:int date:int left:Bool version:int = Chat;
-chatForbidden#fb0ccc41 id:int title:string date:int = Chat;
-
-chatFull#630e61be id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings = ChatFull;
-
-chatParticipant#c8d7493e user_id:int inviter_id:int date:int = ChatParticipant;
-
-chatParticipantsForbidden#0fd2bb8a chat_id:int = ChatParticipants;
-chatParticipants#7841b415 chat_id:int admin_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
-
-chatPhotoEmpty#37c1011c = ChatPhoto;
-chatPhoto#6153276a photo_small:FileLocation photo_big:FileLocation = ChatPhoto;
-
-messageEmpty#83e5de54 id:int = Message;
-message#22eb6aba id:int from_id:int to_id:Peer out:Bool unread:Bool date:int message:string media:MessageMedia = Message;
-messageForwarded#05f46804 id:int fwd_from_id:int fwd_date:int from_id:int to_id:Peer out:Bool unread:Bool date:int message:string media:MessageMedia = Message;
-messageService#9f8d60bb id:int from_id:int to_id:Peer out:Bool unread:Bool date:int action:MessageAction = Message;
-
-messageMediaEmpty#3ded6320 = MessageMedia;
-messageMediaPhoto#c8c45a2a photo:Photo = MessageMedia;
-messageMediaVideo#a2d24290 video:Video = MessageMedia;
-messageMediaGeo#56e0d474 geo:GeoPoint = MessageMedia;
-messageMediaContact#5e7d2f39 phone_number:string first_name:string last_name:string user_id:int = MessageMedia;
-messageMediaUnsupported#29632a36 bytes:bytes = MessageMedia;
-
-messageActionEmpty#b6aef7b0 = MessageAction;
-messageActionChatCreate#a6638b9a title:string users:Vector<int> = MessageAction;
-messageActionChatEditTitle#b5a1ce5a title:string = MessageAction;
-messageActionChatEditPhoto#7fcb13a8 photo:Photo = MessageAction;
-messageActionChatDeletePhoto#95e3fbef = MessageAction;
-messageActionChatAddUser#5e3cfc4b user_id:int = MessageAction;
-messageActionChatDeleteUser#b2ae9b0c user_id:int = MessageAction;
-
-dialog#ab3a99ac peer:Peer top_message:int unread_count:int notify_settings:PeerNotifySettings = Dialog;
-
-photoEmpty#2331b22d id:long = Photo;
-photo#22b56751 id:long access_hash:long user_id:int date:int caption:string geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-
-photoSizeEmpty#0e17e23c type:string = PhotoSize;
-photoSize#77bfb61b type:string location:FileLocation w:int h:int size:int = PhotoSize;
-photoCachedSize#e9a734fa type:string location:FileLocation w:int h:int bytes:bytes = PhotoSize;
-
-videoEmpty#c10658a8 id:long = Video;
-video#388fa391 id:long access_hash:long user_id:int date:int caption:string duration:int mime_type:string size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-
-geoPointEmpty#1117dd5f = GeoPoint;
-geoPoint#2049d70c long:double lat:double = GeoPoint;
-
-auth.checkedPhone#e300cc3b phone_registered:Bool phone_invited:Bool = auth.CheckedPhone;
-
-auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-auth.authorization#f6b673a4 expires:int user:User = auth.Authorization;
-
-auth.exportedAuthorization#df969c2d id:int bytes:bytes = auth.ExportedAuthorization;
-
-inputNotifyPeer#b8bc5b0c peer:InputPeer = InputNotifyPeer;
-inputNotifyUsers#193b4417 = InputNotifyPeer;
-inputNotifyChats#4a95e84e = InputNotifyPeer;
-inputNotifyAll#a429b886 = InputNotifyPeer;
-
-inputPeerNotifyEventsEmpty#f03064d8 = InputPeerNotifyEvents;
-inputPeerNotifyEventsAll#e86a2c74 = InputPeerNotifyEvents;
-
-inputPeerNotifySettings#46a2ce98 mute_until:int sound:string show_previews:Bool events_mask:int = InputPeerNotifySettings;
-
-peerNotifyEventsEmpty#add53cb3 = PeerNotifyEvents;
-peerNotifyEventsAll#6d1ded88 = PeerNotifyEvents;
-
-peerNotifySettingsEmpty#70a68512 = PeerNotifySettings;
-peerNotifySettings#8d5e11ee mute_until:int sound:string show_previews:Bool events_mask:int = PeerNotifySettings;
-
-wallPaper#ccb03657 id:int title:string sizes:Vector<PhotoSize> color:int = WallPaper;
-
-userFull#771095da user:User link:contacts.Link profile_photo:Photo notify_settings:PeerNotifySettings blocked:Bool real_first_name:string real_last_name:string = UserFull;
-
-contact#f911c994 user_id:int mutual:Bool = Contact;
-
-importedContact#d0028438 user_id:int client_id:long = ImportedContact;
-
-contactBlocked#561bc879 user_id:int date:int = ContactBlocked;
-
-contactFound#ea879f95 user_id:int = ContactFound;
-
-contactSuggested#3de191a1 user_id:int mutual_contacts:int = ContactSuggested;
-
-contactStatus#aa77b873 user_id:int expires:int = ContactStatus;
-
-chatLocated#3631cf4c chat_id:int distance:int = ChatLocated;
-
-contacts.foreignLinkUnknown#133421f8 = contacts.ForeignLink;
-contacts.foreignLinkRequested#a7801f47 has_phone:Bool = contacts.ForeignLink;
-contacts.foreignLinkMutual#1bea8ce1 = contacts.ForeignLink;
-
-contacts.myLinkEmpty#d22a1c60 = contacts.MyLink;
-contacts.myLinkRequested#6c69efee contact:Bool = contacts.MyLink;
-contacts.myLinkContact#c240ebd9 = contacts.MyLink;
-
-contacts.link#eccea3f5 my_link:contacts.MyLink foreign_link:contacts.ForeignLink user:User = contacts.Link;
-
-contacts.contacts#6f8b8cb2 contacts:Vector<Contact> users:Vector<User> = contacts.Contacts;
-contacts.contactsNotModified#b74ba9d2 = contacts.Contacts;
-
-contacts.importedContacts#ad524315 imported:Vector<ImportedContact> retry_contacts:Vector<long> users:Vector<User> = contacts.ImportedContacts;
-
-contacts.blocked#1c138d15 blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-contacts.blockedSlice#900802a1 count:int blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-
-contacts.found#0566000e results:Vector<ContactFound> users:Vector<User> = contacts.Found;
-
-contacts.suggested#5649dcc5 results:Vector<ContactSuggested> users:Vector<User> = contacts.Suggested;
-
-messages.dialogs#15ba6c40 dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-messages.dialogsSlice#71e094f3 count:int dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-
-messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-messages.messagesSlice#0b446ae3 count:int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-
-messages.messageEmpty#3f4e0648 = messages.Message;
-messages.message#ff90c417 message:Message chats:Vector<Chat> users:Vector<User> = messages.Message;
-
-messages.statedMessages#969478bb messages:Vector<Message> chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessage#d07ae726 message:Message chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessage#d1f4d35c id:int date:int pts:int seq:int = messages.SentMessage;
-
-messages.chat#40e9002a chat:Chat users:Vector<User> = messages.Chat;
-
-messages.chats#8150cbd8 chats:Vector<Chat> users:Vector<User> = messages.Chats;
-
-messages.chatFull#e5d7d19c full_chat:ChatFull chats:Vector<Chat> users:Vector<User> = messages.ChatFull;
-
-messages.affectedHistory#b7de36f2 pts:int seq:int offset:int = messages.AffectedHistory;
-
-inputMessagesFilterEmpty#57e2f66c = MessagesFilter;
-inputMessagesFilterPhotos#9609a51c = MessagesFilter;
-inputMessagesFilterVideo#9fc00e65 = MessagesFilter;
-inputMessagesFilterPhotoVideo#56e9f0e4 = MessagesFilter;
-inputMessagesFilterDocument#9eddf188 = MessagesFilter;
-inputMessagesFilterAudio#cfc87522 = MessagesFilter;
-
-updateNewMessage#013abdb3 message:Message pts:int = Update;
-updateMessageID#4e90bfd6 id:int random_id:long = Update;
-updateReadMessages#c6649e31 messages:Vector<int> pts:int = Update;
-updateDeleteMessages#a92bfe26 messages:Vector<int> pts:int = Update;
-updateRestoreMessages#d15de04d messages:Vector<int> pts:int = Update;
-updateUserTyping#6baa8508 user_id:int = Update;
-updateChatUserTyping#3c46cfe6 chat_id:int user_id:int = Update;
-updateChatParticipants#07761198 participants:ChatParticipants = Update;
-updateUserStatus#1bfbd823 user_id:int status:UserStatus = Update;
-updateUserName#da22d9ad user_id:int first_name:string last_name:string = Update;
-updateUserPhoto#95313b0c user_id:int date:int photo:UserProfilePhoto previous:Bool = Update;
-updateContactRegistered#2575bbb9 user_id:int date:int = Update;
-updateContactLink#51a48a9a user_id:int my_link:contacts.MyLink foreign_link:contacts.ForeignLink = Update;
-updateActivation#6f690963 user_id:int = Update;
-updateNewAuthorization#8f06529a auth_key_id:long date:int device:string location:string = Update;
-
-updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
-
-updates.differenceEmpty#5d75a138 date:int seq:int = updates.Difference;
-updates.difference#00f49ca0 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> state:updates.State = updates.Difference;
-updates.differenceSlice#a8fb1981 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> intermediate_state:updates.State = updates.Difference;
-
-updatesTooLong#e317af7e = Updates;
-updateShortMessage#d3f45784 id:int from_id:int message:string pts:int date:int seq:int = Updates;
-updateShortChatMessage#2b2fbd4e id:int from_id:int chat_id:int message:string pts:int date:int seq:int = Updates;
-updateShort#78d4dec1 update:Update date:int = Updates;
-updatesCombined#725b04c3 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq_start:int seq:int = Updates;
-updates#74ae4240 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq:int = Updates;
-
-photos.photos#8dca6aa5 photos:Vector<Photo> users:Vector<User> = photos.Photos;
-photos.photosSlice#15051f54 count:int photos:Vector<Photo> users:Vector<User> = photos.Photos;
-
-photos.photo#20212ca8 photo:Photo users:Vector<User> = photos.Photo;
-
-upload.file#096a18d5 type:storage.FileType mtime:int bytes:bytes = upload.File;
-
-dcOption#2ec2a43c id:int hostname:string ip_address:string port:int = DcOption;
-
-config#2e54dd74 date:int test_mode:Bool this_dc:int dc_options:Vector<DcOption> chat_size_max:int broadcast_size_max:int = Config;
-
-nearestDc#8e1a1775 country:string this_dc:int nearest_dc:int = NearestDc;
-
-help.appUpdate#8987f311 id:int critical:Bool url:string text:string = help.AppUpdate;
-help.noAppUpdate#c45a6536 = help.AppUpdate;
-
-help.inviteText#18cb9f78 message:string = help.InviteText;
-
-messages.statedMessagesLinks#3e74f5c6 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessageLink#a9af2881 message:Message chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessageLink#e9db4a3f id:int date:int pts:int seq:int links:Vector<contacts.Link> = messages.SentMessage;
-
-inputGeoChat#74d456fa chat_id:int access_hash:long = InputGeoChat;
-
-inputNotifyGeoChatPeer#4d8ddec8 peer:InputGeoChat = InputNotifyPeer;
-
-geoChat#75eaea5a id:int access_hash:long title:string address:string venue:string geo:GeoPoint photo:ChatPhoto participants_count:int date:int checked_in:Bool version:int = Chat;
-
-geoChatMessageEmpty#60311a9b chat_id:int id:int = GeoChatMessage;
-geoChatMessage#4505f8e1 chat_id:int id:int from_id:int date:int message:string media:MessageMedia = GeoChatMessage;
-geoChatMessageService#d34fa24e chat_id:int id:int from_id:int date:int action:MessageAction = GeoChatMessage;
-
-geochats.statedMessage#17b1578b message:GeoChatMessage chats:Vector<Chat> users:Vector<User> seq:int = geochats.StatedMessage;
-
-geochats.located#48feb267 results:Vector<ChatLocated> messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Located;
-
-geochats.messages#d1526db1 messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-geochats.messagesSlice#bc5863e8 count:int messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-
-messageActionGeoChatCreate#6f038ebc title:string address:string = MessageAction;
-messageActionGeoChatCheckin#0c7d53de = MessageAction;
-
-updateNewGeoChatMessage#5a68e3f7 message:GeoChatMessage = Update;
-
-wallPaperSolid#63117f24 id:int title:string bg_color:int color:int = WallPaper;
-
-updateNewEncryptedMessage#12bcbd9a message:EncryptedMessage qts:int = Update;
-updateEncryptedChatTyping#1710f156 chat_id:int = Update;
-updateEncryption#b4a2e88d chat:EncryptedChat date:int = Update;
-updateEncryptedMessagesRead#38fe25b7 chat_id:int max_date:int date:int = Update;
-
-encryptedChatEmpty#ab7ec0a0 id:int = EncryptedChat;
-encryptedChatWaiting#3bf703dc id:int access_hash:long date:int admin_id:int participant_id:int = EncryptedChat;
-encryptedChatRequested#c878527e id:int access_hash:long date:int admin_id:int participant_id:int g_a:bytes = EncryptedChat;
-encryptedChat#fa56ce36 id:int access_hash:long date:int admin_id:int participant_id:int g_a_or_b:bytes key_fingerprint:long = EncryptedChat;
-encryptedChatDiscarded#13d6dd27 id:int = EncryptedChat;
-
-inputEncryptedChat#f141b5e1 chat_id:int access_hash:long = InputEncryptedChat;
-
-encryptedFileEmpty#c21f497e = EncryptedFile;
-encryptedFile#4a70994c id:long access_hash:long size:int dc_id:int key_fingerprint:int = EncryptedFile;
-
-inputEncryptedFileEmpty#1837c364 = InputEncryptedFile;
-inputEncryptedFileUploaded#64bd0306 id:long parts:int md5_checksum:string key_fingerprint:int = InputEncryptedFile;
-inputEncryptedFile#5a17b5e5 id:long access_hash:long = InputEncryptedFile;
-
-inputEncryptedFileLocation#f5235d55 id:long access_hash:long = InputFileLocation;
-
-encryptedMessage#ed18c118 random_id:long chat_id:int date:int bytes:bytes file:EncryptedFile = EncryptedMessage;
-encryptedMessageService#23734b06 random_id:long chat_id:int date:int bytes:bytes = EncryptedMessage;
-
-decryptedMessageLayer#99a438cf layer:int message:DecryptedMessage = DecryptedMessageLayer;
-
-decryptedMessage#1f814f1f random_id:long random_bytes:bytes message:string media:DecryptedMessageMedia = DecryptedMessage;
-decryptedMessageService#aa48327d random_id:long random_bytes:bytes action:DecryptedMessageAction = DecryptedMessage;
-
-decryptedMessageMediaEmpty#089f5c4a = DecryptedMessageMedia;
-decryptedMessageMediaPhoto#32798a8c thumb:bytes thumb_w:int thumb_h:int w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaVideo#524a415d thumb:bytes thumb_w:int thumb_h:int duration:int mime_type:string w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaGeoPoint#35480a59 lat:double long:double = DecryptedMessageMedia;
-decryptedMessageMediaContact#588a0a97 phone_number:string first_name:string last_name:string user_id:int = DecryptedMessageMedia;
-
-decryptedMessageActionSetMessageTTL#a1733aec ttl_seconds:int = DecryptedMessageAction;
-
-messages.dhConfigNotModified#c0e24635 random:bytes = messages.DhConfig;
-messages.dhConfig#2c221edd g:int p:bytes version:int random:bytes = messages.DhConfig;
-
-messages.sentEncryptedMessage#560f8935 date:int = messages.SentEncryptedMessage;
-messages.sentEncryptedFile#9493ff32 date:int file:EncryptedFile = messages.SentEncryptedMessage;
-
-inputFileBig#fa4f0bb5 id:long parts:int name:string = InputFile;
-
-inputEncryptedFileBigUploaded#2dc173c8 id:long parts:int key_fingerprint:int = InputEncryptedFile;
-
-updateChatParticipantAdd#3a0eeb22 chat_id:int user_id:int inviter_id:int version:int = Update;
-updateChatParticipantDelete#6e5f8c22 chat_id:int user_id:int version:int = Update;
-updateDcOptions#8e5e9873 dc_options:Vector<DcOption> = Update;
-
-inputMediaUploadedAudio#4e498cab file:InputFile duration:int mime_type:string = InputMedia;
-inputMediaAudio#89938781 id:InputAudio = InputMedia;
-inputMediaUploadedDocument#34e794bd file:InputFile file_name:string mime_type:string = InputMedia;
-inputMediaUploadedThumbDocument#3e46de5d file:InputFile thumb:InputFile file_name:string mime_type:string = InputMedia;
-inputMediaDocument#d184e841 id:InputDocument = InputMedia;
-
-messageMediaDocument#2fda2204 document:Document = MessageMedia;
-messageMediaAudio#c6b68300 audio:Audio = MessageMedia;
-
-inputAudioEmpty#d95adc84 = InputAudio;
-inputAudio#77d440ff id:long access_hash:long = InputAudio;
-
-inputDocumentEmpty#72f0eaae = InputDocument;
-inputDocument#18798952 id:long access_hash:long = InputDocument;
-
-inputAudioFileLocation#74dc404d id:long access_hash:long = InputFileLocation;
-inputDocumentFileLocation#4e45abe9 id:long access_hash:long = InputFileLocation;
-
-decryptedMessageMediaDocument#b095434b thumb:bytes thumb_w:int thumb_h:int file_name:string mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia;
-decryptedMessageMediaAudio#57e0a9cb duration:int mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia;
-
-audioEmpty#586988d8 id:long = Audio;
-audio#c7ac6496 id:long access_hash:long user_id:int date:int duration:int mime_type:string size:int dc_id:int = Audio;
-
-documentEmpty#36f8c871 id:long = Document;
-document#9efc6326 id:long access_hash:long user_id:int date:int file_name:string mime_type:string size:int thumb:PhotoSize dc_id:int = Document;
-
-help.support#17c6b5f6 phone_number:string user:User = help.Support;
-
-decryptedMessageActionReadMessages#0c4f40be random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionDeleteMessages#65614304 random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionScreenshotMessages#8ac1f475 random_ids:Vector<long> = DecryptedMessageAction;
-decryptedMessageActionFlushHistory#6719e45c = DecryptedMessageAction;
-decryptedMessageActionNotifyLayer#f3048883 layer:int = DecryptedMessageAction;
-
-notifyPeer#9fd40bd8 peer:Peer = NotifyPeer;
-notifyUsers#b4c83b4c = NotifyPeer;
-notifyChats#c007cec3 = NotifyPeer;
-notifyAll#74d07c60 = NotifyPeer;
-
-updateUserBlocked#80ece81a user_id:int blocked:Bool = Update;
-updateNotifySettings#bec268ef peer:NotifyPeer notify_settings:PeerNotifySettings = Update;
-
-za int = Z 0;
-zb {n:#} int %(Vector int) = Z (n + 1);
-
----functions---
-
-invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
-
-invokeAfterMsgs#3dc4b4f0 {X:Type} msg_ids:Vector<long> query:!X = X;
-
-auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone;
-auth.sendCode#768d5f4d phone_number:string sms_type:int api_id:int api_hash:string lang_code:string = auth.SentCode;
-auth.sendCall#03c51564 phone_number:string phone_code_hash:string = Bool;
-auth.signUp#1b067634 phone_number:string phone_code_hash:string phone_code:string first_name:string last_name:string = auth.Authorization;
-auth.signIn#bcd51581 phone_number:string phone_code_hash:string phone_code:string = auth.Authorization;
-auth.logOut#5717da40 = Bool;
-auth.resetAuthorizations#9fab0d1a = Bool;
-auth.sendInvites#771c1d97 phone_numbers:Vector<string> message:string = Bool;
-auth.exportAuthorization#e5bfffcd dc_id:int = auth.ExportedAuthorization;
-auth.importAuthorization#e3ef9613 id:int bytes:bytes = auth.Authorization;
-
-account.registerDevice#446c712c token_type:int token:string device_model:string system_version:string app_version:string app_sandbox:Bool lang_code:string = Bool;
-account.unregisterDevice#65c55b40 token_type:int token:string = Bool;
-account.updateNotifySettings#84be5b93 peer:InputNotifyPeer settings:InputPeerNotifySettings = Bool;
-account.getNotifySettings#12b3ad31 peer:InputNotifyPeer = PeerNotifySettings;
-account.resetNotifySettings#db7e1747 = Bool;
-account.updateProfile#f0888d68 first_name:string last_name:string = User;
-account.updateStatus#6628562c offline:Bool = Bool;
-account.getWallPapers#c04cfac2 = Vector<WallPaper>;
-
-users.getUsers#0d91a548 id:Vector<InputUser> = Vector<User>;
-users.getFullUser#ca30a5b1 id:InputUser = UserFull;
-
-contacts.getStatuses#c4a353ee = Vector<ContactStatus>;
-contacts.getContacts#22c6aa08 hash:string = contacts.Contacts;
-contacts.importContacts#da30b32d contacts:Vector<InputContact> replace:Bool = contacts.ImportedContacts;
-contacts.search#11f812d8 q:string limit:int = contacts.Found;
-contacts.getSuggested#cd773428 limit:int = contacts.Suggested;
-contacts.deleteContact#8e953744 id:InputUser = contacts.Link;
-contacts.deleteContacts#59ab389e id:Vector<InputUser> = Bool;
-contacts.block#332b49fc id:InputUser = Bool;
-contacts.unblock#e54100bd id:InputUser = Bool;
-contacts.getBlocked#f57c350f offset:int limit:int = contacts.Blocked;
-
-messages.getMessages#4222fa74 id:Vector<int> = messages.Messages;
-messages.getDialogs#eccf1df6 offset:int max_id:int limit:int = messages.Dialogs;
-messages.getHistory#92a1df2f peer:InputPeer offset:int max_id:int limit:int = messages.Messages;
-messages.search#07e9f2ab peer:InputPeer q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = messages.Messages;
-messages.readHistory#b04f2510 peer:InputPeer max_id:int offset:int = messages.AffectedHistory;
-messages.deleteHistory#f4f8fb61 peer:InputPeer offset:int = messages.AffectedHistory;
-messages.deleteMessages#14f2dd0a id:Vector<int> = Vector<int>;
-messages.restoreMessages#395f9d7e id:Vector<int> = Vector<int>;
-messages.receivedMessages#28abcb68 max_id:int = Vector<int>;
-messages.setTyping#719839e9 peer:InputPeer typing:Bool = Bool;
-messages.sendMessage#4cde0aab peer:InputPeer message:string random_id:long = messages.SentMessage;
-messages.sendMedia#a3c85d76 peer:InputPeer media:InputMedia random_id:long = messages.StatedMessage;
-messages.forwardMessages#514cd10f peer:InputPeer id:Vector<int> = messages.StatedMessages;
-messages.getChats#3c6aa187 id:Vector<int> = messages.Chats;
-messages.getFullChat#3b831c66 chat_id:int = messages.ChatFull;
-messages.editChatTitle#b4bc68b5 chat_id:int title:string = messages.StatedMessage;
-messages.editChatPhoto#d881821d chat_id:int photo:InputChatPhoto = messages.StatedMessage;
-messages.addChatUser#2ee9ee9e chat_id:int user_id:InputUser fwd_limit:int = messages.StatedMessage;
-messages.deleteChatUser#c3c5cd23 chat_id:int user_id:InputUser = messages.StatedMessage;
-messages.createChat#419d9aee users:Vector<InputUser> title:string = messages.StatedMessage;
-
-updates.getState#edd4882a = updates.State;
-updates.getDifference#0a041495 pts:int date:int qts:int = updates.Difference;
-
-photos.updateProfilePhoto#eef579a0 id:InputPhoto crop:InputPhotoCrop = UserProfilePhoto;
-photos.uploadProfilePhoto#d50f9c88 file:InputFile caption:string geo_point:InputGeoPoint crop:InputPhotoCrop = photos.Photo;
-
-upload.saveFilePart#b304a621 file_id:long file_part:int bytes:bytes = Bool;
-upload.getFile#e3a6cfb5 location:InputFileLocation offset:int limit:int = upload.File;
-
-help.getConfig#c4f9186b = Config;
-help.getNearestDc#1fb33026 = NearestDc;
-help.getAppUpdate#c812ac7e device_model:string system_version:string app_version:string lang_code:string = help.AppUpdate;
-help.saveAppLog#6f02f748 events:Vector<InputAppEvent> = Bool;
-help.getInviteText#a4a95186 lang_code:string = help.InviteText;
-
-photos.getUserPhotos#b7ee553c user_id:InputUser offset:int max_id:int limit:int = photos.Photos;
-
-messages.forwardMessage#03f3f4f2 peer:InputPeer id:int random_id:long = messages.StatedMessage;
-messages.sendBroadcast#41bb0972 contacts:Vector<InputUser> message:string media:InputMedia = messages.StatedMessages;
-
-geochats.getLocated#7f192d8f geo_point:InputGeoPoint radius:int limit:int = geochats.Located;
-geochats.getRecents#e1427e6f offset:int limit:int = geochats.Messages;
-geochats.checkin#55b3e8fb peer:InputGeoChat = geochats.StatedMessage;
-geochats.getFullChat#6722dd6f peer:InputGeoChat = messages.ChatFull;
-geochats.editChatTitle#4c8e2273 peer:InputGeoChat title:string address:string = geochats.StatedMessage;
-geochats.editChatPhoto#35d81a95 peer:InputGeoChat photo:InputChatPhoto = geochats.StatedMessage;
-geochats.search#cfcdc44d peer:InputGeoChat q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = geochats.Messages;
-geochats.getHistory#b53f7a68 peer:InputGeoChat offset:int max_id:int limit:int = geochats.Messages;
-geochats.setTyping#08b8a729 peer:InputGeoChat typing:Bool = Bool;
-geochats.sendMessage#061b0044 peer:InputGeoChat message:string random_id:long = geochats.StatedMessage;
-geochats.sendMedia#b8f0deff peer:InputGeoChat media:InputMedia random_id:long = geochats.StatedMessage;
-geochats.createGeoChat#0e092e16 title:string geo_point:InputGeoPoint address:string venue:string = geochats.StatedMessage;
-
-messages.getDhConfig#26cf8950 version:int random_length:int = messages.DhConfig;
-messages.requestEncryption#f64daf43 user_id:InputUser random_id:int g_a:bytes = EncryptedChat;
-messages.acceptEncryption#3dbc0415 peer:InputEncryptedChat g_b:bytes key_fingerprint:long = EncryptedChat;
-messages.discardEncryption#edd923c5 chat_id:int = Bool;
-messages.setEncryptedTyping#791451ed peer:InputEncryptedChat typing:Bool = Bool;
-messages.readEncryptedHistory#7f4b690a peer:InputEncryptedChat max_date:int = Bool;
-messages.sendEncrypted#a9776773 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.sendEncryptedFile#9a901b66 peer:InputEncryptedChat random_id:long data:bytes file:InputEncryptedFile = messages.SentEncryptedMessage;
-messages.sendEncryptedService#32d439a4 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.receivedQueue#55a5bb66 max_qts:int = Vector<long>;
-
-upload.saveBigFilePart#de7b673d file_id:long file_part:int file_total_parts:int bytes:bytes = Bool;
-
-initConnection#69796de9 {X:Type} api_id:int device_model:string system_version:string app_version:string lang_code:string query:!X = X;
-
-help.getSupport#9cdf08cd = help.Support;
-
-invokeWithLayer15#b4418b64 {X:Type} query:!X = X;
diff --git a/protocols/Telegram/docs/tgl/scheme16.tl b/protocols/Telegram/docs/tgl/scheme16.tl
deleted file mode 100644
index b1e1f196d8..0000000000
--- a/protocols/Telegram/docs/tgl/scheme16.tl
+++ /dev/null
@@ -1,504 +0,0 @@
-int ?= Int;
-long ?= Long;
-double ?= Double;
-string ?= String;
-
-bytes string = Bytes;
-
-boolFalse#bc799737 = Bool;
-boolTrue#997275b5 = Bool;
-
-vector#1cb5c415 {t:Type} # [ t ] = Vector t;
-
-error#c4b9f9bb code:int text:string = Error;
-
-null#56730bcc = Null;
-
-inputPeerEmpty#7f3b18ea = InputPeer;
-inputPeerSelf#7da07ec9 = InputPeer;
-inputPeerContact#1023dbe8 user_id:int = InputPeer;
-inputPeerForeign#9b447325 user_id:int access_hash:long = InputPeer;
-inputPeerChat#179be863 chat_id:int = InputPeer;
-
-inputUserEmpty#b98886cf = InputUser;
-inputUserSelf#f7c1b13f = InputUser;
-inputUserContact#86e94f65 user_id:int = InputUser;
-inputUserForeign#655e74ff user_id:int access_hash:long = InputUser;
-
-inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact;
-
-inputFile#f52ff27f id:long parts:int name:string md5_checksum:string = InputFile;
-
-inputMediaEmpty#9664f57f = InputMedia;
-inputMediaUploadedPhoto#2dc53a7d file:InputFile = InputMedia;
-inputMediaPhoto#8f2ab2ec id:InputPhoto = InputMedia;
-inputMediaGeoPoint#f9c44144 geo_point:InputGeoPoint = InputMedia;
-inputMediaContact#a6e45987 phone_number:string first_name:string last_name:string = InputMedia;
-inputMediaUploadedVideo#133ad6f6 file:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaUploadedThumbVideo#9912dabf file:InputFile thumb:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaVideo#7f023ae6 id:InputVideo = InputMedia;
-
-inputChatPhotoEmpty#1ca48f57 = InputChatPhoto;
-inputChatUploadedPhoto#94254732 file:InputFile crop:InputPhotoCrop = InputChatPhoto;
-inputChatPhoto#b2e1bf08 id:InputPhoto crop:InputPhotoCrop = InputChatPhoto;
-
-inputGeoPointEmpty#e4c123d6 = InputGeoPoint;
-inputGeoPoint#f3b7acc9 lat:double long:double = InputGeoPoint;
-
-inputPhotoEmpty#1cd7bf0d = InputPhoto;
-inputPhoto#fb95c6c4 id:long access_hash:long = InputPhoto;
-
-inputVideoEmpty#5508ec75 = InputVideo;
-inputVideo#ee579652 id:long access_hash:long = InputVideo;
-
-inputFileLocation#14637196 volume_id:long local_id:int secret:long = InputFileLocation;
-inputVideoFileLocation#3d0364ec id:long access_hash:long = InputFileLocation;
-
-inputPhotoCropAuto#ade6b004 = InputPhotoCrop;
-inputPhotoCrop#d9915325 crop_left:double crop_top:double crop_width:double = InputPhotoCrop;
-
-inputAppEvent#770656a8 time:double type:string peer:long data:string = InputAppEvent;
-
-peerUser#9db1bc6d user_id:int = Peer;
-peerChat#bad0e5bb chat_id:int = Peer;
-
-storage.fileUnknown#aa963b05 = storage.FileType;
-storage.fileJpeg#7efe0e = storage.FileType;
-storage.fileGif#cae1aadf = storage.FileType;
-storage.filePng#a4f63c0 = storage.FileType;
-storage.filePdf#ae1e508d = storage.FileType;
-storage.fileMp3#528a0677 = storage.FileType;
-storage.fileMov#4b09ebbc = storage.FileType;
-storage.filePartial#40bc6f52 = storage.FileType;
-storage.fileMp4#b3cea0e4 = storage.FileType;
-storage.fileWebp#1081464c = storage.FileType;
-
-fileLocationUnavailable#7c596b46 volume_id:long local_id:int secret:long = FileLocation;
-fileLocation#53d69076 dc_id:int volume_id:long local_id:int secret:long = FileLocation;
-
-userEmpty#200250ba id:int = User;
-userSelf#720535ec id:int first_name:string last_name:string phone:string photo:UserProfilePhoto status:UserStatus inactive:Bool = User;
-userContact#f2fb8319 id:int first_name:string last_name:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userRequest#22e8ceb0 id:int first_name:string last_name:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userForeign#5214c89d id:int first_name:string last_name:string access_hash:long photo:UserProfilePhoto status:UserStatus = User;
-userDeleted#b29ad7cc id:int first_name:string last_name:string = User;
-
-userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
-userProfilePhoto#d559d8c8 photo_id:long photo_small:FileLocation photo_big:FileLocation = UserProfilePhoto;
-
-userStatusEmpty#9d05049 = UserStatus;
-userStatusOnline#edb93949 expires:int = UserStatus;
-userStatusOffline#8c703f was_online:int = UserStatus;
-
-chatEmpty#9ba2d800 id:int = Chat;
-chat#6e9c9bc7 id:int title:string photo:ChatPhoto participants_count:int date:int left:Bool version:int = Chat;
-chatForbidden#fb0ccc41 id:int title:string date:int = Chat;
-
-chatFull#630e61be id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings = ChatFull;
-
-chatParticipant#c8d7493e user_id:int inviter_id:int date:int = ChatParticipant;
-
-chatParticipantsForbidden#fd2bb8a chat_id:int = ChatParticipants;
-chatParticipants#7841b415 chat_id:int admin_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
-
-chatPhotoEmpty#37c1011c = ChatPhoto;
-chatPhoto#6153276a photo_small:FileLocation photo_big:FileLocation = ChatPhoto;
-
-messageEmpty#83e5de54 id:int = Message;
-message#22eb6aba id:int from_id:int to_id:Peer out:Bool unread:Bool date:int message:string media:MessageMedia = Message;
-messageForwarded#5f46804 id:int fwd_from_id:int fwd_date:int from_id:int to_id:Peer out:Bool unread:Bool date:int message:string media:MessageMedia = Message;
-messageService#9f8d60bb id:int from_id:int to_id:Peer out:Bool unread:Bool date:int action:MessageAction = Message;
-
-messageMediaEmpty#3ded6320 = MessageMedia;
-messageMediaPhoto#c8c45a2a photo:Photo = MessageMedia;
-messageMediaVideo#a2d24290 video:Video = MessageMedia;
-messageMediaGeo#56e0d474 geo:GeoPoint = MessageMedia;
-messageMediaContact#5e7d2f39 phone_number:string first_name:string last_name:string user_id:int = MessageMedia;
-messageMediaUnsupported#29632a36 bytes:bytes = MessageMedia;
-
-messageActionEmpty#b6aef7b0 = MessageAction;
-messageActionChatCreate#a6638b9a title:string users:Vector<int> = MessageAction;
-messageActionChatEditTitle#b5a1ce5a title:string = MessageAction;
-messageActionChatEditPhoto#7fcb13a8 photo:Photo = MessageAction;
-messageActionChatDeletePhoto#95e3fbef = MessageAction;
-messageActionChatAddUser#5e3cfc4b user_id:int = MessageAction;
-messageActionChatDeleteUser#b2ae9b0c user_id:int = MessageAction;
-
-dialog#ab3a99ac peer:Peer top_message:int unread_count:int notify_settings:PeerNotifySettings = Dialog;
-
-photoEmpty#2331b22d id:long = Photo;
-photo#22b56751 id:long access_hash:long user_id:int date:int caption:string geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-
-photoSizeEmpty#e17e23c type:string = PhotoSize;
-photoSize#77bfb61b type:string location:FileLocation w:int h:int size:int = PhotoSize;
-photoCachedSize#e9a734fa type:string location:FileLocation w:int h:int bytes:bytes = PhotoSize;
-
-videoEmpty#c10658a8 id:long = Video;
-video#388fa391 id:long access_hash:long user_id:int date:int caption:string duration:int mime_type:string size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-
-geoPointEmpty#1117dd5f = GeoPoint;
-geoPoint#2049d70c long:double lat:double = GeoPoint;
-
-auth.checkedPhone#e300cc3b phone_registered:Bool phone_invited:Bool = auth.CheckedPhone;
-
-auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-auth.authorization#f6b673a4 expires:int user:User = auth.Authorization;
-
-auth.exportedAuthorization#df969c2d id:int bytes:bytes = auth.ExportedAuthorization;
-
-inputNotifyPeer#b8bc5b0c peer:InputPeer = InputNotifyPeer;
-inputNotifyUsers#193b4417 = InputNotifyPeer;
-inputNotifyChats#4a95e84e = InputNotifyPeer;
-inputNotifyAll#a429b886 = InputNotifyPeer;
-
-inputPeerNotifyEventsEmpty#f03064d8 = InputPeerNotifyEvents;
-inputPeerNotifyEventsAll#e86a2c74 = InputPeerNotifyEvents;
-
-inputPeerNotifySettings#46a2ce98 mute_until:int sound:string show_previews:Bool events_mask:int = InputPeerNotifySettings;
-
-peerNotifyEventsEmpty#add53cb3 = PeerNotifyEvents;
-peerNotifyEventsAll#6d1ded88 = PeerNotifyEvents;
-
-peerNotifySettingsEmpty#70a68512 = PeerNotifySettings;
-peerNotifySettings#8d5e11ee mute_until:int sound:string show_previews:Bool events_mask:int = PeerNotifySettings;
-
-wallPaper#ccb03657 id:int title:string sizes:Vector<PhotoSize> color:int = WallPaper;
-
-userFull#771095da user:User link:contacts.Link profile_photo:Photo notify_settings:PeerNotifySettings blocked:Bool real_first_name:string real_last_name:string = UserFull;
-
-contact#f911c994 user_id:int mutual:Bool = Contact;
-
-importedContact#d0028438 user_id:int client_id:long = ImportedContact;
-
-contactBlocked#561bc879 user_id:int date:int = ContactBlocked;
-
-contactFound#ea879f95 user_id:int = ContactFound;
-
-contactSuggested#3de191a1 user_id:int mutual_contacts:int = ContactSuggested;
-
-contactStatus#aa77b873 user_id:int expires:int = ContactStatus;
-
-chatLocated#3631cf4c chat_id:int distance:int = ChatLocated;
-
-contacts.foreignLinkUnknown#133421f8 = contacts.ForeignLink;
-contacts.foreignLinkRequested#a7801f47 has_phone:Bool = contacts.ForeignLink;
-contacts.foreignLinkMutual#1bea8ce1 = contacts.ForeignLink;
-
-contacts.myLinkEmpty#d22a1c60 = contacts.MyLink;
-contacts.myLinkRequested#6c69efee contact:Bool = contacts.MyLink;
-contacts.myLinkContact#c240ebd9 = contacts.MyLink;
-
-contacts.link#eccea3f5 my_link:contacts.MyLink foreign_link:contacts.ForeignLink user:User = contacts.Link;
-
-contacts.contacts#6f8b8cb2 contacts:Vector<Contact> users:Vector<User> = contacts.Contacts;
-contacts.contactsNotModified#b74ba9d2 = contacts.Contacts;
-
-contacts.importedContacts#ad524315 imported:Vector<ImportedContact> retry_contacts:Vector<long> users:Vector<User> = contacts.ImportedContacts;
-
-contacts.blocked#1c138d15 blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-contacts.blockedSlice#900802a1 count:int blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-
-contacts.found#566000e results:Vector<ContactFound> users:Vector<User> = contacts.Found;
-
-contacts.suggested#5649dcc5 results:Vector<ContactSuggested> users:Vector<User> = contacts.Suggested;
-
-messages.dialogs#15ba6c40 dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-messages.dialogsSlice#71e094f3 count:int dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-
-messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-messages.messagesSlice#b446ae3 count:int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-
-messages.messageEmpty#3f4e0648 = messages.Message;
-messages.message#ff90c417 message:Message chats:Vector<Chat> users:Vector<User> = messages.Message;
-
-messages.statedMessages#969478bb messages:Vector<Message> chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessage#d07ae726 message:Message chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessage#d1f4d35c id:int date:int pts:int seq:int = messages.SentMessage;
-
-messages.chat#40e9002a chat:Chat users:Vector<User> = messages.Chat;
-
-messages.chats#8150cbd8 chats:Vector<Chat> users:Vector<User> = messages.Chats;
-
-messages.chatFull#e5d7d19c full_chat:ChatFull chats:Vector<Chat> users:Vector<User> = messages.ChatFull;
-
-messages.affectedHistory#b7de36f2 pts:int seq:int offset:int = messages.AffectedHistory;
-
-inputMessagesFilterEmpty#57e2f66c = MessagesFilter;
-inputMessagesFilterPhotos#9609a51c = MessagesFilter;
-inputMessagesFilterVideo#9fc00e65 = MessagesFilter;
-inputMessagesFilterPhotoVideo#56e9f0e4 = MessagesFilter;
-inputMessagesFilterDocument#9eddf188 = MessagesFilter;
-inputMessagesFilterAudio#cfc87522 = MessagesFilter;
-
-updateNewMessage#13abdb3 message:Message pts:int = Update;
-updateMessageID#4e90bfd6 id:int random_id:long = Update;
-updateReadMessages#c6649e31 messages:Vector<int> pts:int = Update;
-updateDeleteMessages#a92bfe26 messages:Vector<int> pts:int = Update;
-updateRestoreMessages#d15de04d messages:Vector<int> pts:int = Update;
-updateUserTyping#6baa8508 user_id:int = Update;
-updateChatUserTyping#3c46cfe6 chat_id:int user_id:int = Update;
-updateChatParticipants#7761198 participants:ChatParticipants = Update;
-updateUserStatus#1bfbd823 user_id:int status:UserStatus = Update;
-updateUserName#da22d9ad user_id:int first_name:string last_name:string = Update;
-updateUserPhoto#95313b0c user_id:int date:int photo:UserProfilePhoto previous:Bool = Update;
-updateContactRegistered#2575bbb9 user_id:int date:int = Update;
-updateContactLink#51a48a9a user_id:int my_link:contacts.MyLink foreign_link:contacts.ForeignLink = Update;
-updateActivation#6f690963 user_id:int = Update;
-updateNewAuthorization#8f06529a auth_key_id:long date:int device:string location:string = Update;
-
-updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
-
-updates.differenceEmpty#5d75a138 date:int seq:int = updates.Difference;
-updates.difference#f49ca0 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> state:updates.State = updates.Difference;
-updates.differenceSlice#a8fb1981 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> intermediate_state:updates.State = updates.Difference;
-
-updatesTooLong#e317af7e = Updates;
-updateShortMessage#d3f45784 id:int from_id:int message:string pts:int date:int seq:int = Updates;
-updateShortChatMessage#2b2fbd4e id:int from_id:int chat_id:int message:string pts:int date:int seq:int = Updates;
-updateShort#78d4dec1 update:Update date:int = Updates;
-updatesCombined#725b04c3 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq_start:int seq:int = Updates;
-updates#74ae4240 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq:int = Updates;
-
-photos.photos#8dca6aa5 photos:Vector<Photo> users:Vector<User> = photos.Photos;
-photos.photosSlice#15051f54 count:int photos:Vector<Photo> users:Vector<User> = photos.Photos;
-
-photos.photo#20212ca8 photo:Photo users:Vector<User> = photos.Photo;
-
-upload.file#96a18d5 type:storage.FileType mtime:int bytes:bytes = upload.File;
-
-dcOption#2ec2a43c id:int hostname:string ip_address:string port:int = DcOption;
-
-config#2e54dd74 date:int test_mode:Bool this_dc:int dc_options:Vector<DcOption> chat_size_max:int broadcast_size_max:int = Config;
-
-nearestDc#8e1a1775 country:string this_dc:int nearest_dc:int = NearestDc;
-
-help.appUpdate#8987f311 id:int critical:Bool url:string text:string = help.AppUpdate;
-help.noAppUpdate#c45a6536 = help.AppUpdate;
-
-help.inviteText#18cb9f78 message:string = help.InviteText;
-
-messages.statedMessagesLinks#3e74f5c6 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessageLink#a9af2881 message:Message chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessageLink#e9db4a3f id:int date:int pts:int seq:int links:Vector<contacts.Link> = messages.SentMessage;
-
-inputGeoChat#74d456fa chat_id:int access_hash:long = InputGeoChat;
-
-inputNotifyGeoChatPeer#4d8ddec8 peer:InputGeoChat = InputNotifyPeer;
-
-geoChat#75eaea5a id:int access_hash:long title:string address:string venue:string geo:GeoPoint photo:ChatPhoto participants_count:int date:int checked_in:Bool version:int = Chat;
-
-geoChatMessageEmpty#60311a9b chat_id:int id:int = GeoChatMessage;
-geoChatMessage#4505f8e1 chat_id:int id:int from_id:int date:int message:string media:MessageMedia = GeoChatMessage;
-geoChatMessageService#d34fa24e chat_id:int id:int from_id:int date:int action:MessageAction = GeoChatMessage;
-
-geochats.statedMessage#17b1578b message:GeoChatMessage chats:Vector<Chat> users:Vector<User> seq:int = geochats.StatedMessage;
-
-geochats.located#48feb267 results:Vector<ChatLocated> messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Located;
-
-geochats.messages#d1526db1 messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-geochats.messagesSlice#bc5863e8 count:int messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-
-messageActionGeoChatCreate#6f038ebc title:string address:string = MessageAction;
-messageActionGeoChatCheckin#c7d53de = MessageAction;
-
-updateNewGeoChatMessage#5a68e3f7 message:GeoChatMessage = Update;
-
-wallPaperSolid#63117f24 id:int title:string bg_color:int color:int = WallPaper;
-
-updateNewEncryptedMessage#12bcbd9a message:EncryptedMessage qts:int = Update;
-updateEncryptedChatTyping#1710f156 chat_id:int = Update;
-updateEncryption#b4a2e88d chat:EncryptedChat date:int = Update;
-updateEncryptedMessagesRead#38fe25b7 chat_id:int max_date:int date:int = Update;
-
-encryptedChatEmpty#ab7ec0a0 id:int = EncryptedChat;
-encryptedChatWaiting#3bf703dc id:int access_hash:long date:int admin_id:int participant_id:int = EncryptedChat;
-encryptedChatRequested#c878527e id:int access_hash:long date:int admin_id:int participant_id:int g_a:bytes = EncryptedChat;
-encryptedChat#fa56ce36 id:int access_hash:long date:int admin_id:int participant_id:int g_a_or_b:bytes key_fingerprint:long = EncryptedChat;
-encryptedChatDiscarded#13d6dd27 id:int = EncryptedChat;
-
-inputEncryptedChat#f141b5e1 chat_id:int access_hash:long = InputEncryptedChat;
-
-encryptedFileEmpty#c21f497e = EncryptedFile;
-encryptedFile#4a70994c id:long access_hash:long size:int dc_id:int key_fingerprint:int = EncryptedFile;
-
-inputEncryptedFileEmpty#1837c364 = InputEncryptedFile;
-inputEncryptedFileUploaded#64bd0306 id:long parts:int md5_checksum:string key_fingerprint:int = InputEncryptedFile;
-inputEncryptedFile#5a17b5e5 id:long access_hash:long = InputEncryptedFile;
-
-inputEncryptedFileLocation#f5235d55 id:long access_hash:long = InputFileLocation;
-
-encryptedMessage#ed18c118 random_id:long chat_id:int date:int bytes:bytes file:EncryptedFile = EncryptedMessage;
-encryptedMessageService#23734b06 random_id:long chat_id:int date:int bytes:bytes = EncryptedMessage;
-
-messages.dhConfigNotModified#c0e24635 random:bytes = messages.DhConfig;
-messages.dhConfig#2c221edd g:int p:bytes version:int random:bytes = messages.DhConfig;
-
-messages.sentEncryptedMessage#560f8935 date:int = messages.SentEncryptedMessage;
-messages.sentEncryptedFile#9493ff32 date:int file:EncryptedFile = messages.SentEncryptedMessage;
-
-inputFileBig#fa4f0bb5 id:long parts:int name:string = InputFile;
-
-inputEncryptedFileBigUploaded#2dc173c8 id:long parts:int key_fingerprint:int = InputEncryptedFile;
-
-updateChatParticipantAdd#3a0eeb22 chat_id:int user_id:int inviter_id:int version:int = Update;
-updateChatParticipantDelete#6e5f8c22 chat_id:int user_id:int version:int = Update;
-updateDcOptions#8e5e9873 dc_options:Vector<DcOption> = Update;
-
-inputMediaUploadedAudio#4e498cab file:InputFile duration:int mime_type:string = InputMedia;
-inputMediaAudio#89938781 id:InputAudio = InputMedia;
-inputMediaUploadedDocument#34e794bd file:InputFile file_name:string mime_type:string = InputMedia;
-inputMediaUploadedThumbDocument#3e46de5d file:InputFile thumb:InputFile file_name:string mime_type:string = InputMedia;
-inputMediaDocument#d184e841 id:InputDocument = InputMedia;
-
-messageMediaDocument#2fda2204 document:Document = MessageMedia;
-messageMediaAudio#c6b68300 audio:Audio = MessageMedia;
-
-inputAudioEmpty#d95adc84 = InputAudio;
-inputAudio#77d440ff id:long access_hash:long = InputAudio;
-
-inputDocumentEmpty#72f0eaae = InputDocument;
-inputDocument#18798952 id:long access_hash:long = InputDocument;
-
-inputAudioFileLocation#74dc404d id:long access_hash:long = InputFileLocation;
-inputDocumentFileLocation#4e45abe9 id:long access_hash:long = InputFileLocation;
-
-audioEmpty#586988d8 id:long = Audio;
-audio#c7ac6496 id:long access_hash:long user_id:int date:int duration:int mime_type:string size:int dc_id:int = Audio;
-
-documentEmpty#36f8c871 id:long = Document;
-document#9efc6326 id:long access_hash:long user_id:int date:int file_name:string mime_type:string size:int thumb:PhotoSize dc_id:int = Document;
-
-help.support#17c6b5f6 phone_number:string user:User = help.Support;
-
-notifyPeer#9fd40bd8 peer:Peer = NotifyPeer;
-notifyUsers#b4c83b4c = NotifyPeer;
-notifyChats#c007cec3 = NotifyPeer;
-notifyAll#74d07c60 = NotifyPeer;
-
-updateUserBlocked#80ece81a user_id:int blocked:Bool = Update;
-updateNotifySettings#bec268ef peer:NotifyPeer notify_settings:PeerNotifySettings = Update;
-
-auth.sentAppCode#e325edcf phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
----functions---
-
-invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
-
-invokeAfterMsgs#3dc4b4f0 {X:Type} msg_ids:Vector<long> query:!X = X;
-
-auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone;
-auth.sendCode#768d5f4d phone_number:string sms_type:int api_id:int api_hash:string lang_code:string = auth.SentCode;
-auth.sendCall#3c51564 phone_number:string phone_code_hash:string = Bool;
-auth.signUp#1b067634 phone_number:string phone_code_hash:string phone_code:string first_name:string last_name:string = auth.Authorization;
-auth.signIn#bcd51581 phone_number:string phone_code_hash:string phone_code:string = auth.Authorization;
-auth.logOut#5717da40 = Bool;
-auth.resetAuthorizations#9fab0d1a = Bool;
-auth.sendInvites#771c1d97 phone_numbers:Vector<string> message:string = Bool;
-auth.exportAuthorization#e5bfffcd dc_id:int = auth.ExportedAuthorization;
-auth.importAuthorization#e3ef9613 id:int bytes:bytes = auth.Authorization;
-auth.bindTempAuthKey#cdd42a05 perm_auth_key_id:long nonce:long expires_at:int encrypted_message:bytes = Bool;
-
-account.registerDevice#446c712c token_type:int token:string device_model:string system_version:string app_version:string app_sandbox:Bool lang_code:string = Bool;
-account.unregisterDevice#65c55b40 token_type:int token:string = Bool;
-account.updateNotifySettings#84be5b93 peer:InputNotifyPeer settings:InputPeerNotifySettings = Bool;
-account.getNotifySettings#12b3ad31 peer:InputNotifyPeer = PeerNotifySettings;
-account.resetNotifySettings#db7e1747 = Bool;
-account.updateProfile#f0888d68 first_name:string last_name:string = User;
-account.updateStatus#6628562c offline:Bool = Bool;
-account.getWallPapers#c04cfac2 = Vector<WallPaper>;
-
-users.getUsers#d91a548 id:Vector<InputUser> = Vector<User>;
-users.getFullUser#ca30a5b1 id:InputUser = UserFull;
-
-contacts.getStatuses#c4a353ee = Vector<ContactStatus>;
-contacts.getContacts#22c6aa08 hash:string = contacts.Contacts;
-contacts.importContacts#da30b32d contacts:Vector<InputContact> replace:Bool = contacts.ImportedContacts;
-contacts.search#11f812d8 q:string limit:int = contacts.Found;
-contacts.getSuggested#cd773428 limit:int = contacts.Suggested;
-contacts.deleteContact#8e953744 id:InputUser = contacts.Link;
-contacts.deleteContacts#59ab389e id:Vector<InputUser> = Bool;
-contacts.block#332b49fc id:InputUser = Bool;
-contacts.unblock#e54100bd id:InputUser = Bool;
-contacts.getBlocked#f57c350f offset:int limit:int = contacts.Blocked;
-contacts.exportCard#84e53737 = Vector<int>;
-contacts.importCard#4fe196fe export_card:Vector<int> = User;
-
-messages.getMessages#4222fa74 id:Vector<int> = messages.Messages;
-messages.getDialogs#eccf1df6 offset:int max_id:int limit:int = messages.Dialogs;
-messages.getHistory#92a1df2f peer:InputPeer offset:int max_id:int limit:int = messages.Messages;
-messages.search#7e9f2ab peer:InputPeer q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = messages.Messages;
-messages.readHistory#b04f2510 peer:InputPeer max_id:int offset:int = messages.AffectedHistory;
-messages.deleteHistory#f4f8fb61 peer:InputPeer offset:int = messages.AffectedHistory;
-messages.deleteMessages#14f2dd0a id:Vector<int> = Vector<int>;
-messages.restoreMessages#395f9d7e id:Vector<int> = Vector<int>;
-messages.receivedMessages#28abcb68 max_id:int = Vector<int>;
-messages.setTyping#719839e9 peer:InputPeer typing:Bool = Bool;
-messages.sendMessage#4cde0aab peer:InputPeer message:string random_id:long = messages.SentMessage;
-messages.sendMedia#a3c85d76 peer:InputPeer media:InputMedia random_id:long = messages.StatedMessage;
-messages.forwardMessages#514cd10f peer:InputPeer id:Vector<int> = messages.StatedMessages;
-messages.getChats#3c6aa187 id:Vector<int> = messages.Chats;
-messages.getFullChat#3b831c66 chat_id:int = messages.ChatFull;
-messages.editChatTitle#b4bc68b5 chat_id:int title:string = messages.StatedMessage;
-messages.editChatPhoto#d881821d chat_id:int photo:InputChatPhoto = messages.StatedMessage;
-messages.addChatUser#2ee9ee9e chat_id:int user_id:InputUser fwd_limit:int = messages.StatedMessage;
-messages.deleteChatUser#c3c5cd23 chat_id:int user_id:InputUser = messages.StatedMessage;
-messages.createChat#419d9aee users:Vector<InputUser> title:string = messages.StatedMessage;
-
-updates.getState#edd4882a = updates.State;
-updates.getDifference#a041495 pts:int date:int qts:int = updates.Difference;
-
-photos.updateProfilePhoto#eef579a0 id:InputPhoto crop:InputPhotoCrop = UserProfilePhoto;
-photos.uploadProfilePhoto#d50f9c88 file:InputFile caption:string geo_point:InputGeoPoint crop:InputPhotoCrop = photos.Photo;
-
-upload.saveFilePart#b304a621 file_id:long file_part:int bytes:bytes = Bool;
-upload.getFile#e3a6cfb5 location:InputFileLocation offset:int limit:int = upload.File;
-
-help.getConfig#c4f9186b = Config;
-help.getNearestDc#1fb33026 = NearestDc;
-help.getAppUpdate#c812ac7e device_model:string system_version:string app_version:string lang_code:string = help.AppUpdate;
-help.saveAppLog#6f02f748 events:Vector<InputAppEvent> = Bool;
-help.getInviteText#a4a95186 lang_code:string = help.InviteText;
-
-photos.getUserPhotos#b7ee553c user_id:InputUser offset:int max_id:int limit:int = photos.Photos;
-
-messages.forwardMessage#3f3f4f2 peer:InputPeer id:int random_id:long = messages.StatedMessage;
-messages.sendBroadcast#41bb0972 contacts:Vector<InputUser> message:string media:InputMedia = messages.StatedMessages;
-
-geochats.getLocated#7f192d8f geo_point:InputGeoPoint radius:int limit:int = geochats.Located;
-geochats.getRecents#e1427e6f offset:int limit:int = geochats.Messages;
-geochats.checkin#55b3e8fb peer:InputGeoChat = geochats.StatedMessage;
-geochats.getFullChat#6722dd6f peer:InputGeoChat = messages.ChatFull;
-geochats.editChatTitle#4c8e2273 peer:InputGeoChat title:string address:string = geochats.StatedMessage;
-geochats.editChatPhoto#35d81a95 peer:InputGeoChat photo:InputChatPhoto = geochats.StatedMessage;
-geochats.search#cfcdc44d peer:InputGeoChat q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = geochats.Messages;
-geochats.getHistory#b53f7a68 peer:InputGeoChat offset:int max_id:int limit:int = geochats.Messages;
-geochats.setTyping#8b8a729 peer:InputGeoChat typing:Bool = Bool;
-geochats.sendMessage#61b0044 peer:InputGeoChat message:string random_id:long = geochats.StatedMessage;
-geochats.sendMedia#b8f0deff peer:InputGeoChat media:InputMedia random_id:long = geochats.StatedMessage;
-geochats.createGeoChat#e092e16 title:string geo_point:InputGeoPoint address:string venue:string = geochats.StatedMessage;
-
-messages.getDhConfig#26cf8950 version:int random_length:int = messages.DhConfig;
-messages.requestEncryption#f64daf43 user_id:InputUser random_id:int g_a:bytes = EncryptedChat;
-messages.acceptEncryption#3dbc0415 peer:InputEncryptedChat g_b:bytes key_fingerprint:long = EncryptedChat;
-messages.discardEncryption#edd923c5 chat_id:int = Bool;
-messages.setEncryptedTyping#791451ed peer:InputEncryptedChat typing:Bool = Bool;
-messages.readEncryptedHistory#7f4b690a peer:InputEncryptedChat max_date:int = Bool;
-messages.sendEncrypted#a9776773 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.sendEncryptedFile#9a901b66 peer:InputEncryptedChat random_id:long data:bytes file:InputEncryptedFile = messages.SentEncryptedMessage;
-messages.sendEncryptedService#32d439a4 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.receivedQueue#55a5bb66 max_qts:int = Vector<long>;
-
-upload.saveBigFilePart#de7b673d file_id:long file_part:int file_total_parts:int bytes:bytes = Bool;
-
-initConnection#69796de9 {X:Type} api_id:int device_model:string system_version:string app_version:string lang_code:string query:!X = X;
-
-help.getSupport#9cdf08cd = help.Support;
-
-auth.sendSms#da9f3e8 phone_number:string phone_code_hash:string = Bool;
-
-invokeWithLayer16#cf5f0987 {X:Type} query:!X = X;
diff --git a/protocols/Telegram/docs/tgl/scheme17.tl b/protocols/Telegram/docs/tgl/scheme17.tl
deleted file mode 100644
index c564155c19..0000000000
--- a/protocols/Telegram/docs/tgl/scheme17.tl
+++ /dev/null
@@ -1,528 +0,0 @@
-int ?= Int;
-long ?= Long;
-double ?= Double;
-string ?= String;
-
-bytes string = Bytes;
-
-boolFalse#bc799737 = Bool;
-boolTrue#997275b5 = Bool;
-
-vector#1cb5c415 {t:Type} # [ t ] = Vector t;
-
-error#c4b9f9bb code:int text:string = Error;
-
-null#56730bcc = Null;
-
-inputPeerEmpty#7f3b18ea = InputPeer;
-inputPeerSelf#7da07ec9 = InputPeer;
-inputPeerContact#1023dbe8 user_id:int = InputPeer;
-inputPeerForeign#9b447325 user_id:int access_hash:long = InputPeer;
-inputPeerChat#179be863 chat_id:int = InputPeer;
-
-inputUserEmpty#b98886cf = InputUser;
-inputUserSelf#f7c1b13f = InputUser;
-inputUserContact#86e94f65 user_id:int = InputUser;
-inputUserForeign#655e74ff user_id:int access_hash:long = InputUser;
-
-inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact;
-
-inputFile#f52ff27f id:long parts:int name:string md5_checksum:string = InputFile;
-
-inputMediaEmpty#9664f57f = InputMedia;
-inputMediaUploadedPhoto#2dc53a7d file:InputFile = InputMedia;
-inputMediaPhoto#8f2ab2ec id:InputPhoto = InputMedia;
-inputMediaGeoPoint#f9c44144 geo_point:InputGeoPoint = InputMedia;
-inputMediaContact#a6e45987 phone_number:string first_name:string last_name:string = InputMedia;
-inputMediaUploadedVideo#133ad6f6 file:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaUploadedThumbVideo#9912dabf file:InputFile thumb:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaVideo#7f023ae6 id:InputVideo = InputMedia;
-
-inputChatPhotoEmpty#1ca48f57 = InputChatPhoto;
-inputChatUploadedPhoto#94254732 file:InputFile crop:InputPhotoCrop = InputChatPhoto;
-inputChatPhoto#b2e1bf08 id:InputPhoto crop:InputPhotoCrop = InputChatPhoto;
-
-inputGeoPointEmpty#e4c123d6 = InputGeoPoint;
-inputGeoPoint#f3b7acc9 lat:double long:double = InputGeoPoint;
-
-inputPhotoEmpty#1cd7bf0d = InputPhoto;
-inputPhoto#fb95c6c4 id:long access_hash:long = InputPhoto;
-
-inputVideoEmpty#5508ec75 = InputVideo;
-inputVideo#ee579652 id:long access_hash:long = InputVideo;
-
-inputFileLocation#14637196 volume_id:long local_id:int secret:long = InputFileLocation;
-inputVideoFileLocation#3d0364ec id:long access_hash:long = InputFileLocation;
-
-inputPhotoCropAuto#ade6b004 = InputPhotoCrop;
-inputPhotoCrop#d9915325 crop_left:double crop_top:double crop_width:double = InputPhotoCrop;
-
-inputAppEvent#770656a8 time:double type:string peer:long data:string = InputAppEvent;
-
-peerUser#9db1bc6d user_id:int = Peer;
-peerChat#bad0e5bb chat_id:int = Peer;
-
-storage.fileUnknown#aa963b05 = storage.FileType;
-storage.fileJpeg#7efe0e = storage.FileType;
-storage.fileGif#cae1aadf = storage.FileType;
-storage.filePng#a4f63c0 = storage.FileType;
-storage.filePdf#ae1e508d = storage.FileType;
-storage.fileMp3#528a0677 = storage.FileType;
-storage.fileMov#4b09ebbc = storage.FileType;
-storage.filePartial#40bc6f52 = storage.FileType;
-storage.fileMp4#b3cea0e4 = storage.FileType;
-storage.fileWebp#1081464c = storage.FileType;
-
-fileLocationUnavailable#7c596b46 volume_id:long local_id:int secret:long = FileLocation;
-fileLocation#53d69076 dc_id:int volume_id:long local_id:int secret:long = FileLocation;
-
-userEmpty#200250ba id:int = User;
-userSelf#720535ec id:int first_name:string last_name:string phone:string photo:UserProfilePhoto status:UserStatus inactive:Bool = User;
-userContact#f2fb8319 id:int first_name:string last_name:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userRequest#22e8ceb0 id:int first_name:string last_name:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userForeign#5214c89d id:int first_name:string last_name:string access_hash:long photo:UserProfilePhoto status:UserStatus = User;
-userDeleted#b29ad7cc id:int first_name:string last_name:string = User;
-
-userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
-userProfilePhoto#d559d8c8 photo_id:long photo_small:FileLocation photo_big:FileLocation = UserProfilePhoto;
-
-userStatusEmpty#9d05049 = UserStatus;
-userStatusOnline#edb93949 expires:int = UserStatus;
-userStatusOffline#8c703f was_online:int = UserStatus;
-
-chatEmpty#9ba2d800 id:int = Chat;
-chat#6e9c9bc7 id:int title:string photo:ChatPhoto participants_count:int date:int left:Bool version:int = Chat;
-chatForbidden#fb0ccc41 id:int title:string date:int = Chat;
-
-chatFull#630e61be id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings = ChatFull;
-
-chatParticipant#c8d7493e user_id:int inviter_id:int date:int = ChatParticipant;
-
-chatParticipantsForbidden#fd2bb8a chat_id:int = ChatParticipants;
-chatParticipants#7841b415 chat_id:int admin_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
-
-chatPhotoEmpty#37c1011c = ChatPhoto;
-chatPhoto#6153276a photo_small:FileLocation photo_big:FileLocation = ChatPhoto;
-
-messageEmpty#83e5de54 id:int = Message;
-//message#22eb6aba id:int from_id:int to_id:Peer out:Bool unread:Bool date:int message:string media:MessageMedia = Message;
-//messageForwarded#5f46804 id:int fwd_from_id:int fwd_date:int from_id:int to_id:Peer out:Bool unread:Bool date:int message:string media:MessageMedia = Message;
-//messageService#9f8d60bb id:int from_id:int to_id:Peer out:Bool unread:Bool date:int action:MessageAction = Message;
-
-messageMediaEmpty#3ded6320 = MessageMedia;
-messageMediaPhoto#c8c45a2a photo:Photo = MessageMedia;
-messageMediaVideo#a2d24290 video:Video = MessageMedia;
-messageMediaGeo#56e0d474 geo:GeoPoint = MessageMedia;
-messageMediaContact#5e7d2f39 phone_number:string first_name:string last_name:string user_id:int = MessageMedia;
-messageMediaUnsupported#29632a36 bytes:bytes = MessageMedia;
-
-messageActionEmpty#b6aef7b0 = MessageAction;
-messageActionChatCreate#a6638b9a title:string users:Vector<int> = MessageAction;
-messageActionChatEditTitle#b5a1ce5a title:string = MessageAction;
-messageActionChatEditPhoto#7fcb13a8 photo:Photo = MessageAction;
-messageActionChatDeletePhoto#95e3fbef = MessageAction;
-messageActionChatAddUser#5e3cfc4b user_id:int = MessageAction;
-messageActionChatDeleteUser#b2ae9b0c user_id:int = MessageAction;
-
-dialog#ab3a99ac peer:Peer top_message:int unread_count:int notify_settings:PeerNotifySettings = Dialog;
-
-photoEmpty#2331b22d id:long = Photo;
-photo#22b56751 id:long access_hash:long user_id:int date:int caption:string geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-
-photoSizeEmpty#e17e23c type:string = PhotoSize;
-photoSize#77bfb61b type:string location:FileLocation w:int h:int size:int = PhotoSize;
-photoCachedSize#e9a734fa type:string location:FileLocation w:int h:int bytes:bytes = PhotoSize;
-
-videoEmpty#c10658a8 id:long = Video;
-video#388fa391 id:long access_hash:long user_id:int date:int caption:string duration:int mime_type:string size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-
-geoPointEmpty#1117dd5f = GeoPoint;
-geoPoint#2049d70c long:double lat:double = GeoPoint;
-
-auth.checkedPhone#e300cc3b phone_registered:Bool phone_invited:Bool = auth.CheckedPhone;
-
-auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-auth.authorization#f6b673a4 expires:int user:User = auth.Authorization;
-
-auth.exportedAuthorization#df969c2d id:int bytes:bytes = auth.ExportedAuthorization;
-
-inputNotifyPeer#b8bc5b0c peer:InputPeer = InputNotifyPeer;
-inputNotifyUsers#193b4417 = InputNotifyPeer;
-inputNotifyChats#4a95e84e = InputNotifyPeer;
-inputNotifyAll#a429b886 = InputNotifyPeer;
-
-inputPeerNotifyEventsEmpty#f03064d8 = InputPeerNotifyEvents;
-inputPeerNotifyEventsAll#e86a2c74 = InputPeerNotifyEvents;
-
-inputPeerNotifySettings#46a2ce98 mute_until:int sound:string show_previews:Bool events_mask:int = InputPeerNotifySettings;
-
-peerNotifyEventsEmpty#add53cb3 = PeerNotifyEvents;
-peerNotifyEventsAll#6d1ded88 = PeerNotifyEvents;
-
-peerNotifySettingsEmpty#70a68512 = PeerNotifySettings;
-peerNotifySettings#8d5e11ee mute_until:int sound:string show_previews:Bool events_mask:int = PeerNotifySettings;
-
-wallPaper#ccb03657 id:int title:string sizes:Vector<PhotoSize> color:int = WallPaper;
-
-userFull#771095da user:User link:contacts.Link profile_photo:Photo notify_settings:PeerNotifySettings blocked:Bool real_first_name:string real_last_name:string = UserFull;
-
-contact#f911c994 user_id:int mutual:Bool = Contact;
-
-importedContact#d0028438 user_id:int client_id:long = ImportedContact;
-
-contactBlocked#561bc879 user_id:int date:int = ContactBlocked;
-
-contactFound#ea879f95 user_id:int = ContactFound;
-
-contactSuggested#3de191a1 user_id:int mutual_contacts:int = ContactSuggested;
-
-contactStatus#aa77b873 user_id:int expires:int = ContactStatus;
-
-chatLocated#3631cf4c chat_id:int distance:int = ChatLocated;
-
-contacts.foreignLinkUnknown#133421f8 = contacts.ForeignLink;
-contacts.foreignLinkRequested#a7801f47 has_phone:Bool = contacts.ForeignLink;
-contacts.foreignLinkMutual#1bea8ce1 = contacts.ForeignLink;
-
-contacts.myLinkEmpty#d22a1c60 = contacts.MyLink;
-contacts.myLinkRequested#6c69efee contact:Bool = contacts.MyLink;
-contacts.myLinkContact#c240ebd9 = contacts.MyLink;
-
-contacts.link#eccea3f5 my_link:contacts.MyLink foreign_link:contacts.ForeignLink user:User = contacts.Link;
-
-contacts.contacts#6f8b8cb2 contacts:Vector<Contact> users:Vector<User> = contacts.Contacts;
-contacts.contactsNotModified#b74ba9d2 = contacts.Contacts;
-
-contacts.importedContacts#ad524315 imported:Vector<ImportedContact> retry_contacts:Vector<long> users:Vector<User> = contacts.ImportedContacts;
-
-contacts.blocked#1c138d15 blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-contacts.blockedSlice#900802a1 count:int blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-
-contacts.found#566000e results:Vector<ContactFound> users:Vector<User> = contacts.Found;
-
-contacts.suggested#5649dcc5 results:Vector<ContactSuggested> users:Vector<User> = contacts.Suggested;
-
-messages.dialogs#15ba6c40 dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-messages.dialogsSlice#71e094f3 count:int dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-
-messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-messages.messagesSlice#b446ae3 count:int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-
-messages.messageEmpty#3f4e0648 = messages.Message;
-messages.message#ff90c417 message:Message chats:Vector<Chat> users:Vector<User> = messages.Message;
-
-messages.statedMessages#969478bb messages:Vector<Message> chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessage#d07ae726 message:Message chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessage#d1f4d35c id:int date:int pts:int seq:int = messages.SentMessage;
-
-messages.chat#40e9002a chat:Chat users:Vector<User> = messages.Chat;
-
-messages.chats#8150cbd8 chats:Vector<Chat> users:Vector<User> = messages.Chats;
-
-messages.chatFull#e5d7d19c full_chat:ChatFull chats:Vector<Chat> users:Vector<User> = messages.ChatFull;
-
-messages.affectedHistory#b7de36f2 pts:int seq:int offset:int = messages.AffectedHistory;
-
-inputMessagesFilterEmpty#57e2f66c = MessagesFilter;
-inputMessagesFilterPhotos#9609a51c = MessagesFilter;
-inputMessagesFilterVideo#9fc00e65 = MessagesFilter;
-inputMessagesFilterPhotoVideo#56e9f0e4 = MessagesFilter;
-inputMessagesFilterDocument#9eddf188 = MessagesFilter;
-inputMessagesFilterAudio#cfc87522 = MessagesFilter;
-
-updateNewMessage#13abdb3 message:Message pts:int = Update;
-updateMessageID#4e90bfd6 id:int random_id:long = Update;
-updateReadMessages#c6649e31 messages:Vector<int> pts:int = Update;
-updateDeleteMessages#a92bfe26 messages:Vector<int> pts:int = Update;
-updateRestoreMessages#d15de04d messages:Vector<int> pts:int = Update;
-//updateUserTyping#6baa8508 user_id:int = Update;
-//updateChatUserTyping#3c46cfe6 chat_id:int user_id:int = Update;
-updateChatParticipants#7761198 participants:ChatParticipants = Update;
-updateUserStatus#1bfbd823 user_id:int status:UserStatus = Update;
-updateUserName#da22d9ad user_id:int first_name:string last_name:string = Update;
-updateUserPhoto#95313b0c user_id:int date:int photo:UserProfilePhoto previous:Bool = Update;
-updateContactRegistered#2575bbb9 user_id:int date:int = Update;
-updateContactLink#51a48a9a user_id:int my_link:contacts.MyLink foreign_link:contacts.ForeignLink = Update;
-updateActivation#6f690963 user_id:int = Update;
-updateNewAuthorization#8f06529a auth_key_id:long date:int device:string location:string = Update;
-
-updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
-
-updates.differenceEmpty#5d75a138 date:int seq:int = updates.Difference;
-updates.difference#f49ca0 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> state:updates.State = updates.Difference;
-updates.differenceSlice#a8fb1981 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> intermediate_state:updates.State = updates.Difference;
-
-updatesTooLong#e317af7e = Updates;
-updateShortMessage#d3f45784 id:int from_id:int message:string pts:int date:int seq:int = Updates;
-updateShortChatMessage#2b2fbd4e id:int from_id:int chat_id:int message:string pts:int date:int seq:int = Updates;
-updateShort#78d4dec1 update:Update date:int = Updates;
-updatesCombined#725b04c3 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq_start:int seq:int = Updates;
-updates#74ae4240 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq:int = Updates;
-
-photos.photos#8dca6aa5 photos:Vector<Photo> users:Vector<User> = photos.Photos;
-photos.photosSlice#15051f54 count:int photos:Vector<Photo> users:Vector<User> = photos.Photos;
-
-photos.photo#20212ca8 photo:Photo users:Vector<User> = photos.Photo;
-
-upload.file#96a18d5 type:storage.FileType mtime:int bytes:bytes = upload.File;
-
-dcOption#2ec2a43c id:int hostname:string ip_address:string port:int = DcOption;
-
-config#2e54dd74 date:int test_mode:Bool this_dc:int dc_options:Vector<DcOption> chat_size_max:int broadcast_size_max:int = Config;
-
-nearestDc#8e1a1775 country:string this_dc:int nearest_dc:int = NearestDc;
-
-help.appUpdate#8987f311 id:int critical:Bool url:string text:string = help.AppUpdate;
-help.noAppUpdate#c45a6536 = help.AppUpdate;
-
-help.inviteText#18cb9f78 message:string = help.InviteText;
-
-messages.statedMessagesLinks#3e74f5c6 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessageLink#a9af2881 message:Message chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessageLink#e9db4a3f id:int date:int pts:int seq:int links:Vector<contacts.Link> = messages.SentMessage;
-
-inputGeoChat#74d456fa chat_id:int access_hash:long = InputGeoChat;
-
-inputNotifyGeoChatPeer#4d8ddec8 peer:InputGeoChat = InputNotifyPeer;
-
-geoChat#75eaea5a id:int access_hash:long title:string address:string venue:string geo:GeoPoint photo:ChatPhoto participants_count:int date:int checked_in:Bool version:int = Chat;
-
-geoChatMessageEmpty#60311a9b chat_id:int id:int = GeoChatMessage;
-geoChatMessage#4505f8e1 chat_id:int id:int from_id:int date:int message:string media:MessageMedia = GeoChatMessage;
-geoChatMessageService#d34fa24e chat_id:int id:int from_id:int date:int action:MessageAction = GeoChatMessage;
-
-geochats.statedMessage#17b1578b message:GeoChatMessage chats:Vector<Chat> users:Vector<User> seq:int = geochats.StatedMessage;
-
-geochats.located#48feb267 results:Vector<ChatLocated> messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Located;
-
-geochats.messages#d1526db1 messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-geochats.messagesSlice#bc5863e8 count:int messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-
-messageActionGeoChatCreate#6f038ebc title:string address:string = MessageAction;
-messageActionGeoChatCheckin#c7d53de = MessageAction;
-
-updateNewGeoChatMessage#5a68e3f7 message:GeoChatMessage = Update;
-
-wallPaperSolid#63117f24 id:int title:string bg_color:int color:int = WallPaper;
-
-updateNewEncryptedMessage#12bcbd9a message:EncryptedMessage qts:int = Update;
-updateEncryptedChatTyping#1710f156 chat_id:int = Update;
-updateEncryption#b4a2e88d chat:EncryptedChat date:int = Update;
-updateEncryptedMessagesRead#38fe25b7 chat_id:int max_date:int date:int = Update;
-
-encryptedChatEmpty#ab7ec0a0 id:int = EncryptedChat;
-encryptedChatWaiting#3bf703dc id:int access_hash:long date:int admin_id:int participant_id:int = EncryptedChat;
-encryptedChatRequested#c878527e id:int access_hash:long date:int admin_id:int participant_id:int g_a:bytes = EncryptedChat;
-encryptedChat#fa56ce36 id:int access_hash:long date:int admin_id:int participant_id:int g_a_or_b:bytes key_fingerprint:long = EncryptedChat;
-encryptedChatDiscarded#13d6dd27 id:int = EncryptedChat;
-
-inputEncryptedChat#f141b5e1 chat_id:int access_hash:long = InputEncryptedChat;
-
-encryptedFileEmpty#c21f497e = EncryptedFile;
-encryptedFile#4a70994c id:long access_hash:long size:int dc_id:int key_fingerprint:int = EncryptedFile;
-
-inputEncryptedFileEmpty#1837c364 = InputEncryptedFile;
-inputEncryptedFileUploaded#64bd0306 id:long parts:int md5_checksum:string key_fingerprint:int = InputEncryptedFile;
-inputEncryptedFile#5a17b5e5 id:long access_hash:long = InputEncryptedFile;
-
-inputEncryptedFileLocation#f5235d55 id:long access_hash:long = InputFileLocation;
-
-encryptedMessage#ed18c118 random_id:long chat_id:int date:int bytes:bytes file:EncryptedFile = EncryptedMessage;
-encryptedMessageService#23734b06 random_id:long chat_id:int date:int bytes:bytes = EncryptedMessage;
-
-messages.dhConfigNotModified#c0e24635 random:bytes = messages.DhConfig;
-messages.dhConfig#2c221edd g:int p:bytes version:int random:bytes = messages.DhConfig;
-
-messages.sentEncryptedMessage#560f8935 date:int = messages.SentEncryptedMessage;
-messages.sentEncryptedFile#9493ff32 date:int file:EncryptedFile = messages.SentEncryptedMessage;
-
-inputFileBig#fa4f0bb5 id:long parts:int name:string = InputFile;
-
-inputEncryptedFileBigUploaded#2dc173c8 id:long parts:int key_fingerprint:int = InputEncryptedFile;
-
-updateChatParticipantAdd#3a0eeb22 chat_id:int user_id:int inviter_id:int version:int = Update;
-updateChatParticipantDelete#6e5f8c22 chat_id:int user_id:int version:int = Update;
-updateDcOptions#8e5e9873 dc_options:Vector<DcOption> = Update;
-
-inputMediaUploadedAudio#4e498cab file:InputFile duration:int mime_type:string = InputMedia;
-inputMediaAudio#89938781 id:InputAudio = InputMedia;
-inputMediaUploadedDocument#34e794bd file:InputFile file_name:string mime_type:string = InputMedia;
-inputMediaUploadedThumbDocument#3e46de5d file:InputFile thumb:InputFile file_name:string mime_type:string = InputMedia;
-inputMediaDocument#d184e841 id:InputDocument = InputMedia;
-
-messageMediaDocument#2fda2204 document:Document = MessageMedia;
-messageMediaAudio#c6b68300 audio:Audio = MessageMedia;
-
-inputAudioEmpty#d95adc84 = InputAudio;
-inputAudio#77d440ff id:long access_hash:long = InputAudio;
-
-inputDocumentEmpty#72f0eaae = InputDocument;
-inputDocument#18798952 id:long access_hash:long = InputDocument;
-
-inputAudioFileLocation#74dc404d id:long access_hash:long = InputFileLocation;
-inputDocumentFileLocation#4e45abe9 id:long access_hash:long = InputFileLocation;
-
-audioEmpty#586988d8 id:long = Audio;
-audio#c7ac6496 id:long access_hash:long user_id:int date:int duration:int mime_type:string size:int dc_id:int = Audio;
-
-documentEmpty#36f8c871 id:long = Document;
-document#9efc6326 id:long access_hash:long user_id:int date:int file_name:string mime_type:string size:int thumb:PhotoSize dc_id:int = Document;
-
-help.support#17c6b5f6 phone_number:string user:User = help.Support;
-
-notifyPeer#9fd40bd8 peer:Peer = NotifyPeer;
-notifyUsers#b4c83b4c = NotifyPeer;
-notifyChats#c007cec3 = NotifyPeer;
-notifyAll#74d07c60 = NotifyPeer;
-
-updateUserBlocked#80ece81a user_id:int blocked:Bool = Update;
-updateNotifySettings#bec268ef peer:NotifyPeer notify_settings:PeerNotifySettings = Update;
-
-auth.sentAppCode#e325edcf phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-updateUserTyping#5c486927 user_id:int action:SendMessageAction = Update;
-updateChatUserTyping#9a65ea1f chat_id:int user_id:int action:SendMessageAction = Update;
-
-
-message#567699b3 flags:int id:int from_id:int to_id:Peer date:int message:string media:MessageMedia = Message;
-messageForwarded#a367e716 flags:int id:int fwd_from_id:int fwd_date:int from_id:int to_id:Peer date:int message:string media:MessageMedia = Message;
-messageService#1d86f70e flags:int id:int from_id:int to_id:Peer date:int action:MessageAction = Message;
-
-
-sendMessageTypingAction#16bf744e = SendMessageAction;
-sendMessageCancelAction#fd5ec8f5 = SendMessageAction;
-sendMessageRecordVideoAction#a187d66f = SendMessageAction;
-sendMessageUploadVideoAction#92042ff7 = SendMessageAction;
-sendMessageRecordAudioAction#d52f73f7 = SendMessageAction;
-sendMessageUploadAudioAction#e6ac8a6f = SendMessageAction;
-sendMessageUploadPhotoAction#990a3c1a = SendMessageAction;
-sendMessageUploadDocumentAction#8faee98e = SendMessageAction;
-sendMessageGeoLocationAction#176f8ba1 = SendMessageAction;
-sendMessageChooseContactAction#628cbc6f = SendMessageAction;
-
----functions---
-
-invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
-
-invokeAfterMsgs#3dc4b4f0 {X:Type} msg_ids:Vector<long> query:!X = X;
-
-auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone;
-auth.sendCode#768d5f4d phone_number:string sms_type:int api_id:int api_hash:string lang_code:string = auth.SentCode;
-auth.sendCall#3c51564 phone_number:string phone_code_hash:string = Bool;
-auth.signUp#1b067634 phone_number:string phone_code_hash:string phone_code:string first_name:string last_name:string = auth.Authorization;
-auth.signIn#bcd51581 phone_number:string phone_code_hash:string phone_code:string = auth.Authorization;
-auth.logOut#5717da40 = Bool;
-auth.resetAuthorizations#9fab0d1a = Bool;
-auth.sendInvites#771c1d97 phone_numbers:Vector<string> message:string = Bool;
-auth.exportAuthorization#e5bfffcd dc_id:int = auth.ExportedAuthorization;
-auth.importAuthorization#e3ef9613 id:int bytes:bytes = auth.Authorization;
-auth.bindTempAuthKey#cdd42a05 perm_auth_key_id:long nonce:long expires_at:int encrypted_message:bytes = Bool;
-
-account.registerDevice#446c712c token_type:int token:string device_model:string system_version:string app_version:string app_sandbox:Bool lang_code:string = Bool;
-account.unregisterDevice#65c55b40 token_type:int token:string = Bool;
-account.updateNotifySettings#84be5b93 peer:InputNotifyPeer settings:InputPeerNotifySettings = Bool;
-account.getNotifySettings#12b3ad31 peer:InputNotifyPeer = PeerNotifySettings;
-account.resetNotifySettings#db7e1747 = Bool;
-account.updateProfile#f0888d68 first_name:string last_name:string = User;
-account.updateStatus#6628562c offline:Bool = Bool;
-account.getWallPapers#c04cfac2 = Vector<WallPaper>;
-
-users.getUsers#d91a548 id:Vector<InputUser> = Vector<User>;
-users.getFullUser#ca30a5b1 id:InputUser = UserFull;
-
-contacts.getStatuses#c4a353ee = Vector<ContactStatus>;
-contacts.getContacts#22c6aa08 hash:string = contacts.Contacts;
-contacts.importContacts#da30b32d contacts:Vector<InputContact> replace:Bool = contacts.ImportedContacts;
-contacts.search#11f812d8 q:string limit:int = contacts.Found;
-contacts.getSuggested#cd773428 limit:int = contacts.Suggested;
-contacts.deleteContact#8e953744 id:InputUser = contacts.Link;
-contacts.deleteContacts#59ab389e id:Vector<InputUser> = Bool;
-contacts.block#332b49fc id:InputUser = Bool;
-contacts.unblock#e54100bd id:InputUser = Bool;
-contacts.getBlocked#f57c350f offset:int limit:int = contacts.Blocked;
-contacts.exportCard#84e53737 = Vector<int>;
-contacts.importCard#4fe196fe export_card:Vector<int> = User;
-
-messages.getMessages#4222fa74 id:Vector<int> = messages.Messages;
-messages.getDialogs#eccf1df6 offset:int max_id:int limit:int = messages.Dialogs;
-messages.getHistory#92a1df2f peer:InputPeer offset:int max_id:int limit:int = messages.Messages;
-messages.search#7e9f2ab peer:InputPeer q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = messages.Messages;
-messages.readHistory#eed884c6 peer:InputPeer max_id:int offset:int read_contents:Bool = messages.AffectedHistory;
-messages.deleteHistory#f4f8fb61 peer:InputPeer offset:int = messages.AffectedHistory;
-messages.deleteMessages#14f2dd0a id:Vector<int> = Vector<int>;
-messages.restoreMessages#395f9d7e id:Vector<int> = Vector<int>;
-messages.receivedMessages#28abcb68 max_id:int = Vector<int>;
-messages.setTyping#a3825e50 peer:InputPeer action:SendMessageAction = Bool;
-messages.sendMessage#4cde0aab peer:InputPeer message:string random_id:long = messages.SentMessage;
-messages.sendMedia#a3c85d76 peer:InputPeer media:InputMedia random_id:long = messages.StatedMessage;
-messages.forwardMessages#514cd10f peer:InputPeer id:Vector<int> = messages.StatedMessages;
-messages.getChats#3c6aa187 id:Vector<int> = messages.Chats;
-messages.getFullChat#3b831c66 chat_id:int = messages.ChatFull;
-messages.editChatTitle#b4bc68b5 chat_id:int title:string = messages.StatedMessage;
-messages.editChatPhoto#d881821d chat_id:int photo:InputChatPhoto = messages.StatedMessage;
-messages.addChatUser#2ee9ee9e chat_id:int user_id:InputUser fwd_limit:int = messages.StatedMessage;
-messages.deleteChatUser#c3c5cd23 chat_id:int user_id:InputUser = messages.StatedMessage;
-messages.createChat#419d9aee users:Vector<InputUser> title:string = messages.StatedMessage;
-
-updates.getState#edd4882a = updates.State;
-updates.getDifference#a041495 pts:int date:int qts:int = updates.Difference;
-
-photos.updateProfilePhoto#eef579a0 id:InputPhoto crop:InputPhotoCrop = UserProfilePhoto;
-photos.uploadProfilePhoto#d50f9c88 file:InputFile caption:string geo_point:InputGeoPoint crop:InputPhotoCrop = photos.Photo;
-
-upload.saveFilePart#b304a621 file_id:long file_part:int bytes:bytes = Bool;
-upload.getFile#e3a6cfb5 location:InputFileLocation offset:int limit:int = upload.File;
-
-help.getConfig#c4f9186b = Config;
-help.getNearestDc#1fb33026 = NearestDc;
-help.getAppUpdate#c812ac7e device_model:string system_version:string app_version:string lang_code:string = help.AppUpdate;
-help.saveAppLog#6f02f748 events:Vector<InputAppEvent> = Bool;
-help.getInviteText#a4a95186 lang_code:string = help.InviteText;
-
-photos.getUserPhotos#b7ee553c user_id:InputUser offset:int max_id:int limit:int = photos.Photos;
-
-messages.forwardMessage#3f3f4f2 peer:InputPeer id:int random_id:long = messages.StatedMessage;
-messages.sendBroadcast#41bb0972 contacts:Vector<InputUser> message:string media:InputMedia = messages.StatedMessages;
-
-geochats.getLocated#7f192d8f geo_point:InputGeoPoint radius:int limit:int = geochats.Located;
-geochats.getRecents#e1427e6f offset:int limit:int = geochats.Messages;
-geochats.checkin#55b3e8fb peer:InputGeoChat = geochats.StatedMessage;
-geochats.getFullChat#6722dd6f peer:InputGeoChat = messages.ChatFull;
-geochats.editChatTitle#4c8e2273 peer:InputGeoChat title:string address:string = geochats.StatedMessage;
-geochats.editChatPhoto#35d81a95 peer:InputGeoChat photo:InputChatPhoto = geochats.StatedMessage;
-geochats.search#cfcdc44d peer:InputGeoChat q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = geochats.Messages;
-geochats.getHistory#b53f7a68 peer:InputGeoChat offset:int max_id:int limit:int = geochats.Messages;
-geochats.setTyping#8b8a729 peer:InputGeoChat typing:Bool = Bool;
-geochats.sendMessage#61b0044 peer:InputGeoChat message:string random_id:long = geochats.StatedMessage;
-geochats.sendMedia#b8f0deff peer:InputGeoChat media:InputMedia random_id:long = geochats.StatedMessage;
-geochats.createGeoChat#e092e16 title:string geo_point:InputGeoPoint address:string venue:string = geochats.StatedMessage;
-
-messages.getDhConfig#26cf8950 version:int random_length:int = messages.DhConfig;
-messages.requestEncryption#f64daf43 user_id:InputUser random_id:int g_a:bytes = EncryptedChat;
-messages.acceptEncryption#3dbc0415 peer:InputEncryptedChat g_b:bytes key_fingerprint:long = EncryptedChat;
-messages.discardEncryption#edd923c5 chat_id:int = Bool;
-messages.setEncryptedTyping#791451ed peer:InputEncryptedChat typing:Bool = Bool;
-messages.readEncryptedHistory#7f4b690a peer:InputEncryptedChat max_date:int = Bool;
-messages.sendEncrypted#a9776773 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.sendEncryptedFile#9a901b66 peer:InputEncryptedChat random_id:long data:bytes file:InputEncryptedFile = messages.SentEncryptedMessage;
-messages.sendEncryptedService#32d439a4 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.receivedQueue#55a5bb66 max_qts:int = Vector<long>;
-
-upload.saveBigFilePart#de7b673d file_id:long file_part:int file_total_parts:int bytes:bytes = Bool;
-
-initConnection#69796de9 {X:Type} api_id:int device_model:string system_version:string app_version:string lang_code:string query:!X = X;
-
-help.getSupport#9cdf08cd = help.Support;
-
-auth.sendSms#da9f3e8 phone_number:string phone_code_hash:string = Bool;
-
-messages.readMessageContents id:Vector<int> = Vector<int>;
-
-
-invokeWithLayer17#50858a19 {X:Type} query:!X = X;
-
diff --git a/protocols/Telegram/docs/tgl/scheme18.tl b/protocols/Telegram/docs/tgl/scheme18.tl
deleted file mode 100644
index 6b7fdd5fc4..0000000000
--- a/protocols/Telegram/docs/tgl/scheme18.tl
+++ /dev/null
@@ -1,535 +0,0 @@
-int ?= Int;
-long ?= Long;
-double ?= Double;
-string ?= String;
-
-bytes string = Bytes;
-
-boolFalse#bc799737 = Bool;
-boolTrue#997275b5 = Bool;
-
-vector#1cb5c415 {t:Type} # [ t ] = Vector t;
-
-error#c4b9f9bb code:int text:string = Error;
-
-null#56730bcc = Null;
-
-inputPeerEmpty#7f3b18ea = InputPeer;
-inputPeerSelf#7da07ec9 = InputPeer;
-inputPeerContact#1023dbe8 user_id:int = InputPeer;
-inputPeerForeign#9b447325 user_id:int access_hash:long = InputPeer;
-inputPeerChat#179be863 chat_id:int = InputPeer;
-
-inputUserEmpty#b98886cf = InputUser;
-inputUserSelf#f7c1b13f = InputUser;
-inputUserContact#86e94f65 user_id:int = InputUser;
-inputUserForeign#655e74ff user_id:int access_hash:long = InputUser;
-
-inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact;
-
-inputFile#f52ff27f id:long parts:int name:string md5_checksum:string = InputFile;
-
-inputMediaEmpty#9664f57f = InputMedia;
-inputMediaUploadedPhoto#2dc53a7d file:InputFile = InputMedia;
-inputMediaPhoto#8f2ab2ec id:InputPhoto = InputMedia;
-inputMediaGeoPoint#f9c44144 geo_point:InputGeoPoint = InputMedia;
-inputMediaContact#a6e45987 phone_number:string first_name:string last_name:string = InputMedia;
-inputMediaUploadedVideo#133ad6f6 file:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaUploadedThumbVideo#9912dabf file:InputFile thumb:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaVideo#7f023ae6 id:InputVideo = InputMedia;
-
-inputChatPhotoEmpty#1ca48f57 = InputChatPhoto;
-inputChatUploadedPhoto#94254732 file:InputFile crop:InputPhotoCrop = InputChatPhoto;
-inputChatPhoto#b2e1bf08 id:InputPhoto crop:InputPhotoCrop = InputChatPhoto;
-
-inputGeoPointEmpty#e4c123d6 = InputGeoPoint;
-inputGeoPoint#f3b7acc9 lat:double long:double = InputGeoPoint;
-
-inputPhotoEmpty#1cd7bf0d = InputPhoto;
-inputPhoto#fb95c6c4 id:long access_hash:long = InputPhoto;
-
-inputVideoEmpty#5508ec75 = InputVideo;
-inputVideo#ee579652 id:long access_hash:long = InputVideo;
-
-inputFileLocation#14637196 volume_id:long local_id:int secret:long = InputFileLocation;
-inputVideoFileLocation#3d0364ec id:long access_hash:long = InputFileLocation;
-
-inputPhotoCropAuto#ade6b004 = InputPhotoCrop;
-inputPhotoCrop#d9915325 crop_left:double crop_top:double crop_width:double = InputPhotoCrop;
-
-inputAppEvent#770656a8 time:double type:string peer:long data:string = InputAppEvent;
-
-peerUser#9db1bc6d user_id:int = Peer;
-peerChat#bad0e5bb chat_id:int = Peer;
-
-storage.fileUnknown#aa963b05 = storage.FileType;
-storage.fileJpeg#7efe0e = storage.FileType;
-storage.fileGif#cae1aadf = storage.FileType;
-storage.filePng#a4f63c0 = storage.FileType;
-storage.filePdf#ae1e508d = storage.FileType;
-storage.fileMp3#528a0677 = storage.FileType;
-storage.fileMov#4b09ebbc = storage.FileType;
-storage.filePartial#40bc6f52 = storage.FileType;
-storage.fileMp4#b3cea0e4 = storage.FileType;
-storage.fileWebp#1081464c = storage.FileType;
-
-fileLocationUnavailable#7c596b46 volume_id:long local_id:int secret:long = FileLocation;
-fileLocation#53d69076 dc_id:int volume_id:long local_id:int secret:long = FileLocation;
-
-userEmpty#200250ba id:int = User;
-userSelf#7007b451 id:int first_name:string last_name:string username:string phone:string photo:UserProfilePhoto status:UserStatus inactive:Bool = User;
-userContact#cab35e18 id:int first_name:string last_name:string username:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userRequest#d9ccc4ef id:int first_name:string last_name:string username:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userForeign#75cf7a8 id:int first_name:string last_name:string username:string access_hash:long photo:UserProfilePhoto status:UserStatus = User;
-userDeleted#d6016d7a id:int first_name:string last_name:string username:string = User;
-
-
-userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
-userProfilePhoto#d559d8c8 photo_id:long photo_small:FileLocation photo_big:FileLocation = UserProfilePhoto;
-
-userStatusEmpty#9d05049 = UserStatus;
-userStatusOnline#edb93949 expires:int = UserStatus;
-userStatusOffline#8c703f was_online:int = UserStatus;
-
-chatEmpty#9ba2d800 id:int = Chat;
-chat#6e9c9bc7 id:int title:string photo:ChatPhoto participants_count:int date:int left:Bool version:int = Chat;
-chatForbidden#fb0ccc41 id:int title:string date:int = Chat;
-
-chatFull#630e61be id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings = ChatFull;
-
-chatParticipant#c8d7493e user_id:int inviter_id:int date:int = ChatParticipant;
-
-chatParticipantsForbidden#fd2bb8a chat_id:int = ChatParticipants;
-chatParticipants#7841b415 chat_id:int admin_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
-
-chatPhotoEmpty#37c1011c = ChatPhoto;
-chatPhoto#6153276a photo_small:FileLocation photo_big:FileLocation = ChatPhoto;
-
-messageEmpty#83e5de54 id:int = Message;
-//message#22eb6aba id:int from_id:int to_id:Peer out:Bool unread:Bool date:int message:string media:MessageMedia = Message;
-//messageForwarded#5f46804 id:int fwd_from_id:int fwd_date:int from_id:int to_id:Peer out:Bool unread:Bool date:int message:string media:MessageMedia = Message;
-//messageService#9f8d60bb id:int from_id:int to_id:Peer out:Bool unread:Bool date:int action:MessageAction = Message;
-
-messageMediaEmpty#3ded6320 = MessageMedia;
-messageMediaPhoto#c8c45a2a photo:Photo = MessageMedia;
-messageMediaVideo#a2d24290 video:Video = MessageMedia;
-messageMediaGeo#56e0d474 geo:GeoPoint = MessageMedia;
-messageMediaContact#5e7d2f39 phone_number:string first_name:string last_name:string user_id:int = MessageMedia;
-messageMediaUnsupported#29632a36 bytes:bytes = MessageMedia;
-
-messageActionEmpty#b6aef7b0 = MessageAction;
-messageActionChatCreate#a6638b9a title:string users:Vector<int> = MessageAction;
-messageActionChatEditTitle#b5a1ce5a title:string = MessageAction;
-messageActionChatEditPhoto#7fcb13a8 photo:Photo = MessageAction;
-messageActionChatDeletePhoto#95e3fbef = MessageAction;
-messageActionChatAddUser#5e3cfc4b user_id:int = MessageAction;
-messageActionChatDeleteUser#b2ae9b0c user_id:int = MessageAction;
-
-dialog#ab3a99ac peer:Peer top_message:int unread_count:int notify_settings:PeerNotifySettings = Dialog;
-
-photoEmpty#2331b22d id:long = Photo;
-photo#22b56751 id:long access_hash:long user_id:int date:int caption:string geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-
-photoSizeEmpty#e17e23c type:string = PhotoSize;
-photoSize#77bfb61b type:string location:FileLocation w:int h:int size:int = PhotoSize;
-photoCachedSize#e9a734fa type:string location:FileLocation w:int h:int bytes:bytes = PhotoSize;
-
-videoEmpty#c10658a8 id:long = Video;
-video#388fa391 id:long access_hash:long user_id:int date:int caption:string duration:int mime_type:string size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-
-geoPointEmpty#1117dd5f = GeoPoint;
-geoPoint#2049d70c long:double lat:double = GeoPoint;
-
-auth.checkedPhone#e300cc3b phone_registered:Bool phone_invited:Bool = auth.CheckedPhone;
-
-auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-auth.authorization#f6b673a4 expires:int user:User = auth.Authorization;
-
-auth.exportedAuthorization#df969c2d id:int bytes:bytes = auth.ExportedAuthorization;
-
-inputNotifyPeer#b8bc5b0c peer:InputPeer = InputNotifyPeer;
-inputNotifyUsers#193b4417 = InputNotifyPeer;
-inputNotifyChats#4a95e84e = InputNotifyPeer;
-inputNotifyAll#a429b886 = InputNotifyPeer;
-
-inputPeerNotifyEventsEmpty#f03064d8 = InputPeerNotifyEvents;
-inputPeerNotifyEventsAll#e86a2c74 = InputPeerNotifyEvents;
-
-inputPeerNotifySettings#46a2ce98 mute_until:int sound:string show_previews:Bool events_mask:int = InputPeerNotifySettings;
-
-peerNotifyEventsEmpty#add53cb3 = PeerNotifyEvents;
-peerNotifyEventsAll#6d1ded88 = PeerNotifyEvents;
-
-peerNotifySettingsEmpty#70a68512 = PeerNotifySettings;
-peerNotifySettings#8d5e11ee mute_until:int sound:string show_previews:Bool events_mask:int = PeerNotifySettings;
-
-wallPaper#ccb03657 id:int title:string sizes:Vector<PhotoSize> color:int = WallPaper;
-
-userFull#771095da user:User link:contacts.Link profile_photo:Photo notify_settings:PeerNotifySettings blocked:Bool real_first_name:string real_last_name:string = UserFull;
-
-contact#f911c994 user_id:int mutual:Bool = Contact;
-
-importedContact#d0028438 user_id:int client_id:long = ImportedContact;
-
-contactBlocked#561bc879 user_id:int date:int = ContactBlocked;
-
-contactFound#ea879f95 user_id:int = ContactFound;
-
-contactSuggested#3de191a1 user_id:int mutual_contacts:int = ContactSuggested;
-
-contactStatus#aa77b873 user_id:int expires:int = ContactStatus;
-
-chatLocated#3631cf4c chat_id:int distance:int = ChatLocated;
-
-contacts.foreignLinkUnknown#133421f8 = contacts.ForeignLink;
-contacts.foreignLinkRequested#a7801f47 has_phone:Bool = contacts.ForeignLink;
-contacts.foreignLinkMutual#1bea8ce1 = contacts.ForeignLink;
-
-contacts.myLinkEmpty#d22a1c60 = contacts.MyLink;
-contacts.myLinkRequested#6c69efee contact:Bool = contacts.MyLink;
-contacts.myLinkContact#c240ebd9 = contacts.MyLink;
-
-contacts.link#eccea3f5 my_link:contacts.MyLink foreign_link:contacts.ForeignLink user:User = contacts.Link;
-
-contacts.contacts#6f8b8cb2 contacts:Vector<Contact> users:Vector<User> = contacts.Contacts;
-contacts.contactsNotModified#b74ba9d2 = contacts.Contacts;
-
-contacts.importedContacts#ad524315 imported:Vector<ImportedContact> retry_contacts:Vector<long> users:Vector<User> = contacts.ImportedContacts;
-
-contacts.blocked#1c138d15 blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-contacts.blockedSlice#900802a1 count:int blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-
-contacts.found#566000e results:Vector<ContactFound> users:Vector<User> = contacts.Found;
-
-contacts.suggested#5649dcc5 results:Vector<ContactSuggested> users:Vector<User> = contacts.Suggested;
-
-messages.dialogs#15ba6c40 dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-messages.dialogsSlice#71e094f3 count:int dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-
-messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-messages.messagesSlice#b446ae3 count:int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-
-messages.messageEmpty#3f4e0648 = messages.Message;
-messages.message#ff90c417 message:Message chats:Vector<Chat> users:Vector<User> = messages.Message;
-
-messages.statedMessages#969478bb messages:Vector<Message> chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessage#d07ae726 message:Message chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessage#d1f4d35c id:int date:int pts:int seq:int = messages.SentMessage;
-
-messages.chat#40e9002a chat:Chat users:Vector<User> = messages.Chat;
-
-messages.chats#8150cbd8 chats:Vector<Chat> users:Vector<User> = messages.Chats;
-
-messages.chatFull#e5d7d19c full_chat:ChatFull chats:Vector<Chat> users:Vector<User> = messages.ChatFull;
-
-messages.affectedHistory#b7de36f2 pts:int seq:int offset:int = messages.AffectedHistory;
-
-inputMessagesFilterEmpty#57e2f66c = MessagesFilter;
-inputMessagesFilterPhotos#9609a51c = MessagesFilter;
-inputMessagesFilterVideo#9fc00e65 = MessagesFilter;
-inputMessagesFilterPhotoVideo#56e9f0e4 = MessagesFilter;
-inputMessagesFilterDocument#9eddf188 = MessagesFilter;
-inputMessagesFilterAudio#cfc87522 = MessagesFilter;
-
-updateNewMessage#13abdb3 message:Message pts:int = Update;
-updateMessageID#4e90bfd6 id:int random_id:long = Update;
-updateReadMessages#c6649e31 messages:Vector<int> pts:int = Update;
-updateDeleteMessages#a92bfe26 messages:Vector<int> pts:int = Update;
-updateRestoreMessages#d15de04d messages:Vector<int> pts:int = Update;
-//updateUserTyping#6baa8508 user_id:int = Update;
-//updateChatUserTyping#3c46cfe6 chat_id:int user_id:int = Update;
-updateChatParticipants#7761198 participants:ChatParticipants = Update;
-updateUserStatus#1bfbd823 user_id:int status:UserStatus = Update;
-updateUserPhoto#95313b0c user_id:int date:int photo:UserProfilePhoto previous:Bool = Update;
-updateContactRegistered#2575bbb9 user_id:int date:int = Update;
-updateContactLink#51a48a9a user_id:int my_link:contacts.MyLink foreign_link:contacts.ForeignLink = Update;
-updateActivation#6f690963 user_id:int = Update;
-updateNewAuthorization#8f06529a auth_key_id:long date:int device:string location:string = Update;
-
-updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
-
-updates.differenceEmpty#5d75a138 date:int seq:int = updates.Difference;
-updates.difference#f49ca0 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> state:updates.State = updates.Difference;
-updates.differenceSlice#a8fb1981 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> intermediate_state:updates.State = updates.Difference;
-
-updatesTooLong#e317af7e = Updates;
-updateShortMessage#d3f45784 id:int from_id:int message:string pts:int date:int seq:int = Updates;
-updateShortChatMessage#2b2fbd4e id:int from_id:int chat_id:int message:string pts:int date:int seq:int = Updates;
-updateShort#78d4dec1 update:Update date:int = Updates;
-updatesCombined#725b04c3 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq_start:int seq:int = Updates;
-updates#74ae4240 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq:int = Updates;
-
-photos.photos#8dca6aa5 photos:Vector<Photo> users:Vector<User> = photos.Photos;
-photos.photosSlice#15051f54 count:int photos:Vector<Photo> users:Vector<User> = photos.Photos;
-
-photos.photo#20212ca8 photo:Photo users:Vector<User> = photos.Photo;
-
-upload.file#96a18d5 type:storage.FileType mtime:int bytes:bytes = upload.File;
-
-dcOption#2ec2a43c id:int hostname:string ip_address:string port:int = DcOption;
-
-config#2e54dd74 date:int test_mode:Bool this_dc:int dc_options:Vector<DcOption> chat_size_max:int broadcast_size_max:int = Config;
-
-nearestDc#8e1a1775 country:string this_dc:int nearest_dc:int = NearestDc;
-
-help.appUpdate#8987f311 id:int critical:Bool url:string text:string = help.AppUpdate;
-help.noAppUpdate#c45a6536 = help.AppUpdate;
-
-help.inviteText#18cb9f78 message:string = help.InviteText;
-
-messages.statedMessagesLinks#3e74f5c6 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessageLink#a9af2881 message:Message chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessageLink#e9db4a3f id:int date:int pts:int seq:int links:Vector<contacts.Link> = messages.SentMessage;
-
-inputGeoChat#74d456fa chat_id:int access_hash:long = InputGeoChat;
-
-inputNotifyGeoChatPeer#4d8ddec8 peer:InputGeoChat = InputNotifyPeer;
-
-geoChat#75eaea5a id:int access_hash:long title:string address:string venue:string geo:GeoPoint photo:ChatPhoto participants_count:int date:int checked_in:Bool version:int = Chat;
-
-geoChatMessageEmpty#60311a9b chat_id:int id:int = GeoChatMessage;
-geoChatMessage#4505f8e1 chat_id:int id:int from_id:int date:int message:string media:MessageMedia = GeoChatMessage;
-geoChatMessageService#d34fa24e chat_id:int id:int from_id:int date:int action:MessageAction = GeoChatMessage;
-
-geochats.statedMessage#17b1578b message:GeoChatMessage chats:Vector<Chat> users:Vector<User> seq:int = geochats.StatedMessage;
-
-geochats.located#48feb267 results:Vector<ChatLocated> messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Located;
-
-geochats.messages#d1526db1 messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-geochats.messagesSlice#bc5863e8 count:int messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-
-messageActionGeoChatCreate#6f038ebc title:string address:string = MessageAction;
-messageActionGeoChatCheckin#c7d53de = MessageAction;
-
-updateNewGeoChatMessage#5a68e3f7 message:GeoChatMessage = Update;
-
-wallPaperSolid#63117f24 id:int title:string bg_color:int color:int = WallPaper;
-
-updateNewEncryptedMessage#12bcbd9a message:EncryptedMessage qts:int = Update;
-updateEncryptedChatTyping#1710f156 chat_id:int = Update;
-updateEncryption#b4a2e88d chat:EncryptedChat date:int = Update;
-updateEncryptedMessagesRead#38fe25b7 chat_id:int max_date:int date:int = Update;
-
-encryptedChatEmpty#ab7ec0a0 id:int = EncryptedChat;
-encryptedChatWaiting#3bf703dc id:int access_hash:long date:int admin_id:int participant_id:int = EncryptedChat;
-encryptedChatRequested#c878527e id:int access_hash:long date:int admin_id:int participant_id:int g_a:bytes = EncryptedChat;
-encryptedChat#fa56ce36 id:int access_hash:long date:int admin_id:int participant_id:int g_a_or_b:bytes key_fingerprint:long = EncryptedChat;
-encryptedChatDiscarded#13d6dd27 id:int = EncryptedChat;
-
-inputEncryptedChat#f141b5e1 chat_id:int access_hash:long = InputEncryptedChat;
-
-encryptedFileEmpty#c21f497e = EncryptedFile;
-encryptedFile#4a70994c id:long access_hash:long size:int dc_id:int key_fingerprint:int = EncryptedFile;
-
-inputEncryptedFileEmpty#1837c364 = InputEncryptedFile;
-inputEncryptedFileUploaded#64bd0306 id:long parts:int md5_checksum:string key_fingerprint:int = InputEncryptedFile;
-inputEncryptedFile#5a17b5e5 id:long access_hash:long = InputEncryptedFile;
-
-inputEncryptedFileLocation#f5235d55 id:long access_hash:long = InputFileLocation;
-
-encryptedMessage#ed18c118 random_id:long chat_id:int date:int bytes:bytes file:EncryptedFile = EncryptedMessage;
-encryptedMessageService#23734b06 random_id:long chat_id:int date:int bytes:bytes = EncryptedMessage;
-
-messages.dhConfigNotModified#c0e24635 random:bytes = messages.DhConfig;
-messages.dhConfig#2c221edd g:int p:bytes version:int random:bytes = messages.DhConfig;
-
-messages.sentEncryptedMessage#560f8935 date:int = messages.SentEncryptedMessage;
-messages.sentEncryptedFile#9493ff32 date:int file:EncryptedFile = messages.SentEncryptedMessage;
-
-inputFileBig#fa4f0bb5 id:long parts:int name:string = InputFile;
-
-inputEncryptedFileBigUploaded#2dc173c8 id:long parts:int key_fingerprint:int = InputEncryptedFile;
-
-updateChatParticipantAdd#3a0eeb22 chat_id:int user_id:int inviter_id:int version:int = Update;
-updateChatParticipantDelete#6e5f8c22 chat_id:int user_id:int version:int = Update;
-updateDcOptions#8e5e9873 dc_options:Vector<DcOption> = Update;
-
-inputMediaUploadedAudio#4e498cab file:InputFile duration:int mime_type:string = InputMedia;
-inputMediaAudio#89938781 id:InputAudio = InputMedia;
-inputMediaUploadedDocument#34e794bd file:InputFile file_name:string mime_type:string = InputMedia;
-inputMediaUploadedThumbDocument#3e46de5d file:InputFile thumb:InputFile file_name:string mime_type:string = InputMedia;
-inputMediaDocument#d184e841 id:InputDocument = InputMedia;
-
-messageMediaDocument#2fda2204 document:Document = MessageMedia;
-messageMediaAudio#c6b68300 audio:Audio = MessageMedia;
-
-inputAudioEmpty#d95adc84 = InputAudio;
-inputAudio#77d440ff id:long access_hash:long = InputAudio;
-
-inputDocumentEmpty#72f0eaae = InputDocument;
-inputDocument#18798952 id:long access_hash:long = InputDocument;
-
-inputAudioFileLocation#74dc404d id:long access_hash:long = InputFileLocation;
-inputDocumentFileLocation#4e45abe9 id:long access_hash:long = InputFileLocation;
-
-audioEmpty#586988d8 id:long = Audio;
-audio#c7ac6496 id:long access_hash:long user_id:int date:int duration:int mime_type:string size:int dc_id:int = Audio;
-
-documentEmpty#36f8c871 id:long = Document;
-document#9efc6326 id:long access_hash:long user_id:int date:int file_name:string mime_type:string size:int thumb:PhotoSize dc_id:int = Document;
-
-help.support#17c6b5f6 phone_number:string user:User = help.Support;
-
-notifyPeer#9fd40bd8 peer:Peer = NotifyPeer;
-notifyUsers#b4c83b4c = NotifyPeer;
-notifyChats#c007cec3 = NotifyPeer;
-notifyAll#74d07c60 = NotifyPeer;
-
-updateUserBlocked#80ece81a user_id:int blocked:Bool = Update;
-updateNotifySettings#bec268ef peer:NotifyPeer notify_settings:PeerNotifySettings = Update;
-
-auth.sentAppCode#e325edcf phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-updateUserTyping#5c486927 user_id:int action:SendMessageAction = Update;
-updateChatUserTyping#9a65ea1f chat_id:int user_id:int action:SendMessageAction = Update;
-
-updateUserName user_id:int first_name:string last_name:string username:string = Update;
-updateServiceNotification type:string message:string media:MessageMedia popup:Bool = Update;
-
-message#567699b3 flags:int id:int from_id:int to_id:Peer date:int message:string media:MessageMedia = Message;
-messageForwarded#a367e716 flags:int id:int fwd_from_id:int fwd_date:int from_id:int to_id:Peer date:int message:string media:MessageMedia = Message;
-messageService#1d86f70e flags:int id:int from_id:int to_id:Peer date:int action:MessageAction = Message;
-
-
-sendMessageTypingAction#16bf744e = SendMessageAction;
-sendMessageCancelAction#fd5ec8f5 = SendMessageAction;
-sendMessageRecordVideoAction#a187d66f = SendMessageAction;
-sendMessageUploadVideoAction#92042ff7 = SendMessageAction;
-sendMessageRecordAudioAction#d52f73f7 = SendMessageAction;
-sendMessageUploadAudioAction#e6ac8a6f = SendMessageAction;
-sendMessageUploadPhotoAction#990a3c1a = SendMessageAction;
-sendMessageUploadDocumentAction#8faee98e = SendMessageAction;
-sendMessageGeoLocationAction#176f8ba1 = SendMessageAction;
-sendMessageChooseContactAction#628cbc6f = SendMessageAction;
-
----functions---
-
-invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
-
-invokeAfterMsgs#3dc4b4f0 {X:Type} msg_ids:Vector<long> query:!X = X;
-
-auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone;
-auth.sendCode#768d5f4d phone_number:string sms_type:int api_id:int api_hash:string lang_code:string = auth.SentCode;
-auth.sendCall#3c51564 phone_number:string phone_code_hash:string = Bool;
-auth.signUp#1b067634 phone_number:string phone_code_hash:string phone_code:string first_name:string last_name:string = auth.Authorization;
-auth.signIn#bcd51581 phone_number:string phone_code_hash:string phone_code:string = auth.Authorization;
-auth.logOut#5717da40 = Bool;
-auth.resetAuthorizations#9fab0d1a = Bool;
-auth.sendInvites#771c1d97 phone_numbers:Vector<string> message:string = Bool;
-auth.exportAuthorization#e5bfffcd dc_id:int = auth.ExportedAuthorization;
-auth.importAuthorization#e3ef9613 id:int bytes:bytes = auth.Authorization;
-auth.bindTempAuthKey#cdd42a05 perm_auth_key_id:long nonce:long expires_at:int encrypted_message:bytes = Bool;
-
-account.registerDevice#446c712c token_type:int token:string device_model:string system_version:string app_version:string app_sandbox:Bool lang_code:string = Bool;
-account.unregisterDevice#65c55b40 token_type:int token:string = Bool;
-account.updateNotifySettings#84be5b93 peer:InputNotifyPeer settings:InputPeerNotifySettings = Bool;
-account.getNotifySettings#12b3ad31 peer:InputNotifyPeer = PeerNotifySettings;
-account.resetNotifySettings#db7e1747 = Bool;
-account.updateProfile#f0888d68 first_name:string last_name:string = User;
-account.updateStatus#6628562c offline:Bool = Bool;
-account.getWallPapers#c04cfac2 = Vector<WallPaper>;
-
-users.getUsers#d91a548 id:Vector<InputUser> = Vector<User>;
-users.getFullUser#ca30a5b1 id:InputUser = UserFull;
-
-contacts.getStatuses#c4a353ee = Vector<ContactStatus>;
-contacts.getContacts#22c6aa08 hash:string = contacts.Contacts;
-contacts.importContacts#da30b32d contacts:Vector<InputContact> replace:Bool = contacts.ImportedContacts;
-contacts.getSuggested#cd773428 limit:int = contacts.Suggested;
-contacts.deleteContact#8e953744 id:InputUser = contacts.Link;
-contacts.deleteContacts#59ab389e id:Vector<InputUser> = Bool;
-contacts.block#332b49fc id:InputUser = Bool;
-contacts.unblock#e54100bd id:InputUser = Bool;
-contacts.getBlocked#f57c350f offset:int limit:int = contacts.Blocked;
-contacts.exportCard#84e53737 = Vector<int>;
-contacts.importCard#4fe196fe export_card:Vector<int> = User;
-
-messages.getMessages#4222fa74 id:Vector<int> = messages.Messages;
-messages.getDialogs#eccf1df6 offset:int max_id:int limit:int = messages.Dialogs;
-messages.getHistory#92a1df2f peer:InputPeer offset:int max_id:int limit:int = messages.Messages;
-messages.search#7e9f2ab peer:InputPeer q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = messages.Messages;
-messages.readHistory#eed884c6 peer:InputPeer max_id:int offset:int read_contents:Bool = messages.AffectedHistory;
-messages.deleteHistory#f4f8fb61 peer:InputPeer offset:int = messages.AffectedHistory;
-messages.deleteMessages#14f2dd0a id:Vector<int> = Vector<int>;
-messages.restoreMessages#395f9d7e id:Vector<int> = Vector<int>;
-messages.receivedMessages#28abcb68 max_id:int = Vector<int>;
-messages.setTyping#a3825e50 peer:InputPeer action:SendMessageAction = Bool;
-messages.sendMessage#4cde0aab peer:InputPeer message:string random_id:long = messages.SentMessage;
-messages.sendMedia#a3c85d76 peer:InputPeer media:InputMedia random_id:long = messages.StatedMessage;
-messages.forwardMessages#514cd10f peer:InputPeer id:Vector<int> = messages.StatedMessages;
-messages.getChats#3c6aa187 id:Vector<int> = messages.Chats;
-messages.getFullChat#3b831c66 chat_id:int = messages.ChatFull;
-messages.editChatTitle#b4bc68b5 chat_id:int title:string = messages.StatedMessage;
-messages.editChatPhoto#d881821d chat_id:int photo:InputChatPhoto = messages.StatedMessage;
-messages.addChatUser#2ee9ee9e chat_id:int user_id:InputUser fwd_limit:int = messages.StatedMessage;
-messages.deleteChatUser#c3c5cd23 chat_id:int user_id:InputUser = messages.StatedMessage;
-messages.createChat#419d9aee users:Vector<InputUser> title:string = messages.StatedMessage;
-
-updates.getState#edd4882a = updates.State;
-updates.getDifference#a041495 pts:int date:int qts:int = updates.Difference;
-
-photos.updateProfilePhoto#eef579a0 id:InputPhoto crop:InputPhotoCrop = UserProfilePhoto;
-photos.uploadProfilePhoto#d50f9c88 file:InputFile caption:string geo_point:InputGeoPoint crop:InputPhotoCrop = photos.Photo;
-
-upload.saveFilePart#b304a621 file_id:long file_part:int bytes:bytes = Bool;
-upload.getFile#e3a6cfb5 location:InputFileLocation offset:int limit:int = upload.File;
-
-help.getConfig#c4f9186b = Config;
-help.getNearestDc#1fb33026 = NearestDc;
-help.getAppUpdate#c812ac7e device_model:string system_version:string app_version:string lang_code:string = help.AppUpdate;
-help.saveAppLog#6f02f748 events:Vector<InputAppEvent> = Bool;
-help.getInviteText#a4a95186 lang_code:string = help.InviteText;
-
-photos.getUserPhotos#b7ee553c user_id:InputUser offset:int max_id:int limit:int = photos.Photos;
-
-messages.forwardMessage#3f3f4f2 peer:InputPeer id:int random_id:long = messages.StatedMessage;
-messages.sendBroadcast#41bb0972 contacts:Vector<InputUser> message:string media:InputMedia = messages.StatedMessages;
-
-geochats.getLocated#7f192d8f geo_point:InputGeoPoint radius:int limit:int = geochats.Located;
-geochats.getRecents#e1427e6f offset:int limit:int = geochats.Messages;
-geochats.checkin#55b3e8fb peer:InputGeoChat = geochats.StatedMessage;
-geochats.getFullChat#6722dd6f peer:InputGeoChat = messages.ChatFull;
-geochats.editChatTitle#4c8e2273 peer:InputGeoChat title:string address:string = geochats.StatedMessage;
-geochats.editChatPhoto#35d81a95 peer:InputGeoChat photo:InputChatPhoto = geochats.StatedMessage;
-geochats.search#cfcdc44d peer:InputGeoChat q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = geochats.Messages;
-geochats.getHistory#b53f7a68 peer:InputGeoChat offset:int max_id:int limit:int = geochats.Messages;
-geochats.setTyping#8b8a729 peer:InputGeoChat typing:Bool = Bool;
-geochats.sendMessage#61b0044 peer:InputGeoChat message:string random_id:long = geochats.StatedMessage;
-geochats.sendMedia#b8f0deff peer:InputGeoChat media:InputMedia random_id:long = geochats.StatedMessage;
-geochats.createGeoChat#e092e16 title:string geo_point:InputGeoPoint address:string venue:string = geochats.StatedMessage;
-
-messages.getDhConfig#26cf8950 version:int random_length:int = messages.DhConfig;
-messages.requestEncryption#f64daf43 user_id:InputUser random_id:int g_a:bytes = EncryptedChat;
-messages.acceptEncryption#3dbc0415 peer:InputEncryptedChat g_b:bytes key_fingerprint:long = EncryptedChat;
-messages.discardEncryption#edd923c5 chat_id:int = Bool;
-messages.setEncryptedTyping#791451ed peer:InputEncryptedChat typing:Bool = Bool;
-messages.readEncryptedHistory#7f4b690a peer:InputEncryptedChat max_date:int = Bool;
-messages.sendEncrypted#a9776773 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.sendEncryptedFile#9a901b66 peer:InputEncryptedChat random_id:long data:bytes file:InputEncryptedFile = messages.SentEncryptedMessage;
-messages.sendEncryptedService#32d439a4 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.receivedQueue#55a5bb66 max_qts:int = Vector<long>;
-
-upload.saveBigFilePart#de7b673d file_id:long file_part:int file_total_parts:int bytes:bytes = Bool;
-
-initConnection#69796de9 {X:Type} api_id:int device_model:string system_version:string app_version:string lang_code:string query:!X = X;
-
-help.getSupport#9cdf08cd = help.Support;
-
-auth.sendSms#da9f3e8 phone_number:string phone_code_hash:string = Bool;
-
-messages.readMessageContents id:Vector<int> = Vector<int>;
-
-
-account.checkUsername username:string = Bool;
-account.updateUsername username:string = User;
-
-contacts.search q:string limit:int = contacts.Found;
-
-//invokeWithLayer18 {X:Type} query:!X = X;
-invokeWithLayer18#1c900537 {X:Type} query:!X = X;
-
diff --git a/protocols/Telegram/docs/tgl/scheme19.tl b/protocols/Telegram/docs/tgl/scheme19.tl
deleted file mode 100644
index 732093a02a..0000000000
--- a/protocols/Telegram/docs/tgl/scheme19.tl
+++ /dev/null
@@ -1,596 +0,0 @@
-int ?= Int;
-long ?= Long;
-double ?= Double;
-string ?= String;
-
-bytes string = Bytes;
-
-boolFalse#bc799737 = Bool;
-boolTrue#997275b5 = Bool;
-
-int128 long long = Int128;
-int256 long long long long = Int256;
-
-vector#1cb5c415 {t:Type} # [ t ] = Vector t;
-
-error#c4b9f9bb code:int text:string = Error;
-
-null#56730bcc = Null;
-
-inputPeerEmpty#7f3b18ea = InputPeer;
-inputPeerSelf#7da07ec9 = InputPeer;
-inputPeerContact#1023dbe8 user_id:int = InputPeer;
-inputPeerForeign#9b447325 user_id:int access_hash:long = InputPeer;
-inputPeerChat#179be863 chat_id:int = InputPeer;
-
-inputUserEmpty#b98886cf = InputUser;
-inputUserSelf#f7c1b13f = InputUser;
-inputUserContact#86e94f65 user_id:int = InputUser;
-inputUserForeign#655e74ff user_id:int access_hash:long = InputUser;
-
-inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact;
-
-inputFile#f52ff27f id:long parts:int name:string md5_checksum:string = InputFile;
-
-inputMediaEmpty#9664f57f = InputMedia;
-inputMediaUploadedPhoto#2dc53a7d file:InputFile = InputMedia;
-inputMediaPhoto#8f2ab2ec id:InputPhoto = InputMedia;
-inputMediaGeoPoint#f9c44144 geo_point:InputGeoPoint = InputMedia;
-inputMediaContact#a6e45987 phone_number:string first_name:string last_name:string = InputMedia;
-inputMediaUploadedVideo#133ad6f6 file:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaUploadedThumbVideo#9912dabf file:InputFile thumb:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaVideo#7f023ae6 id:InputVideo = InputMedia;
-
-inputChatPhotoEmpty#1ca48f57 = InputChatPhoto;
-inputChatUploadedPhoto#94254732 file:InputFile crop:InputPhotoCrop = InputChatPhoto;
-inputChatPhoto#b2e1bf08 id:InputPhoto crop:InputPhotoCrop = InputChatPhoto;
-
-inputGeoPointEmpty#e4c123d6 = InputGeoPoint;
-inputGeoPoint#f3b7acc9 lat:double long:double = InputGeoPoint;
-
-inputPhotoEmpty#1cd7bf0d = InputPhoto;
-inputPhoto#fb95c6c4 id:long access_hash:long = InputPhoto;
-
-inputVideoEmpty#5508ec75 = InputVideo;
-inputVideo#ee579652 id:long access_hash:long = InputVideo;
-
-inputFileLocation#14637196 volume_id:long local_id:int secret:long = InputFileLocation;
-inputVideoFileLocation#3d0364ec id:long access_hash:long = InputFileLocation;
-
-inputPhotoCropAuto#ade6b004 = InputPhotoCrop;
-inputPhotoCrop#d9915325 crop_left:double crop_top:double crop_width:double = InputPhotoCrop;
-
-inputAppEvent#770656a8 time:double type:string peer:long data:string = InputAppEvent;
-
-peerUser#9db1bc6d user_id:int = Peer;
-peerChat#bad0e5bb chat_id:int = Peer;
-
-storage.fileUnknown#aa963b05 = storage.FileType;
-storage.fileJpeg#7efe0e = storage.FileType;
-storage.fileGif#cae1aadf = storage.FileType;
-storage.filePng#a4f63c0 = storage.FileType;
-storage.filePdf#ae1e508d = storage.FileType;
-storage.fileMp3#528a0677 = storage.FileType;
-storage.fileMov#4b09ebbc = storage.FileType;
-storage.filePartial#40bc6f52 = storage.FileType;
-storage.fileMp4#b3cea0e4 = storage.FileType;
-storage.fileWebp#1081464c = storage.FileType;
-
-fileLocationUnavailable#7c596b46 volume_id:long local_id:int secret:long = FileLocation;
-fileLocation#53d69076 dc_id:int volume_id:long local_id:int secret:long = FileLocation;
-
-userEmpty#200250ba id:int = User;
-userSelf#7007b451 id:int first_name:string last_name:string username:string phone:string photo:UserProfilePhoto status:UserStatus inactive:Bool = User;
-userContact#cab35e18 id:int first_name:string last_name:string username:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userRequest#d9ccc4ef id:int first_name:string last_name:string username:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userForeign#75cf7a8 id:int first_name:string last_name:string username:string access_hash:long photo:UserProfilePhoto status:UserStatus = User;
-userDeleted#d6016d7a id:int first_name:string last_name:string username:string = User;
-
-userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
-userProfilePhoto#d559d8c8 photo_id:long photo_small:FileLocation photo_big:FileLocation = UserProfilePhoto;
-
-userStatusEmpty#9d05049 = UserStatus;
-userStatusOnline#edb93949 expires:int = UserStatus;
-userStatusOffline#8c703f was_online:int = UserStatus;
-
-chatEmpty#9ba2d800 id:int = Chat;
-chat#6e9c9bc7 id:int title:string photo:ChatPhoto participants_count:int date:int left:Bool version:int = Chat;
-chatForbidden#fb0ccc41 id:int title:string date:int = Chat;
-
-chatFull#630e61be id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings = ChatFull;
-
-chatParticipant#c8d7493e user_id:int inviter_id:int date:int = ChatParticipant;
-
-chatParticipantsForbidden#fd2bb8a chat_id:int = ChatParticipants;
-chatParticipants#7841b415 chat_id:int admin_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
-
-chatPhotoEmpty#37c1011c = ChatPhoto;
-chatPhoto#6153276a photo_small:FileLocation photo_big:FileLocation = ChatPhoto;
-
-messageEmpty#83e5de54 id:int = Message;
-message#567699b3 flags:int id:int from_id:int to_id:Peer date:int message:string media:MessageMedia = Message;
-messageForwarded#a367e716 flags:int id:int fwd_from_id:int fwd_date:int from_id:int to_id:Peer date:int message:string media:MessageMedia = Message;
-messageService#1d86f70e flags:int id:int from_id:int to_id:Peer date:int action:MessageAction = Message;
-
-messageMediaEmpty#3ded6320 = MessageMedia;
-messageMediaPhoto#c8c45a2a photo:Photo = MessageMedia;
-messageMediaVideo#a2d24290 video:Video = MessageMedia;
-messageMediaGeo#56e0d474 geo:GeoPoint = MessageMedia;
-messageMediaContact#5e7d2f39 phone_number:string first_name:string last_name:string user_id:int = MessageMedia;
-messageMediaUnsupported#29632a36 bytes:bytes = MessageMedia;
-
-messageActionEmpty#b6aef7b0 = MessageAction;
-messageActionChatCreate#a6638b9a title:string users:Vector<int> = MessageAction;
-messageActionChatEditTitle#b5a1ce5a title:string = MessageAction;
-messageActionChatEditPhoto#7fcb13a8 photo:Photo = MessageAction;
-messageActionChatDeletePhoto#95e3fbef = MessageAction;
-messageActionChatAddUser#5e3cfc4b user_id:int = MessageAction;
-messageActionChatDeleteUser#b2ae9b0c user_id:int = MessageAction;
-
-dialog#ab3a99ac peer:Peer top_message:int unread_count:int notify_settings:PeerNotifySettings = Dialog;
-
-photoEmpty#2331b22d id:long = Photo;
-photo#22b56751 id:long access_hash:long user_id:int date:int caption:string geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-
-photoSizeEmpty#e17e23c type:string = PhotoSize;
-photoSize#77bfb61b type:string location:FileLocation w:int h:int size:int = PhotoSize;
-photoCachedSize#e9a734fa type:string location:FileLocation w:int h:int bytes:bytes = PhotoSize;
-
-videoEmpty#c10658a8 id:long = Video;
-video#388fa391 id:long access_hash:long user_id:int date:int caption:string duration:int mime_type:string size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-
-geoPointEmpty#1117dd5f = GeoPoint;
-geoPoint#2049d70c long:double lat:double = GeoPoint;
-
-auth.checkedPhone#e300cc3b phone_registered:Bool phone_invited:Bool = auth.CheckedPhone;
-
-auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-auth.authorization#f6b673a4 expires:int user:User = auth.Authorization;
-
-auth.exportedAuthorization#df969c2d id:int bytes:bytes = auth.ExportedAuthorization;
-
-inputNotifyPeer#b8bc5b0c peer:InputPeer = InputNotifyPeer;
-inputNotifyUsers#193b4417 = InputNotifyPeer;
-inputNotifyChats#4a95e84e = InputNotifyPeer;
-inputNotifyAll#a429b886 = InputNotifyPeer;
-
-inputPeerNotifyEventsEmpty#f03064d8 = InputPeerNotifyEvents;
-inputPeerNotifyEventsAll#e86a2c74 = InputPeerNotifyEvents;
-
-inputPeerNotifySettings#46a2ce98 mute_until:int sound:string show_previews:Bool events_mask:int = InputPeerNotifySettings;
-
-peerNotifyEventsEmpty#add53cb3 = PeerNotifyEvents;
-peerNotifyEventsAll#6d1ded88 = PeerNotifyEvents;
-
-peerNotifySettingsEmpty#70a68512 = PeerNotifySettings;
-peerNotifySettings#8d5e11ee mute_until:int sound:string show_previews:Bool events_mask:int = PeerNotifySettings;
-
-wallPaper#ccb03657 id:int title:string sizes:Vector<PhotoSize> color:int = WallPaper;
-
-userFull#771095da user:User link:contacts.Link profile_photo:Photo notify_settings:PeerNotifySettings blocked:Bool real_first_name:string real_last_name:string = UserFull;
-
-contact#f911c994 user_id:int mutual:Bool = Contact;
-
-importedContact#d0028438 user_id:int client_id:long = ImportedContact;
-
-contactBlocked#561bc879 user_id:int date:int = ContactBlocked;
-
-contactSuggested#3de191a1 user_id:int mutual_contacts:int = ContactSuggested;
-
-contactStatus#d3680c61 user_id:int status:UserStatus = ContactStatus;
-
-chatLocated#3631cf4c chat_id:int distance:int = ChatLocated;
-
-contacts.foreignLinkUnknown#133421f8 = contacts.ForeignLink;
-contacts.foreignLinkRequested#a7801f47 has_phone:Bool = contacts.ForeignLink;
-contacts.foreignLinkMutual#1bea8ce1 = contacts.ForeignLink;
-
-contacts.myLinkEmpty#d22a1c60 = contacts.MyLink;
-contacts.myLinkRequested#6c69efee contact:Bool = contacts.MyLink;
-contacts.myLinkContact#c240ebd9 = contacts.MyLink;
-
-contacts.link#eccea3f5 my_link:contacts.MyLink foreign_link:contacts.ForeignLink user:User = contacts.Link;
-
-contacts.contactsNotModified#b74ba9d2 = contacts.Contacts;
-contacts.contacts#6f8b8cb2 contacts:Vector<Contact> users:Vector<User> = contacts.Contacts;
-
-contacts.importedContacts#ad524315 imported:Vector<ImportedContact> retry_contacts:Vector<long> users:Vector<User> = contacts.ImportedContacts;
-
-contacts.blocked#1c138d15 blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-contacts.blockedSlice#900802a1 count:int blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-
-contacts.suggested#5649dcc5 results:Vector<ContactSuggested> users:Vector<User> = contacts.Suggested;
-
-messages.dialogs#15ba6c40 dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-messages.dialogsSlice#71e094f3 count:int dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-
-messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-messages.messagesSlice#b446ae3 count:int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-
-messages.messageEmpty#3f4e0648 = messages.Message;
-messages.message#ff90c417 message:Message chats:Vector<Chat> users:Vector<User> = messages.Message;
-
-messages.statedMessages#969478bb messages:Vector<Message> chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessage#d07ae726 message:Message chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessage#d1f4d35c id:int date:int pts:int seq:int = messages.SentMessage;
-
-messages.chat#40e9002a chat:Chat users:Vector<User> = messages.Chat;
-
-messages.chats#8150cbd8 chats:Vector<Chat> users:Vector<User> = messages.Chats;
-
-messages.chatFull#e5d7d19c full_chat:ChatFull chats:Vector<Chat> users:Vector<User> = messages.ChatFull;
-
-messages.affectedHistory#b7de36f2 pts:int seq:int offset:int = messages.AffectedHistory;
-
-inputMessagesFilterEmpty#57e2f66c = MessagesFilter;
-inputMessagesFilterPhotos#9609a51c = MessagesFilter;
-inputMessagesFilterVideo#9fc00e65 = MessagesFilter;
-inputMessagesFilterPhotoVideo#56e9f0e4 = MessagesFilter;
-inputMessagesFilterDocument#9eddf188 = MessagesFilter;
-inputMessagesFilterAudio#cfc87522 = MessagesFilter;
-
-updateNewMessage#13abdb3 message:Message pts:int = Update;
-updateMessageID#4e90bfd6 id:int random_id:long = Update;
-updateReadMessages#c6649e31 messages:Vector<int> pts:int = Update;
-updateDeleteMessages#a92bfe26 messages:Vector<int> pts:int = Update;
-updateRestoreMessages#d15de04d messages:Vector<int> pts:int = Update;
-updateUserTyping#5c486927 user_id:int action:SendMessageAction = Update;
-updateChatUserTyping#9a65ea1f chat_id:int user_id:int action:SendMessageAction = Update;
-updateChatParticipants#7761198 participants:ChatParticipants = Update;
-updateUserStatus#1bfbd823 user_id:int status:UserStatus = Update;
-updateUserName#a7332b73 user_id:int first_name:string last_name:string username:string = Update;
-updateUserPhoto#95313b0c user_id:int date:int photo:UserProfilePhoto previous:Bool = Update;
-updateContactRegistered#2575bbb9 user_id:int date:int = Update;
-updateContactLink#51a48a9a user_id:int my_link:contacts.MyLink foreign_link:contacts.ForeignLink = Update;
-updateActivation#6f690963 user_id:int = Update;
-updateNewAuthorization#8f06529a auth_key_id:long date:int device:string location:string = Update;
-
-updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
-
-updates.differenceEmpty#5d75a138 date:int seq:int = updates.Difference;
-updates.difference#f49ca0 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> state:updates.State = updates.Difference;
-updates.differenceSlice#a8fb1981 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> intermediate_state:updates.State = updates.Difference;
-
-updatesTooLong#e317af7e = Updates;
-updateShortMessage#d3f45784 id:int from_id:int message:string pts:int date:int seq:int = Updates;
-updateShortChatMessage#2b2fbd4e id:int from_id:int chat_id:int message:string pts:int date:int seq:int = Updates;
-updateShort#78d4dec1 update:Update date:int = Updates;
-updatesCombined#725b04c3 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq_start:int seq:int = Updates;
-updates#74ae4240 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq:int = Updates;
-
-photos.photos#8dca6aa5 photos:Vector<Photo> users:Vector<User> = photos.Photos;
-photos.photosSlice#15051f54 count:int photos:Vector<Photo> users:Vector<User> = photos.Photos;
-
-photos.photo#20212ca8 photo:Photo users:Vector<User> = photos.Photo;
-
-upload.file#96a18d5 type:storage.FileType mtime:int bytes:bytes = upload.File;
-
-dcOption#2ec2a43c id:int hostname:string ip_address:string port:int = DcOption;
-
-config#2e54dd74 date:int test_mode:Bool this_dc:int dc_options:Vector<DcOption> chat_size_max:int broadcast_size_max:int = Config;
-
-nearestDc#8e1a1775 country:string this_dc:int nearest_dc:int = NearestDc;
-
-help.appUpdate#8987f311 id:int critical:Bool url:string text:string = help.AppUpdate;
-help.noAppUpdate#c45a6536 = help.AppUpdate;
-
-help.inviteText#18cb9f78 message:string = help.InviteText;
-
-messages.statedMessagesLinks#3e74f5c6 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessageLink#a9af2881 message:Message chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessageLink#e9db4a3f id:int date:int pts:int seq:int links:Vector<contacts.Link> = messages.SentMessage;
-
-inputGeoChat#74d456fa chat_id:int access_hash:long = InputGeoChat;
-
-inputNotifyGeoChatPeer#4d8ddec8 peer:InputGeoChat = InputNotifyPeer;
-
-geoChat#75eaea5a id:int access_hash:long title:string address:string venue:string geo:GeoPoint photo:ChatPhoto participants_count:int date:int checked_in:Bool version:int = Chat;
-
-geoChatMessageEmpty#60311a9b chat_id:int id:int = GeoChatMessage;
-geoChatMessage#4505f8e1 chat_id:int id:int from_id:int date:int message:string media:MessageMedia = GeoChatMessage;
-geoChatMessageService#d34fa24e chat_id:int id:int from_id:int date:int action:MessageAction = GeoChatMessage;
-
-geochats.statedMessage#17b1578b message:GeoChatMessage chats:Vector<Chat> users:Vector<User> seq:int = geochats.StatedMessage;
-
-geochats.located#48feb267 results:Vector<ChatLocated> messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Located;
-
-geochats.messages#d1526db1 messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-geochats.messagesSlice#bc5863e8 count:int messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-
-messageActionGeoChatCreate#6f038ebc title:string address:string = MessageAction;
-messageActionGeoChatCheckin#c7d53de = MessageAction;
-
-updateNewGeoChatMessage#5a68e3f7 message:GeoChatMessage = Update;
-
-wallPaperSolid#63117f24 id:int title:string bg_color:int color:int = WallPaper;
-
-updateNewEncryptedMessage#12bcbd9a message:EncryptedMessage qts:int = Update;
-updateEncryptedChatTyping#1710f156 chat_id:int = Update;
-updateEncryption#b4a2e88d chat:EncryptedChat date:int = Update;
-updateEncryptedMessagesRead#38fe25b7 chat_id:int max_date:int date:int = Update;
-
-encryptedChatEmpty#ab7ec0a0 id:int = EncryptedChat;
-encryptedChatWaiting#3bf703dc id:int access_hash:long date:int admin_id:int participant_id:int = EncryptedChat;
-encryptedChatRequested#c878527e id:int access_hash:long date:int admin_id:int participant_id:int g_a:bytes = EncryptedChat;
-encryptedChat#fa56ce36 id:int access_hash:long date:int admin_id:int participant_id:int g_a_or_b:bytes key_fingerprint:long = EncryptedChat;
-encryptedChatDiscarded#13d6dd27 id:int = EncryptedChat;
-
-inputEncryptedChat#f141b5e1 chat_id:int access_hash:long = InputEncryptedChat;
-
-encryptedFileEmpty#c21f497e = EncryptedFile;
-encryptedFile#4a70994c id:long access_hash:long size:int dc_id:int key_fingerprint:int = EncryptedFile;
-
-inputEncryptedFileEmpty#1837c364 = InputEncryptedFile;
-inputEncryptedFileUploaded#64bd0306 id:long parts:int md5_checksum:string key_fingerprint:int = InputEncryptedFile;
-inputEncryptedFile#5a17b5e5 id:long access_hash:long = InputEncryptedFile;
-
-inputEncryptedFileLocation#f5235d55 id:long access_hash:long = InputFileLocation;
-
-encryptedMessage#ed18c118 random_id:long chat_id:int date:int bytes:bytes file:EncryptedFile = EncryptedMessage;
-encryptedMessageService#23734b06 random_id:long chat_id:int date:int bytes:bytes = EncryptedMessage;
-
-messages.dhConfigNotModified#c0e24635 random:bytes = messages.DhConfig;
-messages.dhConfig#2c221edd g:int p:bytes version:int random:bytes = messages.DhConfig;
-
-messages.sentEncryptedMessage#560f8935 date:int = messages.SentEncryptedMessage;
-messages.sentEncryptedFile#9493ff32 date:int file:EncryptedFile = messages.SentEncryptedMessage;
-
-inputFileBig#fa4f0bb5 id:long parts:int name:string = InputFile;
-
-inputEncryptedFileBigUploaded#2dc173c8 id:long parts:int key_fingerprint:int = InputEncryptedFile;
-
-updateChatParticipantAdd#3a0eeb22 chat_id:int user_id:int inviter_id:int version:int = Update;
-updateChatParticipantDelete#6e5f8c22 chat_id:int user_id:int version:int = Update;
-updateDcOptions#8e5e9873 dc_options:Vector<DcOption> = Update;
-
-inputMediaUploadedAudio#4e498cab file:InputFile duration:int mime_type:string = InputMedia;
-inputMediaAudio#89938781 id:InputAudio = InputMedia;
-inputMediaUploadedDocument#ffe76b78 file:InputFile mime_type:string attributes:Vector<DocumentAttribute> = InputMedia;
-inputMediaUploadedThumbDocument#41481486 file:InputFile thumb:InputFile mime_type:string attributes:Vector<DocumentAttribute> = InputMedia;
-inputMediaDocument#d184e841 id:InputDocument = InputMedia;
-
-messageMediaDocument#2fda2204 document:Document = MessageMedia;
-messageMediaAudio#c6b68300 audio:Audio = MessageMedia;
-
-inputAudioEmpty#d95adc84 = InputAudio;
-inputAudio#77d440ff id:long access_hash:long = InputAudio;
-
-inputDocumentEmpty#72f0eaae = InputDocument;
-inputDocument#18798952 id:long access_hash:long = InputDocument;
-
-inputAudioFileLocation#74dc404d id:long access_hash:long = InputFileLocation;
-inputDocumentFileLocation#4e45abe9 id:long access_hash:long = InputFileLocation;
-
-audioEmpty#586988d8 id:long = Audio;
-audio#c7ac6496 id:long access_hash:long user_id:int date:int duration:int mime_type:string size:int dc_id:int = Audio;
-
-documentEmpty#36f8c871 id:long = Document;
-document#f9a39f4f id:long access_hash:long date:int mime_type:string size:int thumb:PhotoSize dc_id:int attributes:Vector<DocumentAttribute> = Document;
-document_l19#9efc6326 id:long access_hash:long user_id:int date:int file_name:string mime_type:string size:int thumb:PhotoSize dc_id:int = Document;
-
-help.support#17c6b5f6 phone_number:string user:User = help.Support;
-
-notifyPeer#9fd40bd8 peer:Peer = NotifyPeer;
-notifyUsers#b4c83b4c = NotifyPeer;
-notifyChats#c007cec3 = NotifyPeer;
-notifyAll#74d07c60 = NotifyPeer;
-
-updateUserBlocked#80ece81a user_id:int blocked:Bool = Update;
-updateNotifySettings#bec268ef peer:NotifyPeer notify_settings:PeerNotifySettings = Update;
-
-auth.sentAppCode#e325edcf phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-sendMessageTypingAction#16bf744e = SendMessageAction;
-sendMessageCancelAction#fd5ec8f5 = SendMessageAction;
-sendMessageRecordVideoAction#a187d66f = SendMessageAction;
-sendMessageUploadVideoAction#92042ff7 = SendMessageAction;
-sendMessageRecordAudioAction#d52f73f7 = SendMessageAction;
-sendMessageUploadAudioAction#e6ac8a6f = SendMessageAction;
-sendMessageUploadPhotoAction#990a3c1a = SendMessageAction;
-sendMessageUploadDocumentAction#8faee98e = SendMessageAction;
-sendMessageGeoLocationAction#176f8ba1 = SendMessageAction;
-sendMessageChooseContactAction#628cbc6f = SendMessageAction;
-
-contactFound#ea879f95 user_id:int = ContactFound;
-
-contacts.found#566000e results:Vector<ContactFound> users:Vector<User> = contacts.Found;
-
-updateServiceNotification#382dd3e4 type:string message:string media:MessageMedia popup:Bool = Update;
-
-userStatusRecently#e26f42f1 = UserStatus;
-userStatusLastWeek#7bf09fc = UserStatus;
-userStatusLastMonth#77ebc742 = UserStatus;
-
-updatePrivacy#ee3b272a key:PrivacyKey rules:Vector<PrivacyRule> = Update;
-
-inputPrivacyKeyStatusTimestamp#4f96cb18 = InputPrivacyKey;
-
-privacyKeyStatusTimestamp#bc2eab30 = PrivacyKey;
-
-inputPrivacyValueAllowContacts#d09e07b = InputPrivacyRule;
-inputPrivacyValueAllowAll#184b35ce = InputPrivacyRule;
-inputPrivacyValueAllowUsers#131cc67f users:Vector<InputUser> = InputPrivacyRule;
-inputPrivacyValueDisallowContacts#ba52007 = InputPrivacyRule;
-inputPrivacyValueDisallowAll#d66b66c9 = InputPrivacyRule;
-inputPrivacyValueDisallowUsers#90110467 users:Vector<InputUser> = InputPrivacyRule;
-
-privacyValueAllowContacts#fffe1bac = PrivacyRule;
-privacyValueAllowAll#65427b82 = PrivacyRule;
-privacyValueAllowUsers#4d5bbe0c users:Vector<int> = PrivacyRule;
-privacyValueDisallowContacts#f888fa1a = PrivacyRule;
-privacyValueDisallowAll#8b73e763 = PrivacyRule;
-privacyValueDisallowUsers#c7f49b7 users:Vector<int> = PrivacyRule;
-
-account.privacyRules#554abb6f rules:Vector<PrivacyRule> users:Vector<User> = account.PrivacyRules;
-
-accountDaysTTL#b8d0afdf days:int = AccountDaysTTL;
-
-account.sentChangePhoneCode#a4f58c4c phone_code_hash:string send_call_timeout:int = account.SentChangePhoneCode;
-
-updateUserPhone#12b9417b user_id:int phone:string = Update;
-
-account.noPassword#5770e7a9 new_salt:bytes = account.Password;
-account.password#739e5f72 current_salt:bytes new_salt:bytes hint:string = account.Password;
-
-documentAttributeImageSize#6c37c15c w:int h:int = DocumentAttribute;
-documentAttributeAnimated#11b58939 = DocumentAttribute;
-documentAttributeSticker#fb0a5727 = DocumentAttribute;
-documentAttributeVideo#5910cccb duration:int w:int h:int = DocumentAttribute;
-documentAttributeAudio#51448e5 duration:int = DocumentAttribute;
-documentAttributeFilename#15590068 file_name:string = DocumentAttribute;
-
-messages.stickersNotModified#f1749a22 = messages.Stickers;
-messages.stickers#8a8ecd32 hash:string stickers:Vector<Document> = messages.Stickers;
-
-stickerPack#12b299d4 emoticon:string documents:Vector<long> = StickerPack;
-
-messages.allStickersNotModified#e86602c3 = messages.AllStickers;
-messages.allStickers#dcef3102 hash:string packs:Vector<StickerPack> documents:Vector<Document> = messages.AllStickers;
-
----functions---
-
-invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
-
-invokeAfterMsgs#3dc4b4f0 {X:Type} msg_ids:Vector<long> query:!X = X;
-
-auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone;
-auth.sendCode#768d5f4d phone_number:string sms_type:int api_id:int api_hash:string lang_code:string = auth.SentCode;
-auth.sendCall#3c51564 phone_number:string phone_code_hash:string = Bool;
-auth.signUp#1b067634 phone_number:string phone_code_hash:string phone_code:string first_name:string last_name:string = auth.Authorization;
-auth.signIn#bcd51581 phone_number:string phone_code_hash:string phone_code:string = auth.Authorization;
-auth.logOut#5717da40 = Bool;
-auth.resetAuthorizations#9fab0d1a = Bool;
-auth.sendInvites#771c1d97 phone_numbers:Vector<string> message:string = Bool;
-auth.exportAuthorization#e5bfffcd dc_id:int = auth.ExportedAuthorization;
-auth.importAuthorization#e3ef9613 id:int bytes:bytes = auth.Authorization;
-auth.bindTempAuthKey#cdd42a05 perm_auth_key_id:long nonce:long expires_at:int encrypted_message:bytes = Bool;
-
-account.registerDevice#446c712c token_type:int token:string device_model:string system_version:string app_version:string app_sandbox:Bool lang_code:string = Bool;
-account.unregisterDevice#65c55b40 token_type:int token:string = Bool;
-account.updateNotifySettings#84be5b93 peer:InputNotifyPeer settings:InputPeerNotifySettings = Bool;
-account.getNotifySettings#12b3ad31 peer:InputNotifyPeer = PeerNotifySettings;
-account.resetNotifySettings#db7e1747 = Bool;
-account.updateProfile#f0888d68 first_name:string last_name:string = User;
-account.updateStatus#6628562c offline:Bool = Bool;
-account.getWallPapers#c04cfac2 = Vector<WallPaper>;
-
-users.getUsers#d91a548 id:Vector<InputUser> = Vector<User>;
-users.getFullUser#ca30a5b1 id:InputUser = UserFull;
-
-contacts.getStatuses#c4a353ee = Vector<ContactStatus>;
-contacts.getContacts#22c6aa08 hash:string = contacts.Contacts;
-contacts.importContacts#da30b32d contacts:Vector<InputContact> replace:Bool = contacts.ImportedContacts;
-contacts.getSuggested#cd773428 limit:int = contacts.Suggested;
-contacts.deleteContact#8e953744 id:InputUser = contacts.Link;
-contacts.deleteContacts#59ab389e id:Vector<InputUser> = Bool;
-contacts.block#332b49fc id:InputUser = Bool;
-contacts.unblock#e54100bd id:InputUser = Bool;
-contacts.getBlocked#f57c350f offset:int limit:int = contacts.Blocked;
-contacts.exportCard#84e53737 = Vector<int>;
-contacts.importCard#4fe196fe export_card:Vector<int> = User;
-
-messages.getMessages#4222fa74 id:Vector<int> = messages.Messages;
-messages.getDialogs#eccf1df6 offset:int max_id:int limit:int = messages.Dialogs;
-messages.getHistory#92a1df2f peer:InputPeer offset:int max_id:int limit:int = messages.Messages;
-messages.search#7e9f2ab peer:InputPeer q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = messages.Messages;
-messages.readHistory#eed884c6 peer:InputPeer max_id:int offset:int read_contents:Bool = messages.AffectedHistory;
-messages.deleteHistory#f4f8fb61 peer:InputPeer offset:int = messages.AffectedHistory;
-messages.deleteMessages#14f2dd0a id:Vector<int> = Vector<int>;
-messages.restoreMessages#395f9d7e id:Vector<int> = Vector<int>;
-messages.receivedMessages#28abcb68 max_id:int = Vector<int>;
-messages.setTyping#a3825e50 peer:InputPeer action:SendMessageAction = Bool;
-messages.sendMessage#4cde0aab peer:InputPeer message:string random_id:long = messages.SentMessage;
-messages.sendMedia#a3c85d76 peer:InputPeer media:InputMedia random_id:long = messages.StatedMessage;
-messages.forwardMessages#514cd10f peer:InputPeer id:Vector<int> = messages.StatedMessages;
-messages.getChats#3c6aa187 id:Vector<int> = messages.Chats;
-messages.getFullChat#3b831c66 chat_id:int = messages.ChatFull;
-messages.editChatTitle#b4bc68b5 chat_id:int title:string = messages.StatedMessage;
-messages.editChatPhoto#d881821d chat_id:int photo:InputChatPhoto = messages.StatedMessage;
-messages.addChatUser#2ee9ee9e chat_id:int user_id:InputUser fwd_limit:int = messages.StatedMessage;
-messages.deleteChatUser#c3c5cd23 chat_id:int user_id:InputUser = messages.StatedMessage;
-messages.createChat#419d9aee users:Vector<InputUser> title:string = messages.StatedMessage;
-
-updates.getState#edd4882a = updates.State;
-updates.getDifference#a041495 pts:int date:int qts:int = updates.Difference;
-
-photos.updateProfilePhoto#eef579a0 id:InputPhoto crop:InputPhotoCrop = UserProfilePhoto;
-photos.uploadProfilePhoto#d50f9c88 file:InputFile caption:string geo_point:InputGeoPoint crop:InputPhotoCrop = photos.Photo;
-photos.deletePhotos#87cf7f2f id:Vector<InputPhoto> = Vector<long>;
-
-upload.saveFilePart#b304a621 file_id:long file_part:int bytes:bytes = Bool;
-upload.getFile#e3a6cfb5 location:InputFileLocation offset:int limit:int = upload.File;
-
-help.getConfig#c4f9186b = Config;
-help.getNearestDc#1fb33026 = NearestDc;
-help.getAppUpdate#c812ac7e device_model:string system_version:string app_version:string lang_code:string = help.AppUpdate;
-help.saveAppLog#6f02f748 events:Vector<InputAppEvent> = Bool;
-help.getInviteText#a4a95186 lang_code:string = help.InviteText;
-
-photos.getUserPhotos#b7ee553c user_id:InputUser offset:int max_id:int limit:int = photos.Photos;
-
-messages.forwardMessage#3f3f4f2 peer:InputPeer id:int random_id:long = messages.StatedMessage;
-messages.sendBroadcast#41bb0972 contacts:Vector<InputUser> message:string media:InputMedia = messages.StatedMessages;
-
-geochats.getLocated#7f192d8f geo_point:InputGeoPoint radius:int limit:int = geochats.Located;
-geochats.getRecents#e1427e6f offset:int limit:int = geochats.Messages;
-geochats.checkin#55b3e8fb peer:InputGeoChat = geochats.StatedMessage;
-geochats.getFullChat#6722dd6f peer:InputGeoChat = messages.ChatFull;
-geochats.editChatTitle#4c8e2273 peer:InputGeoChat title:string address:string = geochats.StatedMessage;
-geochats.editChatPhoto#35d81a95 peer:InputGeoChat photo:InputChatPhoto = geochats.StatedMessage;
-geochats.search#cfcdc44d peer:InputGeoChat q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = geochats.Messages;
-geochats.getHistory#b53f7a68 peer:InputGeoChat offset:int max_id:int limit:int = geochats.Messages;
-geochats.setTyping#8b8a729 peer:InputGeoChat typing:Bool = Bool;
-geochats.sendMessage#61b0044 peer:InputGeoChat message:string random_id:long = geochats.StatedMessage;
-geochats.sendMedia#b8f0deff peer:InputGeoChat media:InputMedia random_id:long = geochats.StatedMessage;
-geochats.createGeoChat#e092e16 title:string geo_point:InputGeoPoint address:string venue:string = geochats.StatedMessage;
-
-messages.getDhConfig#26cf8950 version:int random_length:int = messages.DhConfig;
-messages.requestEncryption#f64daf43 user_id:InputUser random_id:int g_a:bytes = EncryptedChat;
-messages.acceptEncryption#3dbc0415 peer:InputEncryptedChat g_b:bytes key_fingerprint:long = EncryptedChat;
-messages.discardEncryption#edd923c5 chat_id:int = Bool;
-messages.setEncryptedTyping#791451ed peer:InputEncryptedChat typing:Bool = Bool;
-messages.readEncryptedHistory#7f4b690a peer:InputEncryptedChat max_date:int = Bool;
-messages.sendEncrypted#a9776773 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.sendEncryptedFile#9a901b66 peer:InputEncryptedChat random_id:long data:bytes file:InputEncryptedFile = messages.SentEncryptedMessage;
-messages.sendEncryptedService#32d439a4 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.receivedQueue#55a5bb66 max_qts:int = Vector<long>;
-
-upload.saveBigFilePart#de7b673d file_id:long file_part:int file_total_parts:int bytes:bytes = Bool;
-
-initConnection#69796de9 {X:Type} api_id:int device_model:string system_version:string app_version:string lang_code:string query:!X = X;
-
-help.getSupport#9cdf08cd = help.Support;
-
-auth.sendSms#da9f3e8 phone_number:string phone_code_hash:string = Bool;
-
-messages.readMessageContents#354b5bc2 id:Vector<int> = Vector<int>;
-
-account.checkUsername#2714d86c username:string = Bool;
-account.updateUsername#3e0bdd7c username:string = User;
-
-contacts.search#11f812d8 q:string limit:int = contacts.Found;
-
-account.getPrivacy#dadbc950 key:InputPrivacyKey = account.PrivacyRules;
-account.setPrivacy#c9f81ce8 key:InputPrivacyKey rules:Vector<InputPrivacyRule> = account.PrivacyRules;
-account.deleteAccount#418d4e0b reason:string = Bool;
-account.getAccountTTL#8fc711d = AccountDaysTTL;
-account.setAccountTTL#2442485e ttl:AccountDaysTTL = Bool;
-
-invokeWithLayer#da9b0d0d {X:Type} layer:int query:!X = X;
-
-contacts.resolveUsername#bf0131c username:string = User;
-
-account.sendChangePhoneCode#a407a8f4 phone_number:string = account.SentChangePhoneCode;
-account.changePhone#70c32edb phone_number:string phone_code_hash:string phone_code:string = User;
-account.getPassword#548a30f5 = account.Password;
-account.setPassword#dd2a4d8f current_password_hash:bytes new_salt:bytes new_password_hash:bytes hint:string = Bool;
-
-auth.checkPassword#a63011e password_hash:bytes = auth.Authorization;
-
-messages.getStickers#ae22e045 emoticon:string hash:string = messages.Stickers;
-messages.getAllStickers#aa3bc868 hash:string = messages.AllStickers;
diff --git a/protocols/Telegram/docs/tgl/scheme2.tl b/protocols/Telegram/docs/tgl/scheme2.tl
deleted file mode 100644
index 1867166cb2..0000000000
--- a/protocols/Telegram/docs/tgl/scheme2.tl
+++ /dev/null
@@ -1,540 +0,0 @@
-int#a8509bda ? = Int
-long#22076cba ? = Long
-double#2210c154 ? = Double
-string#b5286e24 ? = String
-bytes#0ee1379f string = Bytes
-int128#7d36c439 long long = Int128
-int256#f2c798b3 long long long long = Int256
-boolFalse#bc799737 = Bool
-boolTrue#997275b5 = Bool
-vector#1cb5c415 t:Type # [ t ] = Vector t
-error#c4b9f9bb code:int text:string = Error
-null#56730bcc = Null
-inputPeerEmpty#7f3b18ea = InputPeer
-inputPeerSelf#7da07ec9 = InputPeer
-inputPeerContact#1023dbe8 user_id:int = InputPeer
-inputPeerForeign#9b447325 user_id:int access_hash:long = InputPeer
-inputPeerChat#179be863 chat_id:int = InputPeer
-inputUserEmpty#b98886cf = InputUser
-inputUserSelf#f7c1b13f = InputUser
-inputUserContact#86e94f65 user_id:int = InputUser
-inputUserForeign#655e74ff user_id:int access_hash:long = InputUser
-inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact
-inputFile#f52ff27f id:long parts:int name:string md5_checksum:string = InputFile
-inputMediaEmpty#9664f57f = InputMedia
-inputMediaUploadedPhoto#f7aff1c0 file:InputFile caption:string = InputMedia
-inputMediaPhoto#e9bfb4f3 id:InputPhoto caption:string = InputMedia
-inputMediaGeoPoint#f9c44144 geo_point:InputGeoPoint = InputMedia
-inputMediaContact#a6e45987 phone_number:string first_name:string last_name:string = InputMedia
-inputMediaUploadedVideo#e13fd4bc file:InputFile duration:int w:int h:int caption:string = InputMedia
-inputMediaUploadedThumbVideo#96fb97dc file:InputFile thumb:InputFile duration:int w:int h:int caption:string = InputMedia
-inputMediaVideo#936a4ebd video_id:InputVideo caption:string = InputMedia
-inputChatPhotoEmpty#1ca48f57 = InputChatPhoto
-inputChatUploadedPhoto#94254732 file:InputFile crop:InputPhotoCrop = InputChatPhoto
-inputChatPhoto#b2e1bf08 id:InputPhoto crop:InputPhotoCrop = InputChatPhoto
-inputGeoPointEmpty#e4c123d6 = InputGeoPoint
-inputGeoPoint#f3b7acc9 latitude:double longitude:double = InputGeoPoint
-inputPhotoEmpty#1cd7bf0d = InputPhoto
-inputPhoto#fb95c6c4 id:long access_hash:long = InputPhoto
-inputVideoEmpty#5508ec75 = InputVideo
-inputVideo#ee579652 id:long access_hash:long = InputVideo
-inputFileLocation#14637196 volume_id:long local_id:int secret:long = InputFileLocation
-inputVideoFileLocation#3d0364ec id:long access_hash:long = InputFileLocation
-inputPhotoCropAuto#ade6b004 = InputPhotoCrop
-inputPhotoCrop#d9915325 crop_left:double crop_top:double crop_width:double = InputPhotoCrop
-inputAppEvent#770656a8 time:double type:string peer:long data:string = InputAppEvent
-peerUser#9db1bc6d user_id:int = Peer
-peerChat#bad0e5bb chat_id:int = Peer
-storage.fileUnknown#aa963b05 = storage.FileType
-storage.fileJpeg#007efe0e = storage.FileType
-storage.fileGif#cae1aadf = storage.FileType
-storage.filePng#0a4f63c0 = storage.FileType
-storage.filePdf#ae1e508d = storage.FileType
-storage.fileMp3#528a0677 = storage.FileType
-storage.fileMov#4b09ebbc = storage.FileType
-storage.filePartial#40bc6f52 = storage.FileType
-storage.fileMp4#b3cea0e4 = storage.FileType
-storage.fileWebp#1081464c = storage.FileType
-fileLocationUnavailable#7c596b46 volume_id:long local_id:int secret:long = FileLocation
-fileLocation#53d69076 dc_id:int volume_id:long local_id:int secret:long = FileLocation
-userEmpty#200250ba id:int = User
-userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto
-userProfilePhoto#d559d8c8 photo_id:long photo_small:FileLocation photo_big:FileLocation = UserProfilePhoto
-userStatusEmpty#09d05049 = UserStatus
-userStatusOnline#edb93949 expires:int = UserStatus
-userStatusOffline#008c703f was_online:int = UserStatus
-chatEmpty#9ba2d800 id:int = Chat
-chat#6e9c9bc7 id:int title:string photo:ChatPhoto participants_count:int date:int left:Bool version:int = Chat
-chatForbidden#fb0ccc41 id:int title:string date:int = Chat
-chatFull#2e02a614 id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings exported_invite:ExportedChatInvite bot_info:Vector BotInfo = ChatFull
-chatParticipant#c8d7493e user_id:int inviter_id:int date:int = ChatParticipant
-chatParticipantsForbidden#0fd2bb8a chat_id:int = ChatParticipants
-chatParticipants#7841b415 chat_id:int admin_id:int participants:Vector ChatParticipant version:int = ChatParticipants
-chatPhotoEmpty#37c1011c = ChatPhoto
-chatPhoto#6153276a photo_small:FileLocation photo_big:FileLocation = ChatPhoto
-messageEmpty#83e5de54 id:int = Message
-message#c3060325 flags:# id:int from_id:int to_id:Peer fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int date:int message:string media:MessageMedia reply_markup:flags.6?ReplyMarkup = Message
-messageService#1d86f70e flags:int id:int from_id:int to_id:Peer date:int action:MessageAction = Message
-messageMediaEmpty#3ded6320 = MessageMedia
-messageMediaPhoto#3d8ce53d photo:Photo caption:string = MessageMedia
-messageMediaVideo#5bcf1675 video:Video caption:string = MessageMedia
-messageMediaGeo#56e0d474 geo:GeoPoint = MessageMedia
-messageMediaContact#5e7d2f39 phone_number:string first_name:string last_name:string user_id:int = MessageMedia
-messageMediaUnsupported#9f84f49e = MessageMedia
-messageActionEmpty#b6aef7b0 = MessageAction
-messageActionChatCreate#a6638b9a title:string users:Vector int = MessageAction
-messageActionChatEditTitle#b5a1ce5a title:string = MessageAction
-messageActionChatEditPhoto#7fcb13a8 photo:Photo = MessageAction
-messageActionChatDeletePhoto#95e3fbef = MessageAction
-messageActionChatAddUser#5e3cfc4b user_id:int = MessageAction
-messageActionChatDeleteUser#b2ae9b0c user_id:int = MessageAction
-dialog#c1dd804a peer:Peer top_message:int read_inbox_max_id:int unread_count:int notify_settings:PeerNotifySettings = Dialog
-photoEmpty#2331b22d id:long = Photo
-photo#c3838076 id:long access_hash:long user_id:int date:int geo:GeoPoint sizes:Vector PhotoSize = Photo
-photoL27#22b56751 id:long access_hash:long user_id:int date:int caption:string geo:GeoPoint sizes:Vector PhotoSize = Photo
-photoSizeEmpty#0e17e23c type:string = PhotoSize
-photoSize#77bfb61b type:string location:FileLocation w:int h:int size:int = PhotoSize
-photoCachedSize#e9a734fa type:string location:FileLocation w:int h:int bytes:bytes = PhotoSize
-videoEmpty#c10658a8 id:long = Video
-video#ee9f4a4d id:long access_hash:long user_id:int date:int duration:int size:int thumb:PhotoSize dc_id:int w:int h:int = Video
-videoL27#388fa391 id:long access_hash:long user_id:int date:int caption:string duration:int mime_type:string size:int thumb:PhotoSize dc_id:int w:int h:int = Video
-geoPointEmpty#1117dd5f = GeoPoint
-geoPoint#2049d70c longitude:double latitude:double = GeoPoint
-auth.checkedPhone#811ea28e phone_registered:Bool = auth.CheckedPhone
-auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode
-auth.authorization#ff036af1 user:User = auth.Authorization
-auth.exportedAuthorization#df969c2d id:int bytes:bytes = auth.ExportedAuthorization
-inputNotifyPeer#b8bc5b0c peer:InputPeer = InputNotifyPeer
-inputNotifyUsers#193b4417 = InputNotifyPeer
-inputNotifyChats#4a95e84e = InputNotifyPeer
-inputNotifyAll#a429b886 = InputNotifyPeer
-inputPeerNotifyEventsEmpty#f03064d8 = InputPeerNotifyEvents
-inputPeerNotifyEventsAll#e86a2c74 = InputPeerNotifyEvents
-inputPeerNotifySettings#46a2ce98 mute_until:int sound:string show_previews:Bool events_mask:int = InputPeerNotifySettings
-peerNotifyEventsEmpty#add53cb3 = PeerNotifyEvents
-peerNotifyEventsAll#6d1ded88 = PeerNotifyEvents
-peerNotifySettingsEmpty#70a68512 = PeerNotifySettings
-peerNotifySettings#8d5e11ee mute_until:int sound:string show_previews:Bool events_mask:int = PeerNotifySettings
-wallPaper#ccb03657 id:int title:string sizes:Vector PhotoSize color:int = WallPaper
-userFull#5a89ac5b user:User link:contacts.Link profile_photo:Photo notify_settings:PeerNotifySettings blocked:Bool bot_info:BotInfo = UserFull
-contact#f911c994 user_id:int mutual:Bool = Contact
-importedContact#d0028438 user_id:int client_id:long = ImportedContact
-contactBlocked#561bc879 user_id:int date:int = ContactBlocked
-contactSuggested#3de191a1 user_id:int mutual_contacts:int = ContactSuggested
-contactStatus#d3680c61 user_id:int status:UserStatus = ContactStatus
-chatLocated#3631cf4c chat_id:int distance:int = ChatLocated
-contacts.link#3ace484c my_link:ContactLink foreign_link:ContactLink user:User = contacts.Link
-contacts.contactsNotModified#b74ba9d2 = contacts.Contacts
-contacts.contacts#6f8b8cb2 contacts:Vector Contact users:Vector User = contacts.Contacts
-contacts.importedContacts#ad524315 imported:Vector ImportedContact retry_contacts:Vector long users:Vector User = contacts.ImportedContacts
-contacts.blocked#1c138d15 blocked:Vector ContactBlocked users:Vector User = contacts.Blocked
-contacts.blockedSlice#900802a1 count:int blocked:Vector ContactBlocked users:Vector User = contacts.Blocked
-contacts.suggested#5649dcc5 results:Vector ContactSuggested users:Vector User = contacts.Suggested
-messages.dialogs#15ba6c40 dialogs:Vector Dialog messages:Vector Message chats:Vector Chat users:Vector User = messages.Dialogs
-messages.dialogsSlice#71e094f3 count:int dialogs:Vector Dialog messages:Vector Message chats:Vector Chat users:Vector User = messages.Dialogs
-messages.messages#8c718e87 messages:Vector Message chats:Vector Chat users:Vector User = messages.Messages
-messages.messagesSlice#0b446ae3 count:int messages:Vector Message chats:Vector Chat users:Vector User = messages.Messages
-messages.messageEmpty#3f4e0648 = messages.Message
-messages.sentMessage#4c3d47f3 id:int date:int media:MessageMedia pts:int pts_count:int = messages.SentMessage
-messages.chats#64ff9fd5 chats:Vector Chat = messages.Chats
-messages.chatFull#e5d7d19c full_chat:ChatFull chats:Vector Chat users:Vector User = messages.ChatFull
-messages.affectedHistory#b45c69d1 pts:int pts_count:int offset:int = messages.AffectedHistory
-inputMessagesFilterEmpty#57e2f66c = MessagesFilter
-inputMessagesFilterPhotos#9609a51c = MessagesFilter
-inputMessagesFilterVideo#9fc00e65 = MessagesFilter
-inputMessagesFilterPhotoVideo#56e9f0e4 = MessagesFilter
-inputMessagesFilterPhotoVideoDocuments#d95e73bb = MessagesFilter
-inputMessagesFilterDocument#9eddf188 = MessagesFilter
-inputMessagesFilterAudio#cfc87522 = MessagesFilter
-updateNewMessage#1f2b0afd message:Message pts:int pts_count:int = Update
-updateMessageID#4e90bfd6 id:int random_id:long = Update
-updateDeleteMessages#a20db0e5 messages:Vector int pts:int pts_count:int = Update
-updateUserTyping#5c486927 user_id:int action:SendMessageAction = Update
-updateChatUserTyping#9a65ea1f chat_id:int user_id:int action:SendMessageAction = Update
-updateChatParticipants#07761198 participants:ChatParticipants = Update
-updateUserStatus#1bfbd823 user_id:int status:UserStatus = Update
-updateUserName#a7332b73 user_id:int first_name:string last_name:string username:string = Update
-updateUserPhoto#95313b0c user_id:int date:int photo:UserProfilePhoto previous:Bool = Update
-updateContactRegistered#2575bbb9 user_id:int date:int = Update
-updateContactLink#9d2e67c5 user_id:int my_link:ContactLink foreign_link:ContactLink = Update
-updateNewAuthorization#8f06529a auth_key_id:long date:int device:string location:string = Update
-updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State
-updates.differenceEmpty#5d75a138 date:int seq:int = updates.Difference
-updates.difference#00f49ca0 new_messages:Vector Message new_encrypted_messages:Vector EncryptedMessage other_updates:Vector Update chats:Vector Chat users:Vector User state:updates.State = updates.Difference
-updates.differenceSlice#a8fb1981 new_messages:Vector Message new_encrypted_messages:Vector EncryptedMessage other_updates:Vector Update chats:Vector Chat users:Vector User intermediate_state:updates.State = updates.Difference
-updatesTooLong#e317af7e = Updates
-updateShortMessage#ed5c2127 flags:# id:int user_id:int message:string pts:int pts_count:int date:int fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int = Updates
-updateShortChatMessage#52238b3c flags:# id:int from_id:int chat_id:int message:string pts:int pts_count:int date:int fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int = Updates
-updateShort#78d4dec1 update:Update date:int = Updates
-updatesCombined#725b04c3 updates:Vector Update users:Vector User chats:Vector Chat date:int seq_start:int seq:int = Updates
-updates#74ae4240 updates:Vector Update users:Vector User chats:Vector Chat date:int seq:int = Updates
-photos.photos#8dca6aa5 photos:Vector Photo users:Vector User = photos.Photos
-photos.photosSlice#15051f54 count:int photos:Vector Photo users:Vector User = photos.Photos
-photos.photo#20212ca8 photo:Photo users:Vector User = photos.Photo
-upload.file#096a18d5 type:storage.FileType mtime:int bytes:bytes = upload.File
-dcOptionL28#2ec2a43c id:int hostname:string ip_address:string port:int = DcOption
-dcOption#05d8c6cc flags:int id:int ip_address:string port:int = DcOption
-config#4e32b894 date:int expires:int test_mode:Bool this_dc:int dc_options:Vector DcOption chat_size_max:int broadcast_size_max:int forwarded_count_max:int online_update_period_ms:int offline_blur_timeout_ms:int offline_idle_timeout_ms:int online_cloud_timeout_ms:int notify_cloud_delay_ms:int notify_default_delay_ms:int chat_big_size:int push_chat_period_ms:int push_chat_limit:int disabled_features:Vector DisabledFeature = Config
-nearestDc#8e1a1775 country:string this_dc:int nearest_dc:int = NearestDc
-help.appUpdate#8987f311 id:int critical:Bool url:string text:string = help.AppUpdate
-help.noAppUpdate#c45a6536 = help.AppUpdate
-help.inviteText#18cb9f78 message:string = help.InviteText
-messages.sentMessageLink#35a1a663 id:int date:int media:MessageMedia pts:int pts_count:int links:Vector contacts.Link seq:int = messages.SentMessage
-inputGeoChat#74d456fa chat_id:int access_hash:long = InputGeoChat
-inputNotifyGeoChatPeer#4d8ddec8 geo_peer:InputGeoChat = InputNotifyPeer
-geoChat#75eaea5a id:int access_hash:long title:string address:string venue:string geo:GeoPoint photo:ChatPhoto participants_count:int date:int checked_in:Bool version:int = Chat
-geoChatMessageEmpty#60311a9b chat_id:int id:int = GeoChatMessage
-geoChatMessage#4505f8e1 chat_id:int id:int from_id:int date:int message:string media:MessageMedia = GeoChatMessage
-geoChatMessageService#d34fa24e chat_id:int id:int from_id:int date:int action:MessageAction = GeoChatMessage
-geochats.statedMessage#17b1578b message:GeoChatMessage chats:Vector Chat users:Vector User seq:int = geochats.StatedMessage
-geochats.located#48feb267 results:Vector ChatLocated messages:Vector GeoChatMessage chats:Vector Chat users:Vector User = geochats.Located
-geochats.messages#d1526db1 messages:Vector GeoChatMessage chats:Vector Chat users:Vector User = geochats.Messages
-geochats.messagesSlice#bc5863e8 count:int messages:Vector GeoChatMessage chats:Vector Chat users:Vector User = geochats.Messages
-messageActionGeoChatCreate#6f038ebc title:string address:string = MessageAction
-messageActionGeoChatCheckin#0c7d53de = MessageAction
-updateNewGeoChatMessage#5a68e3f7 geo_message:GeoChatMessage = Update
-wallPaperSolid#63117f24 id:int title:string bg_color:int color:int = WallPaper
-updateNewEncryptedMessage#12bcbd9a encr_message:EncryptedMessage qts:int = Update
-updateEncryptedChatTyping#1710f156 chat_id:int = Update
-updateEncryption#b4a2e88d encr_chat:EncryptedChat date:int = Update
-updateEncryptedMessagesRead#38fe25b7 chat_id:int max_date:int date:int = Update
-encryptedChatEmpty#ab7ec0a0 id:int = EncryptedChat
-encryptedChatWaiting#3bf703dc id:int access_hash:long date:int admin_id:int participant_id:int = EncryptedChat
-encryptedChatRequested#c878527e id:int access_hash:long date:int admin_id:int participant_id:int g_a:bytes = EncryptedChat
-encryptedChat#fa56ce36 id:int access_hash:long date:int admin_id:int participant_id:int g_a_or_b:bytes key_fingerprint:long = EncryptedChat
-encryptedChatDiscarded#13d6dd27 id:int = EncryptedChat
-inputEncryptedChat#f141b5e1 chat_id:int access_hash:long = InputEncryptedChat
-encryptedFileEmpty#c21f497e = EncryptedFile
-encryptedFile#4a70994c id:long access_hash:long size:int dc_id:int key_fingerprint:int = EncryptedFile
-inputEncryptedFileEmpty#1837c364 = InputEncryptedFile
-inputEncryptedFileUploaded#64bd0306 id:long parts:int md5_checksum:string key_fingerprint:int = InputEncryptedFile
-inputEncryptedFile#5a17b5e5 id:long access_hash:long = InputEncryptedFile
-inputEncryptedFileLocation#f5235d55 id:long access_hash:long = InputFileLocation
-encryptedMessage#ed18c118 random_id:long chat_id:int date:int bytes:bytes file:EncryptedFile = EncryptedMessage
-encryptedMessageService#23734b06 random_id:long chat_id:int date:int bytes:bytes = EncryptedMessage
-messages.dhConfigNotModified#c0e24635 random:bytes = messages.DhConfig
-messages.dhConfig#2c221edd g:int p:bytes version:int random:bytes = messages.DhConfig
-messages.sentEncryptedMessage#560f8935 date:int = messages.SentEncryptedMessage
-messages.sentEncryptedFile#9493ff32 date:int file:EncryptedFile = messages.SentEncryptedMessage
-inputFileBig#fa4f0bb5 id:long parts:int name:string = InputFile
-inputEncryptedFileBigUploaded#2dc173c8 id:long parts:int key_fingerprint:int = InputEncryptedFile
-updateChatParticipantAdd#3a0eeb22 chat_id:int user_id:int inviter_id:int version:int = Update
-updateChatParticipantDelete#6e5f8c22 chat_id:int user_id:int version:int = Update
-updateDcOptions#8e5e9873 dc_options:Vector DcOption = Update
-inputMediaUploadedAudio#4e498cab file:InputFile duration:int mime_type:string = InputMedia
-inputMediaAudio#89938781 audio_id:InputAudio = InputMedia
-inputMediaUploadedDocument#ffe76b78 file:InputFile mime_type:string attributes:Vector DocumentAttribute = InputMedia
-inputMediaUploadedThumbDocument#41481486 file:InputFile thumb:InputFile mime_type:string attributes:Vector DocumentAttribute = InputMedia
-inputMediaDocument#d184e841 document_id:InputDocument = InputMedia
-messageMediaDocument#2fda2204 document:Document = MessageMedia
-messageMediaAudio#c6b68300 audio:Audio = MessageMedia
-inputAudioEmpty#d95adc84 = InputAudio
-inputAudio#77d440ff id:long access_hash:long = InputAudio
-inputDocumentEmpty#72f0eaae = InputDocument
-inputDocument#18798952 id:long access_hash:long = InputDocument
-inputAudioFileLocation#74dc404d id:long access_hash:long = InputFileLocation
-inputDocumentFileLocation#4e45abe9 id:long access_hash:long = InputFileLocation
-audioEmpty#586988d8 id:long = Audio
-audio#c7ac6496 id:long access_hash:long user_id:int date:int duration:int mime_type:string size:int dc_id:int = Audio
-documentEmpty#36f8c871 id:long = Document
-document#f9a39f4f id:long access_hash:long date:int mime_type:string size:int thumb:PhotoSize dc_id:int attributes:Vector DocumentAttribute = Document
-document_l19#9efc6326 id:long access_hash:long user_id:int date:int file_name:string mime_type:string size:int thumb:PhotoSize dc_id:int = Document
-help.support#17c6b5f6 phone_number:string user:User = help.Support
-notifyPeer#9fd40bd8 peer:Peer = NotifyPeer
-notifyUsers#b4c83b4c = NotifyPeer
-notifyChats#c007cec3 = NotifyPeer
-notifyAll#74d07c60 = NotifyPeer
-updateUserBlocked#80ece81a user_id:int blocked:Bool = Update
-updateNotifySettings#bec268ef notify_peer:NotifyPeer notify_settings:PeerNotifySettings = Update
-auth.sentAppCode#e325edcf phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode
-sendMessageTypingAction#16bf744e = SendMessageAction
-sendMessageCancelAction#fd5ec8f5 = SendMessageAction
-sendMessageRecordVideoAction#a187d66f = SendMessageAction
-sendMessageUploadVideoActionL27#92042ff7 = SendMessageAction
-sendMessageUploadVideoAction#e9763aec progress:int = SendMessageAction
-sendMessageRecordAudioAction#d52f73f7 = SendMessageAction
-sendMessageUploadAudioActionL27#e6ac8a6f = SendMessageAction
-sendMessageUploadAudioAction#f351d7ab progress:int = SendMessageAction
-sendMessageUploadPhotoAction#d1d34a26 progress:int = SendMessageAction
-sendMessageUploadDocumentActionL27#8faee98e = SendMessageAction
-sendMessageUploadDocumentAction#aa0cd9e4 progress:int = SendMessageAction
-sendMessageGeoLocationAction#176f8ba1 = SendMessageAction
-sendMessageChooseContactAction#628cbc6f = SendMessageAction
-contactFound#ea879f95 user_id:int = ContactFound
-contacts.found#0566000e results:Vector ContactFound users:Vector User = contacts.Found
-updateServiceNotification#382dd3e4 type:string message_text:string media:MessageMedia popup:Bool = Update
-userStatusRecently#e26f42f1 = UserStatus
-userStatusLastWeek#07bf09fc = UserStatus
-userStatusLastMonth#77ebc742 = UserStatus
-updatePrivacy#ee3b272a key:PrivacyKey rules:Vector PrivacyRule = Update
-inputPrivacyKeyStatusTimestamp#4f96cb18 = InputPrivacyKey
-privacyKeyStatusTimestamp#bc2eab30 = PrivacyKey
-inputPrivacyValueAllowContacts#0d09e07b = InputPrivacyRule
-inputPrivacyValueAllowAll#184b35ce = InputPrivacyRule
-inputPrivacyValueAllowUsers#131cc67f users:Vector InputUser = InputPrivacyRule
-inputPrivacyValueDisallowContacts#0ba52007 = InputPrivacyRule
-inputPrivacyValueDisallowAll#d66b66c9 = InputPrivacyRule
-inputPrivacyValueDisallowUsers#90110467 users:Vector InputUser = InputPrivacyRule
-privacyValueAllowContacts#fffe1bac = PrivacyRule
-privacyValueAllowAll#65427b82 = PrivacyRule
-privacyValueAllowUsers#4d5bbe0c users:Vector int = PrivacyRule
-privacyValueDisallowContacts#f888fa1a = PrivacyRule
-privacyValueDisallowAll#8b73e763 = PrivacyRule
-privacyValueDisallowUsers#0c7f49b7 users:Vector int = PrivacyRule
-account.privacyRules#554abb6f rules:Vector PrivacyRule users:Vector User = account.PrivacyRules
-accountDaysTTL#b8d0afdf days:int = AccountDaysTTL
-account.sentChangePhoneCode#a4f58c4c phone_code_hash:string send_call_timeout:int = account.SentChangePhoneCode
-updateUserPhone#12b9417b user_id:int phone:string = Update
-documentAttributeImageSize#6c37c15c w:int h:int = DocumentAttribute
-documentAttributeAnimated#11b58939 = DocumentAttribute
-documentAttributeStickerL28#994c9882 alt:string = DocumentAttribute
-documentAttributeSticker#3a556302 alt:string stickerset:InputStickerSet = DocumentAttribute
-documentAttributeVideo#5910cccb duration:int w:int h:int = DocumentAttribute
-documentAttributeAudio#051448e5 duration:int = DocumentAttribute
-documentAttributeFilename#15590068 file_name:string = DocumentAttribute
-messages.stickersNotModified#f1749a22 = messages.Stickers
-messages.stickers#8a8ecd32 hash:string stickers:Vector Document = messages.Stickers
-stickerPack#12b299d4 emoticon:string documents:Vector long = StickerPack
-messages.allStickersNotModified#e86602c3 = messages.AllStickers
-messages.allStickers#5ce352ec hash:string packs:Vector StickerPack sets:Vector StickerSet documents:Vector Document = messages.AllStickers
-disabledFeature#ae636f24 feature:string description:string = DisabledFeature
-updateReadHistoryInbox#9961fd5c peer:Peer max_id:int pts:int pts_count:int = Update
-updateReadHistoryOutbox#2f2f21bf peer:Peer max_id:int pts:int pts_count:int = Update
-messages.affectedMessages#84d19185 pts:int pts_count:int = messages.AffectedMessages
-contactLinkUnknown#5f4f9247 = ContactLink
-contactLinkNone#feedd3ad = ContactLink
-contactLinkHasPhone#268f3f59 = ContactLink
-contactLinkContact#d502c2d0 = ContactLink
-updateWebPage#2cc36971 webpage:WebPage = Update
-webPageEmpty#eb1477e8 id:long = WebPage
-webPagePending#c586da1c id:long date:int = WebPage
-webPage#a31ea0b5 flags:# id:long url:string display_url:string type:flags.0?string site_name:flags.1?string title:flags.2?string description:flags.3?string photo:flags.4?Photo embed_url:flags.5?string embed_type:flags.5?string embed_width:flags.6?int embed_height:flags.6?int duration:flags.7?int author:flags.8?string = WebPage
-messageMediaWebPage#a32dd600 webpage:WebPage = MessageMedia
-authorization#7bf2e6f6 hash:long flags:int device_model:string platform:string system_version:string api_id:int app_name:string app_version:string date_created:int date_active:int ip:string country:string region:string = Authorization
-account.authorizations#1250abde authorizations:Vector Authorization = account.Authorizations
-account.noPassword#96dabc18 new_salt:bytes email_unconfirmed_pattern:string = account.Password
-account.password#7c18141c current_salt:bytes new_salt:bytes hint:string has_recovery:Bool email_unconfirmed_pattern:string = account.Password
-account.passwordSettings#b7b72ab3 email:string = account.PasswordSettings
-account.passwordInputSettings#bcfc532c flags:# new_salt:flags.0?bytes new_password_hash:flags.0?bytes hint:flags.0?string email:flags.1?string = account.PasswordInputSettings
-auth.passwordRecovery#137948a5 email_pattern:string = auth.PasswordRecovery
-inputMediaVenue#2827a81a geo_point:InputGeoPoint title:string address:string provider:string venue_id:string = InputMedia
-messageMediaVenue#7912b71f geo:GeoPoint title:string address:string provider:string venue_id:string = MessageMedia
-receivedNotifyMessage#a384b779 id:int flags:int = ReceivedNotifyMessage
-chatInviteEmpty#69df3769 = ExportedChatInvite
-chatInviteExported#fc2e05bc link:string = ExportedChatInvite
-chatInviteAlready#5a686d7c chat:Chat = ChatInvite
-chatInvite#ce917dcd title:string = ChatInvite
-messageActionChatJoinedByLink#f89cf5e8 inviter_id:int = MessageAction
-updateReadMessagesContents#68c13933 messages:Vector int pts:int pts_count:int = Update
-inputStickerSetEmpty#ffb62b95 = InputStickerSet
-inputStickerSetID#9de7a269 id:long access_hash:long = InputStickerSet
-inputStickerSetShortName#861cc8a0 short_name:string = InputStickerSet
-stickerSet#a7a43b17 id:long access_hash:long title:string short_name:string = StickerSet
-messages.stickerSet#b60a24a6 set:StickerSet packs:Vector StickerPack documents:Vector Document = messages.StickerSet
-user#22e49072 flags:# id:int access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int = User
-botCommand#c27ac8c7 command:string description:string = BotCommand
-botCommandOld#b79d22ab command:string params:string description:string = BotCommand
-botInfoEmpty#bb2e37ce = BotInfo
-botInfo#09cf585d user_id:int version:int share_text:string description:string commands:Vector BotCommand = BotInfo
-keyboardButton#a2fa4880 text:string = KeyboardButton
-keyboardButtonRow#77608b83 buttons:Vector KeyboardButton = KeyboardButtonRow
-replyKeyboardHide#a03e5b85 flags:int = ReplyMarkup
-replyKeyboardForceReply#f4108aa0 flags:int = ReplyMarkup
-replyKeyboardMarkup#3502758c flags:int rows:Vector KeyboardButtonRow = ReplyMarkup
-invokeAfterMsg#cb9f372d X:Type msg_id:long query:X = X
-invokeAfterMsgs#3dc4b4f0 X:Type msg_ids:Vector long query:X = X
-auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone
-auth.sendCode#768d5f4d phone_number:string sms_type:int api_id:int api_hash:string lang_code:string = auth.SentCode
-auth.sendCall#03c51564 phone_number:string phone_code_hash:string = Bool
-auth.signUp#1b067634 phone_number:string phone_code_hash:string phone_code:string first_name:string last_name:string = auth.Authorization
-auth.signIn#bcd51581 phone_number:string phone_code_hash:string phone_code:string = auth.Authorization
-auth.logOut#5717da40 = Bool
-auth.resetAuthorizations#9fab0d1a = Bool
-auth.sendInvites#771c1d97 phone_numbers:Vector string message:string = Bool
-auth.exportAuthorization#e5bfffcd dc_id:int = auth.ExportedAuthorization
-auth.importAuthorization#e3ef9613 id:int bytes:bytes = auth.Authorization
-auth.bindTempAuthKey#cdd42a05 perm_auth_key_id:long nonce:long expires_at:int encrypted_message:bytes = Bool
-account.registerDevice#446c712c token_type:int token:string device_model:string system_version:string app_version:string app_sandbox:Bool lang_code:string = Bool
-account.unregisterDevice#65c55b40 token_type:int token:string = Bool
-account.updateNotifySettings#84be5b93 peer:InputNotifyPeer settings:InputPeerNotifySettings = Bool
-account.getNotifySettings#12b3ad31 peer:InputNotifyPeer = PeerNotifySettings
-account.resetNotifySettings#db7e1747 = Bool
-account.updateProfile#f0888d68 first_name:string last_name:string = User
-account.updateStatus#6628562c offline:Bool = Bool
-account.getWallPapers#c04cfac2 = Vector WallPaper
-users.getUsers#0d91a548 id:Vector InputUser = Vector User
-users.getFullUser#ca30a5b1 id:InputUser = UserFull
-contacts.getStatuses#c4a353ee = Vector ContactStatus
-contacts.getContacts#22c6aa08 hash:string = contacts.Contacts
-contacts.importContacts#da30b32d contacts:Vector InputContact replace:Bool = contacts.ImportedContacts
-contacts.getSuggested#cd773428 limit:int = contacts.Suggested
-contacts.deleteContact#8e953744 id:InputUser = contacts.Link
-contacts.deleteContacts#59ab389e id:Vector InputUser = Bool
-contacts.block#332b49fc id:InputUser = Bool
-contacts.unblock#e54100bd id:InputUser = Bool
-contacts.getBlocked#f57c350f offset:int limit:int = contacts.Blocked
-contacts.exportCard#84e53737 = Vector int
-contacts.importCard#4fe196fe export_card:Vector int = User
-messages.getMessages#4222fa74 id:Vector int = messages.Messages
-messages.getDialogs#eccf1df6 offset:int max_id:int limit:int = messages.Dialogs
-messages.getHistory#92a1df2f peer:InputPeer offset:int max_id:int limit:int = messages.Messages
-messages.search#07e9f2ab peer:InputPeer q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = messages.Messages
-messages.readHistory#b04f2510 peer:InputPeer max_id:int offset:int = messages.AffectedHistory
-messages.deleteHistory#f4f8fb61 peer:InputPeer offset:int = messages.AffectedHistory
-messages.deleteMessages#a5f18925 id:Vector int = messages.AffectedMessages
-messages.receivedMessages#05a954c0 max_id:int = Vector ReceivedNotifyMessage
-messages.setTyping#a3825e50 peer:InputPeer action:SendMessageAction = Bool
-messages.sendMessage#fc55e6b5 flags:# peer:InputPeer reply_to_msg_id:flags.0?int message:string random_id:long reply_markup:flags.2?ReplyMarkup = messages.SentMessage
-messages.sendMedia#c8f16791 flags:# peer:InputPeer reply_to_msg_id:flags.0?int media:InputMedia random_id:long reply_markup:flags.2?ReplyMarkup = Updates
-messages.forwardMessages#55e1728d peer:InputPeer id:Vector int random_id:Vector long = Updates
-messages.getChats#3c6aa187 id:Vector int = messages.Chats
-messages.getFullChat#3b831c66 chat_id:int = messages.ChatFull
-messages.editChatTitle#dc452855 chat_id:int title:string = Updates
-messages.editChatPhoto#ca4c79d8 chat_id:int photo:InputChatPhoto = Updates
-messages.addChatUser#f9a0aa09 chat_id:int user_id:InputUser fwd_limit:int = Updates
-messages.deleteChatUser#e0611f16 chat_id:int user_id:InputUser = Updates
-messages.createChat#09cb126e users:Vector InputUser title:string = Updates
-updates.getState#edd4882a = updates.State
-updates.getDifference#0a041495 pts:int date:int qts:int = updates.Difference
-photos.updateProfilePhoto#eef579a0 id:InputPhoto crop:InputPhotoCrop = UserProfilePhoto
-photos.uploadProfilePhoto#d50f9c88 file:InputFile caption:string geo_point:InputGeoPoint crop:InputPhotoCrop = photos.Photo
-photos.deletePhotos#87cf7f2f id:Vector InputPhoto = Vector long
-upload.saveFilePart#b304a621 file_id:long file_part:int bytes:bytes = Bool
-upload.getFile#e3a6cfb5 location:InputFileLocation offset:int limit:int = upload.File
-help.getConfig#c4f9186b = Config
-help.getNearestDc#1fb33026 = NearestDc
-help.getAppUpdate#c812ac7e device_model:string system_version:string app_version:string lang_code:string = help.AppUpdate
-help.saveAppLog#6f02f748 events:Vector InputAppEvent = Bool
-help.getInviteText#a4a95186 lang_code:string = help.InviteText
-photos.getUserPhotos#b7ee553c user_id:InputUser offset:int max_id:int limit:int = photos.Photos
-messages.forwardMessage#33963bf9 peer:InputPeer id:int random_id:long = Updates
-messages.sendBroadcast#bf73f4da contacts:Vector InputUser random_id:Vector long message:string media:InputMedia = Updates
-geochats.getLocated#7f192d8f geo_point:InputGeoPoint radius:int limit:int = geochats.Located
-geochats.getRecents#e1427e6f offset:int limit:int = geochats.Messages
-geochats.checkin#55b3e8fb peer:InputGeoChat = geochats.StatedMessage
-geochats.getFullChat#6722dd6f peer:InputGeoChat = messages.ChatFull
-geochats.editChatTitle#4c8e2273 peer:InputGeoChat title:string address:string = geochats.StatedMessage
-geochats.editChatPhoto#35d81a95 peer:InputGeoChat photo:InputChatPhoto = geochats.StatedMessage
-geochats.search#cfcdc44d peer:InputGeoChat q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = geochats.Messages
-geochats.getHistory#b53f7a68 peer:InputGeoChat offset:int max_id:int limit:int = geochats.Messages
-geochats.setTyping#08b8a729 peer:InputGeoChat typing:Bool = Bool
-geochats.sendMessage#061b0044 peer:InputGeoChat message:string random_id:long = geochats.StatedMessage
-geochats.sendMedia#b8f0deff peer:InputGeoChat media:InputMedia random_id:long = geochats.StatedMessage
-geochats.createGeoChat#0e092e16 title:string geo_point:InputGeoPoint address:string venue:string = geochats.StatedMessage
-messages.getDhConfig#26cf8950 version:int random_length:int = messages.DhConfig
-messages.requestEncryption#f64daf43 user_id:InputUser random_id:int g_a:bytes = EncryptedChat
-messages.acceptEncryption#3dbc0415 peer:InputEncryptedChat g_b:bytes key_fingerprint:long = EncryptedChat
-messages.discardEncryption#edd923c5 chat_id:int = Bool
-messages.setEncryptedTyping#791451ed peer:InputEncryptedChat typing:Bool = Bool
-messages.readEncryptedHistory#7f4b690a peer:InputEncryptedChat max_date:int = Bool
-messages.sendEncrypted#a9776773 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage
-messages.sendEncryptedFile#9a901b66 peer:InputEncryptedChat random_id:long data:bytes file:InputEncryptedFile = messages.SentEncryptedMessage
-messages.sendEncryptedService#32d439a4 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage
-messages.receivedQueue#55a5bb66 max_qts:int = Vector long
-upload.saveBigFilePart#de7b673d file_id:long file_part:int file_total_parts:int bytes:bytes = Bool
-initConnection#69796de9 X:Type api_id:int device_model:string system_version:string app_version:string lang_code:string query:X = X
-help.getSupport#9cdf08cd = help.Support
-auth.sendSms#0da9f3e8 phone_number:string phone_code_hash:string = Bool
-messages.readMessageContents#36a73f77 id:Vector int = messages.AffectedMessages
-account.checkUsername#2714d86c username:string = Bool
-account.updateUsername#3e0bdd7c username:string = User
-contacts.search#11f812d8 q:string limit:int = contacts.Found
-account.getPrivacy#dadbc950 key:InputPrivacyKey = account.PrivacyRules
-account.setPrivacy#c9f81ce8 key:InputPrivacyKey rules:Vector InputPrivacyRule = account.PrivacyRules
-account.deleteAccount#418d4e0b reason:string = Bool
-account.getAccountTTL#08fc711d = AccountDaysTTL
-account.setAccountTTL#2442485e ttl:AccountDaysTTL = Bool
-invokeWithLayer#da9b0d0d X:Type layer:int query:X = X
-contacts.resolveUsername#0bf0131c username:string = User
-account.sendChangePhoneCode#a407a8f4 phone_number:string = account.SentChangePhoneCode
-account.changePhone#70c32edb phone_number:string phone_code_hash:string phone_code:string = User
-messages.getStickers#ae22e045 emoticon:string hash:string = messages.Stickers
-messages.getAllStickers#aa3bc868 hash:string = messages.AllStickers
-account.updateDeviceLocked#38df3532 period:int = Bool
-auth.importBotAuthorization#67a3ff2c flags:int api_id:int api_hash:string bot_auth_token:string = auth.Authorization
-messages.getWebPagePreview#25223e24 message:string = MessageMedia
-account.getAuthorizations#e320c158 = account.Authorizations
-account.resetAuthorization#df77f3bc hash:long = Bool
-account.getPassword#548a30f5 = account.Password
-account.getPasswordSettings#bc8d11bb current_password_hash:bytes = account.PasswordSettings
-account.updatePasswordSettings#fa7c4b86 current_password_hash:bytes new_settings:account.PasswordInputSettings = Bool
-auth.checkPassword#0a63011e password_hash:bytes = auth.Authorization
-auth.requestPasswordRecovery#d897bc66 = auth.PasswordRecovery
-auth.recoverPassword#4ea56e92 code:string = auth.Authorization
-invokeWithoutUpdates#bf9459b7 X:Type query:X = X
-messages.exportChatInvite#7d885289 chat_id:int = ExportedChatInvite
-messages.checkChatInvite#3eadb1bb hash:string = ChatInvite
-messages.importChatInvite#6c50051c hash:string = Updates
-messages.getStickerSet#2619a90e stickerset:InputStickerSet = messages.StickerSet
-messages.installStickerSet#efbbfae9 stickerset:InputStickerSet = Bool
-messages.uninstallStickerSet#f96e55de stickerset:InputStickerSet = Bool
-messages.startBot#1b3e0ffc bot:InputUser chat_id:int random_id:long start_param:string = Updates
-decryptedMessageMediaEmpty#089f5c4a = DecryptedMessageMedia
-decryptedMessageMediaPhoto#32798a8c str_thumb:bytes thumb_w:int thumb_h:int w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia
-decryptedMessageMediaGeoPoint#35480a59 latitude:double longitude:double = DecryptedMessageMedia
-decryptedMessageMediaContact#588a0a97 phone_number:string first_name:string last_name:string user_id:int = DecryptedMessageMedia
-decryptedMessageActionSetMessageTTL#a1733aec ttl_seconds:int = DecryptedMessageAction
-decryptedMessageMediaDocument#b095434b str_thumb:bytes thumb_w:int thumb_h:int file_name:string mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia
-decryptedMessageActionReadMessages#0c4f40be random_ids:Vector long = DecryptedMessageAction
-decryptedMessageActionDeleteMessages#65614304 random_ids:Vector long = DecryptedMessageAction
-decryptedMessageActionScreenshotMessages#8ac1f475 random_ids:Vector long = DecryptedMessageAction
-decryptedMessageActionFlushHistory#6719e45c = DecryptedMessageAction
-decryptedMessage#204d3878 random_id:long ttl:int message:string media:DecryptedMessageMedia = DecryptedMessage
-decryptedMessageService#73164160 random_id:long action:DecryptedMessageAction = DecryptedMessage
-decryptedMessageMediaVideo#524a415d str_thumb:bytes thumb_w:int thumb_h:int duration:int mime_type:string w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia
-decryptedMessageMediaAudio#57e0a9cb duration:int mime_type:string size:int key:bytes iv:bytes = DecryptedMessageMedia
-decryptedMessageLayer#1be31789 random_bytes:bytes layer:int in_seq_no:int out_seq_no:int message:DecryptedMessage = DecryptedMessageLayer
-decryptedMessageActionResend#511110b0 start_seq_no:int end_seq_no:int = DecryptedMessageAction
-decryptedMessageActionNotifyLayer#f3048883 layer:int = DecryptedMessageAction
-decryptedMessageActionTyping#ccb27641 action:SendMessageAction = DecryptedMessageAction
-decryptedMessageActionRequestKey#f3c9611b exchange_id:long g_a:bytes = DecryptedMessageAction
-decryptedMessageActionAcceptKey#6fe1735b exchange_id:long g_b:bytes key_fingerprint:long = DecryptedMessageAction
-decryptedMessageActionAbortKey#dd05ec6b exchange_id:long = DecryptedMessageAction
-decryptedMessageActionCommitKey#ec2e0b9b exchange_id:long key_fingerprint:long = DecryptedMessageAction
-decryptedMessageActionNoop#a82fdd63 = DecryptedMessageAction
-decryptedMessageMediaExternalDocument#fa95b0dd id:long access_hash:long date:int mime_type:string size:int thumb:PhotoSize dc_id:int attributes:Vector DocumentAttribute = DecryptedMessageMedia
-binlog.encrKey#0377168f key:64*[ int ] = binlog.EncrKey
-binlog.start#3b06de69 = binlog.Update
-binlog.dcOption#f96feb32 dc:int name:string ip:string port:int = binlog.Update
-binlog.dcOptionNew#7c0d22d8 flags:int dc:int name:string ip:string port:int = binlog.Update
-binlog.authKey#71e8c156 dc:int key:%binlog.EncrKey = binlog.Update
-binlog.defaultDc#9e83dbdc dc:int = binlog.Update
-binlog.dcSigned#26451bb5 dc:int = binlog.Update
-binlog.ourId#68a870e8 id:int = binlog.Update
-binlog.setDhParams#eaeb7826 root:int prime:%binlog.EncrKey version:int = binlog.Update
-binlog.setPts#2ca8c939 pts:int = binlog.Update
-binlog.setQts#d95738ac qts:int = binlog.Update
-binlog.setDate#1d0f4b52 date:int = binlog.Update
-binlog.setSeq#6eeb2989 seq:int = binlog.Update
-binlog.encrChatDelete#ee1b38e8 id:int = binlog.Update
-binlog.encrChatNew#84977251 flags:# id:int access_hash:flags.17?long date:flags.18?int admin:flags.19?int user_id:flags.20?int key:flags.21?%binlog.EncrKey g_key:flags.22?%binlog.EncrKey state:flags.23?int ttl:flags.24?int layer:flags.25?int in_seq_no:flags.26?int last_in_seq_no:flags.26?int out_seq_no:flags.26?int key_fingerprint:flags.27?long = binlog.Update
-binlog.encrChatExchangeNew#9d49488d flags:# id:int exchange_id:flags.17?long key:flags.18?%binlog.EncrKey state:flags.19?int = binlog.Update
-binlog.userDelete#ac55d447 id:int = binlog.Update
-binlog.userNew#127cf2f9 flags:# id:int access_hash:flags.17?long first_name:flags.18?string last_name:flags.18?string phone:flags.19?string username:flags.20?string photo:flags.21?Photo real_first_name:flags.22?string real_last_name:flags.22?string user_photo:flags.23?UserProfilePhoto last_read_in:flags.24?int last_read_out:flags.25?int bot_info:flags.26?BotInfo = binlog.Update
-binlog.chatNew#0a10aa92 flags:# id:int title:flags.17?string user_num:flags.18?int date:flags.19?int version:flags.20?int participants:flags.20?Vector ChatParticipant chat_photo:flags.21?ChatPhoto photo:flags.22?Photo admin:flags.23?int last_read_in:flags.24?int last_read_out:flags.25?int = binlog.Update
-binlog.chatAddParticipant#535475ea id:int version:int user_id:int inviter_id:int date:int = binlog.Update
-binlog.chatDelParticipant#7dd1a1a2 id:int version:int user_id:int = binlog.Update
-binlog.setMsgId#3c873416 old_id:long new_id:int = binlog.Update
-binlog.messageDelete#847e77b1 lid:long = binlog.Update
-binlog.messageNew#427cfcdb flags:# lid:long from_id:flags.17?int to_type:flags.17?int to_id:flags.17?int fwd_from_id:flags.18?int fwd_date:flags.18?int date:flags.19?int message:flags.20?string media:flags.21?MessageMedia action:flags.22?MessageAction reply_id:flags.23?int reply_markup:flags.24?ReplyMarkup = binlog.Update
-binlog.messageEncrNew#6cf7cabc flags:# lid:long from_id:flags.17?int to_type:flags.17?int to_id:flags.17?int date:flags.19?int message:flags.20?string encr_media:flags.21?DecryptedMessageMedia encr_action:flags.22?DecryptedMessageAction file:flags.23?EncryptedFile = binlog.Update
-binlog.msgUpdate#6dd4d85f lid:long = binlog.Update
-binlog.resetAuthorization#83327955 = binlog.Update
-resPQ#05162463 nonce:int128 server_nonce:int128 pq:string server_public_key_fingerprints:Vector long = ResPQ
-server_DH_params_fail#79cb045d nonce:int128 server_nonce:int128 new_nonce_hash:int128 = Server_DH_Params
-server_DH_params_ok#d0e8075c nonce:int128 server_nonce:int128 encrypted_answer:string = Server_DH_Params
-p_q_inner_data#83c95aec pq:string p:string q:string nonce:int128 server_nonce:int128 new_nonce:int256 = P_Q_inner_data
-p_q_inner_data_temp#3c6a84d4 pq:string p:string q:string nonce:int128 server_nonce:int128 new_nonce:int256 expires_in:int = P_Q_inner_data
-client_DH_inner_data#6643b654 nonce:int128 server_nonce:int128 retry_id:long g_b:string = Client_DH_Inner_Data
-dh_gen_ok#3bcbf734 nonce:int128 server_nonce:int128 new_nonce_hash1:int128 = Set_client_DH_params_answer
-dh_gen_retry#46dc1fb9 nonce:int128 server_nonce:int128 new_nonce_hash2:int128 = Set_client_DH_params_answer
-dh_gen_fail#a69dae02 nonce:int128 server_nonce:int128 new_nonce_hash3:int128 = Set_client_DH_params_answer
-server_DH_inner_data#b5890dba nonce:int128 server_nonce:int128 g:int dh_prime:string g_a:string server_time:int = Server_DH_inner_data
-req_pq#60469778 nonce:int128 = ResPQ
-req_DH_params#d712e4be nonce:int128 server_nonce:int128 p:string q:string public_key_fingerprint:long encrypted_data:string = Server_DH_Params
-set_client_DH_params#f5045f1f nonce:int128 server_nonce:int128 encrypted_data:string = Set_client_DH_params_answer
-decryptedMessageMediaVideoL12#4cee6ef3 str_thumb:bytes thumb_w:int thumb_h:int duration:int w:int h:int size:int key:bytes iv:bytes = DecryptedMessageMedia
-decryptedMessageMediaAudioL12#6080758f duration:int size:int key:bytes iv:bytes = DecryptedMessageMedia
-updateMsgUpdate#03114739 id:int pts:int pts_count:int = Update
-messageMediaPhotoL27#c8c45a2a photo:Photo = MessageMedia
-messageMediaVideoL27#a2d24290 video:Video = MessageMedia
diff --git a/protocols/Telegram/docs/tgl/scheme22.tl b/protocols/Telegram/docs/tgl/scheme22.tl
deleted file mode 100644
index 1ed65373e0..0000000000
--- a/protocols/Telegram/docs/tgl/scheme22.tl
+++ /dev/null
@@ -1,596 +0,0 @@
-int ?= Int;
-long ?= Long;
-double ?= Double;
-string ?= String;
-
-bytes string = Bytes;
-
-boolFalse#bc799737 = Bool;
-boolTrue#997275b5 = Bool;
-
-int128 long long = Int128;
-int256 long long long long = Int256;
-
-vector#1cb5c415 {t:Type} # [ t ] = Vector t;
-
-error#c4b9f9bb code:int text:string = Error;
-
-null#56730bcc = Null;
-
-inputPeerEmpty#7f3b18ea = InputPeer;
-inputPeerSelf#7da07ec9 = InputPeer;
-inputPeerContact#1023dbe8 user_id:int = InputPeer;
-inputPeerForeign#9b447325 user_id:int access_hash:long = InputPeer;
-inputPeerChat#179be863 chat_id:int = InputPeer;
-
-inputUserEmpty#b98886cf = InputUser;
-inputUserSelf#f7c1b13f = InputUser;
-inputUserContact#86e94f65 user_id:int = InputUser;
-inputUserForeign#655e74ff user_id:int access_hash:long = InputUser;
-
-inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact;
-
-inputFile#f52ff27f id:long parts:int name:string md5_checksum:string = InputFile;
-
-inputMediaEmpty#9664f57f = InputMedia;
-inputMediaUploadedPhoto#2dc53a7d file:InputFile = InputMedia;
-inputMediaPhoto#8f2ab2ec photo_id:InputPhoto = InputMedia;
-inputMediaGeoPoint#f9c44144 geo_point:InputGeoPoint = InputMedia;
-inputMediaContact#a6e45987 phone_number:string first_name:string last_name:string = InputMedia;
-inputMediaUploadedVideo#133ad6f6 file:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaUploadedThumbVideo#9912dabf file:InputFile thumb:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaVideo#7f023ae6 video_id:InputVideo = InputMedia;
-
-inputChatPhotoEmpty#1ca48f57 = InputChatPhoto;
-inputChatUploadedPhoto#94254732 file:InputFile crop:InputPhotoCrop = InputChatPhoto;
-inputChatPhoto#b2e1bf08 id:InputPhoto crop:InputPhotoCrop = InputChatPhoto;
-
-inputGeoPointEmpty#e4c123d6 = InputGeoPoint;
-inputGeoPoint#f3b7acc9 latitude:double longitude:double = InputGeoPoint;
-
-inputPhotoEmpty#1cd7bf0d = InputPhoto;
-inputPhoto#fb95c6c4 id:long access_hash:long = InputPhoto;
-
-inputVideoEmpty#5508ec75 = InputVideo;
-inputVideo#ee579652 id:long access_hash:long = InputVideo;
-
-inputFileLocation#14637196 volume_id:long local_id:int secret:long = InputFileLocation;
-inputVideoFileLocation#3d0364ec id:long access_hash:long = InputFileLocation;
-
-inputPhotoCropAuto#ade6b004 = InputPhotoCrop;
-inputPhotoCrop#d9915325 crop_left:double crop_top:double crop_width:double = InputPhotoCrop;
-
-inputAppEvent#770656a8 time:double type:string peer:long data:string = InputAppEvent;
-
-peerUser#9db1bc6d user_id:int = Peer;
-peerChat#bad0e5bb chat_id:int = Peer;
-
-storage.fileUnknown#aa963b05 = storage.FileType;
-storage.fileJpeg#7efe0e = storage.FileType;
-storage.fileGif#cae1aadf = storage.FileType;
-storage.filePng#a4f63c0 = storage.FileType;
-storage.filePdf#ae1e508d = storage.FileType;
-storage.fileMp3#528a0677 = storage.FileType;
-storage.fileMov#4b09ebbc = storage.FileType;
-storage.filePartial#40bc6f52 = storage.FileType;
-storage.fileMp4#b3cea0e4 = storage.FileType;
-storage.fileWebp#1081464c = storage.FileType;
-
-fileLocationUnavailable#7c596b46 volume_id:long local_id:int secret:long = FileLocation;
-fileLocation#53d69076 dc_id:int volume_id:long local_id:int secret:long = FileLocation;
-
-userEmpty#200250ba id:int = User;
-userSelf#7007b451 id:int first_name:string last_name:string username:string phone:string photo:UserProfilePhoto status:UserStatus inactive:Bool = User;
-userContact#cab35e18 id:int first_name:string last_name:string username:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userRequest#d9ccc4ef id:int first_name:string last_name:string username:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userForeign#75cf7a8 id:int first_name:string last_name:string username:string access_hash:long photo:UserProfilePhoto status:UserStatus = User;
-userDeleted#d6016d7a id:int first_name:string last_name:string username:string = User;
-
-userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
-userProfilePhoto#d559d8c8 photo_id:long photo_small:FileLocation photo_big:FileLocation = UserProfilePhoto;
-
-userStatusEmpty#9d05049 = UserStatus;
-userStatusOnline#edb93949 expires:int = UserStatus;
-userStatusOffline#8c703f was_online:int = UserStatus;
-
-chatEmpty#9ba2d800 id:int = Chat;
-chat#6e9c9bc7 id:int title:string photo:ChatPhoto participants_count:int date:int left:Bool version:int = Chat;
-chatForbidden#fb0ccc41 id:int title:string date:int = Chat;
-
-chatFull#630e61be id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings = ChatFull;
-
-chatParticipant#c8d7493e user_id:int inviter_id:int date:int = ChatParticipant;
-
-chatParticipantsForbidden#fd2bb8a chat_id:int = ChatParticipants;
-chatParticipants#7841b415 chat_id:int admin_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
-
-chatPhotoEmpty#37c1011c = ChatPhoto;
-chatPhoto#6153276a photo_small:FileLocation photo_big:FileLocation = ChatPhoto;
-
-messageEmpty#83e5de54 id:int = Message;
-message#567699b3 flags:int id:int from_id:int to_id:Peer date:int message:string media:MessageMedia = Message;
-messageForwarded#a367e716 flags:int id:int fwd_from_id:int fwd_date:int from_id:int to_id:Peer date:int message:string media:MessageMedia = Message;
-messageService#1d86f70e flags:int id:int from_id:int to_id:Peer date:int action:MessageAction = Message;
-
-messageMediaEmpty#3ded6320 = MessageMedia;
-messageMediaPhoto#c8c45a2a photo:Photo = MessageMedia;
-messageMediaVideo#a2d24290 video:Video = MessageMedia;
-messageMediaGeo#56e0d474 geo:GeoPoint = MessageMedia;
-messageMediaContact#5e7d2f39 phone_number:string first_name:string last_name:string user_id:int = MessageMedia;
-messageMediaUnsupported#29632a36 bytes:bytes = MessageMedia;
-
-messageActionEmpty#b6aef7b0 = MessageAction;
-messageActionChatCreate#a6638b9a title:string users:Vector<int> = MessageAction;
-messageActionChatEditTitle#b5a1ce5a title:string = MessageAction;
-messageActionChatEditPhoto#7fcb13a8 photo:Photo = MessageAction;
-messageActionChatDeletePhoto#95e3fbef = MessageAction;
-messageActionChatAddUser#5e3cfc4b user_id:int = MessageAction;
-messageActionChatDeleteUser#b2ae9b0c user_id:int = MessageAction;
-
-dialog#ab3a99ac peer:Peer top_message:int unread_count:int notify_settings:PeerNotifySettings = Dialog;
-
-photoEmpty#2331b22d id:long = Photo;
-photo#22b56751 id:long access_hash:long user_id:int date:int caption:string geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-
-photoSizeEmpty#e17e23c type:string = PhotoSize;
-photoSize#77bfb61b type:string location:FileLocation w:int h:int size:int = PhotoSize;
-photoCachedSize#e9a734fa type:string location:FileLocation w:int h:int bytes:bytes = PhotoSize;
-
-videoEmpty#c10658a8 id:long = Video;
-video#388fa391 id:long access_hash:long user_id:int date:int caption:string duration:int mime_type:string size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-
-geoPointEmpty#1117dd5f = GeoPoint;
-geoPoint#2049d70c longitude:double latitude:double = GeoPoint;
-
-auth.checkedPhone#e300cc3b phone_registered:Bool phone_invited:Bool = auth.CheckedPhone;
-
-auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-auth.authorization#f6b673a4 expires:int user:User = auth.Authorization;
-
-auth.exportedAuthorization#df969c2d id:int bytes:bytes = auth.ExportedAuthorization;
-
-inputNotifyPeer#b8bc5b0c peer:InputPeer = InputNotifyPeer;
-inputNotifyUsers#193b4417 = InputNotifyPeer;
-inputNotifyChats#4a95e84e = InputNotifyPeer;
-inputNotifyAll#a429b886 = InputNotifyPeer;
-
-inputPeerNotifyEventsEmpty#f03064d8 = InputPeerNotifyEvents;
-inputPeerNotifyEventsAll#e86a2c74 = InputPeerNotifyEvents;
-
-inputPeerNotifySettings#46a2ce98 mute_until:int sound:string show_previews:Bool events_mask:int = InputPeerNotifySettings;
-
-peerNotifyEventsEmpty#add53cb3 = PeerNotifyEvents;
-peerNotifyEventsAll#6d1ded88 = PeerNotifyEvents;
-
-peerNotifySettingsEmpty#70a68512 = PeerNotifySettings;
-peerNotifySettings#8d5e11ee mute_until:int sound:string show_previews:Bool events_mask:int = PeerNotifySettings;
-
-wallPaper#ccb03657 id:int title:string sizes:Vector<PhotoSize> color:int = WallPaper;
-
-userFull#771095da user:User link:contacts.Link profile_photo:Photo notify_settings:PeerNotifySettings blocked:Bool real_first_name:string real_last_name:string = UserFull;
-
-contact#f911c994 user_id:int mutual:Bool = Contact;
-
-importedContact#d0028438 user_id:int client_id:long = ImportedContact;
-
-contactBlocked#561bc879 user_id:int date:int = ContactBlocked;
-
-contactSuggested#3de191a1 user_id:int mutual_contacts:int = ContactSuggested;
-
-contactStatus#d3680c61 user_id:int status:UserStatus = ContactStatus;
-
-chatLocated#3631cf4c chat_id:int distance:int = ChatLocated;
-
-contacts.foreignLinkUnknown#133421f8 = contacts.ForeignLink;
-contacts.foreignLinkRequested#a7801f47 has_phone:Bool = contacts.ForeignLink;
-contacts.foreignLinkMutual#1bea8ce1 = contacts.ForeignLink;
-
-contacts.myLinkEmpty#d22a1c60 = contacts.MyLink;
-contacts.myLinkRequested#6c69efee contact:Bool = contacts.MyLink;
-contacts.myLinkContact#c240ebd9 = contacts.MyLink;
-
-contacts.link#eccea3f5 my_link:contacts.MyLink foreign_link:contacts.ForeignLink user:User = contacts.Link;
-
-contacts.contactsNotModified#b74ba9d2 = contacts.Contacts;
-contacts.contacts#6f8b8cb2 contacts:Vector<Contact> users:Vector<User> = contacts.Contacts;
-
-contacts.importedContacts#ad524315 imported:Vector<ImportedContact> retry_contacts:Vector<long> users:Vector<User> = contacts.ImportedContacts;
-
-contacts.blocked#1c138d15 blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-contacts.blockedSlice#900802a1 count:int blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-
-contacts.suggested#5649dcc5 results:Vector<ContactSuggested> users:Vector<User> = contacts.Suggested;
-
-messages.dialogs#15ba6c40 dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-messages.dialogsSlice#71e094f3 count:int dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-
-messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-messages.messagesSlice#b446ae3 count:int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-
-messages.messageEmpty#3f4e0648 = messages.Message;
-messages.message#ff90c417 message:Message chats:Vector<Chat> users:Vector<User> = messages.Message;
-
-messages.statedMessages#969478bb messages:Vector<Message> chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessage#d07ae726 message:Message chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessage#d1f4d35c id:int date:int pts:int seq:int = messages.SentMessage;
-
-messages.chat#40e9002a chat:Chat users:Vector<User> = messages.Chat;
-
-messages.chats#8150cbd8 chats:Vector<Chat> users:Vector<User> = messages.Chats;
-
-messages.chatFull#e5d7d19c full_chat:ChatFull chats:Vector<Chat> users:Vector<User> = messages.ChatFull;
-
-messages.affectedHistory#b7de36f2 pts:int seq:int offset:int = messages.AffectedHistory;
-
-inputMessagesFilterEmpty#57e2f66c = MessagesFilter;
-inputMessagesFilterPhotos#9609a51c = MessagesFilter;
-inputMessagesFilterVideo#9fc00e65 = MessagesFilter;
-inputMessagesFilterPhotoVideo#56e9f0e4 = MessagesFilter;
-inputMessagesFilterDocument#9eddf188 = MessagesFilter;
-inputMessagesFilterAudio#cfc87522 = MessagesFilter;
-
-updateNewMessage#13abdb3 message:Message pts:int = Update;
-updateMessageID#4e90bfd6 id:int random_id:long = Update;
-updateReadMessages#c6649e31 messages:Vector<int> pts:int = Update;
-updateDeleteMessages#a92bfe26 messages:Vector<int> pts:int = Update;
-updateRestoreMessages#d15de04d messages:Vector<int> pts:int = Update;
-updateUserTyping#5c486927 user_id:int action:SendMessageAction = Update;
-updateChatUserTyping#9a65ea1f chat_id:int user_id:int action:SendMessageAction = Update;
-updateChatParticipants#7761198 participants:ChatParticipants = Update;
-updateUserStatus#1bfbd823 user_id:int status:UserStatus = Update;
-updateUserName#a7332b73 user_id:int first_name:string last_name:string username:string = Update;
-updateUserPhoto#95313b0c user_id:int date:int photo:UserProfilePhoto previous:Bool = Update;
-updateContactRegistered#2575bbb9 user_id:int date:int = Update;
-updateContactLink#51a48a9a user_id:int my_link:contacts.MyLink foreign_link:contacts.ForeignLink = Update;
-updateActivation#6f690963 user_id:int = Update;
-updateNewAuthorization#8f06529a auth_key_id:long date:int device:string location:string = Update;
-
-updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
-
-updates.differenceEmpty#5d75a138 date:int seq:int = updates.Difference;
-updates.difference#f49ca0 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> state:updates.State = updates.Difference;
-updates.differenceSlice#a8fb1981 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> intermediate_state:updates.State = updates.Difference;
-
-updatesTooLong#e317af7e = Updates;
-updateShortMessage#d3f45784 id:int from_id:int message:string pts:int date:int seq:int = Updates;
-updateShortChatMessage#2b2fbd4e id:int from_id:int chat_id:int message:string pts:int date:int seq:int = Updates;
-updateShort#78d4dec1 update:Update date:int = Updates;
-updatesCombined#725b04c3 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq_start:int seq:int = Updates;
-updates#74ae4240 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq:int = Updates;
-
-photos.photos#8dca6aa5 photos:Vector<Photo> users:Vector<User> = photos.Photos;
-photos.photosSlice#15051f54 count:int photos:Vector<Photo> users:Vector<User> = photos.Photos;
-
-photos.photo#20212ca8 photo:Photo users:Vector<User> = photos.Photo;
-
-upload.file#96a18d5 type:storage.FileType mtime:int bytes:bytes = upload.File;
-
-dcOption#2ec2a43c id:int hostname:string ip_address:string port:int = DcOption;
-
-config#2e54dd74 date:int test_mode:Bool this_dc:int dc_options:Vector<DcOption> chat_size_max:int broadcast_size_max:int = Config;
-
-nearestDc#8e1a1775 country:string this_dc:int nearest_dc:int = NearestDc;
-
-help.appUpdate#8987f311 id:int critical:Bool url:string text:string = help.AppUpdate;
-help.noAppUpdate#c45a6536 = help.AppUpdate;
-
-help.inviteText#18cb9f78 message:string = help.InviteText;
-
-messages.statedMessagesLinks#3e74f5c6 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessages;
-
-messages.statedMessageLink#a9af2881 message:Message chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessage;
-
-messages.sentMessageLink#e9db4a3f id:int date:int pts:int seq:int links:Vector<contacts.Link> = messages.SentMessage;
-
-inputGeoChat#74d456fa chat_id:int access_hash:long = InputGeoChat;
-
-inputNotifyGeoChatPeer#4d8ddec8 geo_peer:InputGeoChat = InputNotifyPeer;
-
-geoChat#75eaea5a id:int access_hash:long title:string address:string venue:string geo:GeoPoint photo:ChatPhoto participants_count:int date:int checked_in:Bool version:int = Chat;
-
-geoChatMessageEmpty#60311a9b chat_id:int id:int = GeoChatMessage;
-geoChatMessage#4505f8e1 chat_id:int id:int from_id:int date:int message:string media:MessageMedia = GeoChatMessage;
-geoChatMessageService#d34fa24e chat_id:int id:int from_id:int date:int action:MessageAction = GeoChatMessage;
-
-geochats.statedMessage#17b1578b message:GeoChatMessage chats:Vector<Chat> users:Vector<User> seq:int = geochats.StatedMessage;
-
-geochats.located#48feb267 results:Vector<ChatLocated> messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Located;
-
-geochats.messages#d1526db1 messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-geochats.messagesSlice#bc5863e8 count:int messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-
-messageActionGeoChatCreate#6f038ebc title:string address:string = MessageAction;
-messageActionGeoChatCheckin#c7d53de = MessageAction;
-
-updateNewGeoChatMessage#5a68e3f7 geo_message:GeoChatMessage = Update;
-
-wallPaperSolid#63117f24 id:int title:string bg_color:int color:int = WallPaper;
-
-updateNewEncryptedMessage#12bcbd9a encr_message:EncryptedMessage qts:int = Update;
-updateEncryptedChatTyping#1710f156 chat_id:int = Update;
-updateEncryption#b4a2e88d encr_chat:EncryptedChat date:int = Update;
-updateEncryptedMessagesRead#38fe25b7 chat_id:int max_date:int date:int = Update;
-
-encryptedChatEmpty#ab7ec0a0 id:int = EncryptedChat;
-encryptedChatWaiting#3bf703dc id:int access_hash:long date:int admin_id:int participant_id:int = EncryptedChat;
-encryptedChatRequested#c878527e id:int access_hash:long date:int admin_id:int participant_id:int g_a:bytes = EncryptedChat;
-encryptedChat#fa56ce36 id:int access_hash:long date:int admin_id:int participant_id:int g_a_or_b:bytes key_fingerprint:long = EncryptedChat;
-encryptedChatDiscarded#13d6dd27 id:int = EncryptedChat;
-
-inputEncryptedChat#f141b5e1 chat_id:int access_hash:long = InputEncryptedChat;
-
-encryptedFileEmpty#c21f497e = EncryptedFile;
-encryptedFile#4a70994c id:long access_hash:long size:int dc_id:int key_fingerprint:int = EncryptedFile;
-
-inputEncryptedFileEmpty#1837c364 = InputEncryptedFile;
-inputEncryptedFileUploaded#64bd0306 id:long parts:int md5_checksum:string key_fingerprint:int = InputEncryptedFile;
-inputEncryptedFile#5a17b5e5 id:long access_hash:long = InputEncryptedFile;
-
-inputEncryptedFileLocation#f5235d55 id:long access_hash:long = InputFileLocation;
-
-encryptedMessage#ed18c118 random_id:long chat_id:int date:int bytes:bytes file:EncryptedFile = EncryptedMessage;
-encryptedMessageService#23734b06 random_id:long chat_id:int date:int bytes:bytes = EncryptedMessage;
-
-messages.dhConfigNotModified#c0e24635 random:bytes = messages.DhConfig;
-messages.dhConfig#2c221edd g:int p:bytes version:int random:bytes = messages.DhConfig;
-
-messages.sentEncryptedMessage#560f8935 date:int = messages.SentEncryptedMessage;
-messages.sentEncryptedFile#9493ff32 date:int file:EncryptedFile = messages.SentEncryptedMessage;
-
-inputFileBig#fa4f0bb5 id:long parts:int name:string = InputFile;
-
-inputEncryptedFileBigUploaded#2dc173c8 id:long parts:int key_fingerprint:int = InputEncryptedFile;
-
-updateChatParticipantAdd#3a0eeb22 chat_id:int user_id:int inviter_id:int version:int = Update;
-updateChatParticipantDelete#6e5f8c22 chat_id:int user_id:int version:int = Update;
-updateDcOptions#8e5e9873 dc_options:Vector<DcOption> = Update;
-
-inputMediaUploadedAudio#4e498cab file:InputFile duration:int mime_type:string = InputMedia;
-inputMediaAudio#89938781 audio_id:InputAudio = InputMedia;
-inputMediaUploadedDocument#ffe76b78 file:InputFile mime_type:string attributes:Vector<DocumentAttribute> = InputMedia;
-inputMediaUploadedThumbDocument#41481486 file:InputFile thumb:InputFile mime_type:string attributes:Vector<DocumentAttribute> = InputMedia;
-inputMediaDocument#d184e841 document_id:InputDocument = InputMedia;
-
-messageMediaDocument#2fda2204 document:Document = MessageMedia;
-messageMediaAudio#c6b68300 audio:Audio = MessageMedia;
-
-inputAudioEmpty#d95adc84 = InputAudio;
-inputAudio#77d440ff id:long access_hash:long = InputAudio;
-
-inputDocumentEmpty#72f0eaae = InputDocument;
-inputDocument#18798952 id:long access_hash:long = InputDocument;
-
-inputAudioFileLocation#74dc404d id:long access_hash:long = InputFileLocation;
-inputDocumentFileLocation#4e45abe9 id:long access_hash:long = InputFileLocation;
-
-audioEmpty#586988d8 id:long = Audio;
-audio#c7ac6496 id:long access_hash:long user_id:int date:int duration:int mime_type:string size:int dc_id:int = Audio;
-
-documentEmpty#36f8c871 id:long = Document;
-document#f9a39f4f id:long access_hash:long date:int mime_type:string size:int thumb:PhotoSize dc_id:int attributes:Vector<DocumentAttribute> = Document;
-document_l19#9efc6326 id:long access_hash:long user_id:int date:int file_name:string mime_type:string size:int thumb:PhotoSize dc_id:int = Document;
-
-help.support#17c6b5f6 phone_number:string user:User = help.Support;
-
-notifyPeer#9fd40bd8 peer:Peer = NotifyPeer;
-notifyUsers#b4c83b4c = NotifyPeer;
-notifyChats#c007cec3 = NotifyPeer;
-notifyAll#74d07c60 = NotifyPeer;
-
-updateUserBlocked#80ece81a user_id:int blocked:Bool = Update;
-updateNotifySettings#bec268ef peer:NotifyPeer notify_settings:PeerNotifySettings = Update;
-
-auth.sentAppCode#e325edcf phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-sendMessageTypingAction#16bf744e = SendMessageAction;
-sendMessageCancelAction#fd5ec8f5 = SendMessageAction;
-sendMessageRecordVideoAction#a187d66f = SendMessageAction;
-sendMessageUploadVideoAction#92042ff7 = SendMessageAction;
-sendMessageRecordAudioAction#d52f73f7 = SendMessageAction;
-sendMessageUploadAudioAction#e6ac8a6f = SendMessageAction;
-sendMessageUploadPhotoAction#990a3c1a = SendMessageAction;
-sendMessageUploadDocumentAction#8faee98e = SendMessageAction;
-sendMessageGeoLocationAction#176f8ba1 = SendMessageAction;
-sendMessageChooseContactAction#628cbc6f = SendMessageAction;
-
-contactFound#ea879f95 user_id:int = ContactFound;
-
-contacts.found#566000e results:Vector<ContactFound> users:Vector<User> = contacts.Found;
-
-updateServiceNotification#382dd3e4 type:string message_text:string media:MessageMedia popup:Bool = Update;
-
-userStatusRecently#e26f42f1 = UserStatus;
-userStatusLastWeek#7bf09fc = UserStatus;
-userStatusLastMonth#77ebc742 = UserStatus;
-
-updatePrivacy#ee3b272a key:PrivacyKey rules:Vector<PrivacyRule> = Update;
-
-inputPrivacyKeyStatusTimestamp#4f96cb18 = InputPrivacyKey;
-
-privacyKeyStatusTimestamp#bc2eab30 = PrivacyKey;
-
-inputPrivacyValueAllowContacts#d09e07b = InputPrivacyRule;
-inputPrivacyValueAllowAll#184b35ce = InputPrivacyRule;
-inputPrivacyValueAllowUsers#131cc67f users:Vector<InputUser> = InputPrivacyRule;
-inputPrivacyValueDisallowContacts#ba52007 = InputPrivacyRule;
-inputPrivacyValueDisallowAll#d66b66c9 = InputPrivacyRule;
-inputPrivacyValueDisallowUsers#90110467 users:Vector<InputUser> = InputPrivacyRule;
-
-privacyValueAllowContacts#fffe1bac = PrivacyRule;
-privacyValueAllowAll#65427b82 = PrivacyRule;
-privacyValueAllowUsers#4d5bbe0c users:Vector<int> = PrivacyRule;
-privacyValueDisallowContacts#f888fa1a = PrivacyRule;
-privacyValueDisallowAll#8b73e763 = PrivacyRule;
-privacyValueDisallowUsers#c7f49b7 users:Vector<int> = PrivacyRule;
-
-account.privacyRules#554abb6f rules:Vector<PrivacyRule> users:Vector<User> = account.PrivacyRules;
-
-accountDaysTTL#b8d0afdf days:int = AccountDaysTTL;
-
-account.sentChangePhoneCode#a4f58c4c phone_code_hash:string send_call_timeout:int = account.SentChangePhoneCode;
-
-updateUserPhone#12b9417b user_id:int phone:string = Update;
-
-account.noPassword#5770e7a9 new_salt:bytes = account.Password;
-account.password#739e5f72 current_salt:bytes new_salt:bytes hint:string = account.Password;
-
-documentAttributeImageSize#6c37c15c w:int h:int = DocumentAttribute;
-documentAttributeAnimated#11b58939 = DocumentAttribute;
-documentAttributeSticker#fb0a5727 = DocumentAttribute;
-documentAttributeVideo#5910cccb duration:int w:int h:int = DocumentAttribute;
-documentAttributeAudio#51448e5 duration:int = DocumentAttribute;
-documentAttributeFilename#15590068 file_name:string = DocumentAttribute;
-
-messages.stickersNotModified#f1749a22 = messages.Stickers;
-messages.stickers#8a8ecd32 hash:string stickers:Vector<Document> = messages.Stickers;
-
-stickerPack#12b299d4 emoticon:string documents:Vector<long> = StickerPack;
-
-messages.allStickersNotModified#e86602c3 = messages.AllStickers;
-messages.allStickers#dcef3102 hash:string packs:Vector<StickerPack> documents:Vector<Document> = messages.AllStickers;
-
----functions---
-
-invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
-
-invokeAfterMsgs#3dc4b4f0 {X:Type} msg_ids:Vector<long> query:!X = X;
-
-auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone;
-auth.sendCode#768d5f4d phone_number:string sms_type:int api_id:int api_hash:string lang_code:string = auth.SentCode;
-auth.sendCall#3c51564 phone_number:string phone_code_hash:string = Bool;
-auth.signUp#1b067634 phone_number:string phone_code_hash:string phone_code:string first_name:string last_name:string = auth.Authorization;
-auth.signIn#bcd51581 phone_number:string phone_code_hash:string phone_code:string = auth.Authorization;
-auth.logOut#5717da40 = Bool;
-auth.resetAuthorizations#9fab0d1a = Bool;
-auth.sendInvites#771c1d97 phone_numbers:Vector<string> message:string = Bool;
-auth.exportAuthorization#e5bfffcd dc_id:int = auth.ExportedAuthorization;
-auth.importAuthorization#e3ef9613 id:int bytes:bytes = auth.Authorization;
-auth.bindTempAuthKey#cdd42a05 perm_auth_key_id:long nonce:long expires_at:int encrypted_message:bytes = Bool;
-
-account.registerDevice#446c712c token_type:int token:string device_model:string system_version:string app_version:string app_sandbox:Bool lang_code:string = Bool;
-account.unregisterDevice#65c55b40 token_type:int token:string = Bool;
-account.updateNotifySettings#84be5b93 peer:InputNotifyPeer settings:InputPeerNotifySettings = Bool;
-account.getNotifySettings#12b3ad31 peer:InputNotifyPeer = PeerNotifySettings;
-account.resetNotifySettings#db7e1747 = Bool;
-account.updateProfile#f0888d68 first_name:string last_name:string = User;
-account.updateStatus#6628562c offline:Bool = Bool;
-account.getWallPapers#c04cfac2 = Vector<WallPaper>;
-
-users.getUsers#d91a548 id:Vector<InputUser> = Vector<User>;
-users.getFullUser#ca30a5b1 id:InputUser = UserFull;
-
-contacts.getStatuses#c4a353ee = Vector<ContactStatus>;
-contacts.getContacts#22c6aa08 hash:string = contacts.Contacts;
-contacts.importContacts#da30b32d contacts:Vector<InputContact> replace:Bool = contacts.ImportedContacts;
-contacts.getSuggested#cd773428 limit:int = contacts.Suggested;
-contacts.deleteContact#8e953744 id:InputUser = contacts.Link;
-contacts.deleteContacts#59ab389e id:Vector<InputUser> = Bool;
-contacts.block#332b49fc id:InputUser = Bool;
-contacts.unblock#e54100bd id:InputUser = Bool;
-contacts.getBlocked#f57c350f offset:int limit:int = contacts.Blocked;
-contacts.exportCard#84e53737 = Vector<int>;
-contacts.importCard#4fe196fe export_card:Vector<int> = User;
-
-messages.getMessages#4222fa74 id:Vector<int> = messages.Messages;
-messages.getDialogs#eccf1df6 offset:int max_id:int limit:int = messages.Dialogs;
-messages.getHistory#92a1df2f peer:InputPeer offset:int max_id:int limit:int = messages.Messages;
-messages.search#7e9f2ab peer:InputPeer q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = messages.Messages;
-messages.readHistory#eed884c6 peer:InputPeer max_id:int offset:int read_contents:Bool = messages.AffectedHistory;
-messages.deleteHistory#f4f8fb61 peer:InputPeer offset:int = messages.AffectedHistory;
-messages.deleteMessages#14f2dd0a id:Vector<int> = Vector<int>;
-messages.restoreMessages#395f9d7e id:Vector<int> = Vector<int>;
-messages.receivedMessages#28abcb68 max_id:int = Vector<int>;
-messages.setTyping#a3825e50 peer:InputPeer action:SendMessageAction = Bool;
-messages.sendMessage#4cde0aab peer:InputPeer message:string random_id:long = messages.SentMessage;
-messages.sendMedia#a3c85d76 peer:InputPeer media:InputMedia random_id:long = messages.StatedMessage;
-messages.forwardMessages#514cd10f peer:InputPeer id:Vector<int> = messages.StatedMessages;
-messages.getChats#3c6aa187 id:Vector<int> = messages.Chats;
-messages.getFullChat#3b831c66 chat_id:int = messages.ChatFull;
-messages.editChatTitle#b4bc68b5 chat_id:int title:string = messages.StatedMessage;
-messages.editChatPhoto#d881821d chat_id:int photo:InputChatPhoto = messages.StatedMessage;
-messages.addChatUser#2ee9ee9e chat_id:int user_id:InputUser fwd_limit:int = messages.StatedMessage;
-messages.deleteChatUser#c3c5cd23 chat_id:int user_id:InputUser = messages.StatedMessage;
-messages.createChat#419d9aee users:Vector<InputUser> title:string = messages.StatedMessage;
-
-updates.getState#edd4882a = updates.State;
-updates.getDifference#a041495 pts:int date:int qts:int = updates.Difference;
-
-photos.updateProfilePhoto#eef579a0 id:InputPhoto crop:InputPhotoCrop = UserProfilePhoto;
-photos.uploadProfilePhoto#d50f9c88 file:InputFile caption:string geo_point:InputGeoPoint crop:InputPhotoCrop = photos.Photo;
-photos.deletePhotos#87cf7f2f id:Vector<InputPhoto> = Vector<long>;
-
-upload.saveFilePart#b304a621 file_id:long file_part:int bytes:bytes = Bool;
-upload.getFile#e3a6cfb5 location:InputFileLocation offset:int limit:int = upload.File;
-
-help.getConfig#c4f9186b = Config;
-help.getNearestDc#1fb33026 = NearestDc;
-help.getAppUpdate#c812ac7e device_model:string system_version:string app_version:string lang_code:string = help.AppUpdate;
-help.saveAppLog#6f02f748 events:Vector<InputAppEvent> = Bool;
-help.getInviteText#a4a95186 lang_code:string = help.InviteText;
-
-photos.getUserPhotos#b7ee553c user_id:InputUser offset:int max_id:int limit:int = photos.Photos;
-
-messages.forwardMessage#3f3f4f2 peer:InputPeer id:int random_id:long = messages.StatedMessage;
-messages.sendBroadcast#41bb0972 contacts:Vector<InputUser> message:string media:InputMedia = messages.StatedMessages;
-
-geochats.getLocated#7f192d8f geo_point:InputGeoPoint radius:int limit:int = geochats.Located;
-geochats.getRecents#e1427e6f offset:int limit:int = geochats.Messages;
-geochats.checkin#55b3e8fb peer:InputGeoChat = geochats.StatedMessage;
-geochats.getFullChat#6722dd6f peer:InputGeoChat = messages.ChatFull;
-geochats.editChatTitle#4c8e2273 peer:InputGeoChat title:string address:string = geochats.StatedMessage;
-geochats.editChatPhoto#35d81a95 peer:InputGeoChat photo:InputChatPhoto = geochats.StatedMessage;
-geochats.search#cfcdc44d peer:InputGeoChat q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = geochats.Messages;
-geochats.getHistory#b53f7a68 peer:InputGeoChat offset:int max_id:int limit:int = geochats.Messages;
-geochats.setTyping#8b8a729 peer:InputGeoChat typing:Bool = Bool;
-geochats.sendMessage#61b0044 peer:InputGeoChat message:string random_id:long = geochats.StatedMessage;
-geochats.sendMedia#b8f0deff peer:InputGeoChat media:InputMedia random_id:long = geochats.StatedMessage;
-geochats.createGeoChat#e092e16 title:string geo_point:InputGeoPoint address:string venue:string = geochats.StatedMessage;
-
-messages.getDhConfig#26cf8950 version:int random_length:int = messages.DhConfig;
-messages.requestEncryption#f64daf43 user_id:InputUser random_id:int g_a:bytes = EncryptedChat;
-messages.acceptEncryption#3dbc0415 peer:InputEncryptedChat g_b:bytes key_fingerprint:long = EncryptedChat;
-messages.discardEncryption#edd923c5 chat_id:int = Bool;
-messages.setEncryptedTyping#791451ed peer:InputEncryptedChat typing:Bool = Bool;
-messages.readEncryptedHistory#7f4b690a peer:InputEncryptedChat max_date:int = Bool;
-messages.sendEncrypted#a9776773 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.sendEncryptedFile#9a901b66 peer:InputEncryptedChat random_id:long data:bytes file:InputEncryptedFile = messages.SentEncryptedMessage;
-messages.sendEncryptedService#32d439a4 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.receivedQueue#55a5bb66 max_qts:int = Vector<long>;
-
-upload.saveBigFilePart#de7b673d file_id:long file_part:int file_total_parts:int bytes:bytes = Bool;
-
-initConnection#69796de9 {X:Type} api_id:int device_model:string system_version:string app_version:string lang_code:string query:!X = X;
-
-help.getSupport#9cdf08cd = help.Support;
-
-auth.sendSms#da9f3e8 phone_number:string phone_code_hash:string = Bool;
-
-messages.readMessageContents#354b5bc2 id:Vector<int> = Vector<int>;
-
-account.checkUsername#2714d86c username:string = Bool;
-account.updateUsername#3e0bdd7c username:string = User;
-
-contacts.search#11f812d8 q:string limit:int = contacts.Found;
-
-account.getPrivacy#dadbc950 key:InputPrivacyKey = account.PrivacyRules;
-account.setPrivacy#c9f81ce8 key:InputPrivacyKey rules:Vector<InputPrivacyRule> = account.PrivacyRules;
-account.deleteAccount#418d4e0b reason:string = Bool;
-account.getAccountTTL#8fc711d = AccountDaysTTL;
-account.setAccountTTL#2442485e ttl:AccountDaysTTL = Bool;
-
-invokeWithLayer#da9b0d0d {X:Type} layer:int query:!X = X;
-
-contacts.resolveUsername#bf0131c username:string = User;
-
-account.sendChangePhoneCode#a407a8f4 phone_number:string = account.SentChangePhoneCode;
-account.changePhone#70c32edb phone_number:string phone_code_hash:string phone_code:string = User;
-account.getPassword#548a30f5 = account.Password;
-account.setPassword#dd2a4d8f current_password_hash:bytes new_salt:bytes new_password_hash:bytes hint:string = Bool;
-
-auth.checkPassword#a63011e password_hash:bytes = auth.Authorization;
-
-messages.getStickers#ae22e045 emoticon:string hash:string = messages.Stickers;
-messages.getAllStickers#aa3bc868 hash:string = messages.AllStickers;
diff --git a/protocols/Telegram/docs/tgl/scheme25.tl b/protocols/Telegram/docs/tgl/scheme25.tl
deleted file mode 100644
index 89447c4ff2..0000000000
--- a/protocols/Telegram/docs/tgl/scheme25.tl
+++ /dev/null
@@ -1,622 +0,0 @@
-int ?= Int;
-long ?= Long;
-double ?= Double;
-string ?= String;
-
-bytes string = Bytes;
-
-int128 long long = Int128;
-int256 long long long long = Int256;
-
-boolFalse#bc799737 = Bool;
-boolTrue#997275b5 = Bool;
-
-vector#1cb5c415 {t:Type} # [ t ] = Vector t;
-
-error#c4b9f9bb code:int text:string = Error;
-
-null#56730bcc = Null;
-
-inputPeerEmpty#7f3b18ea = InputPeer;
-inputPeerSelf#7da07ec9 = InputPeer;
-inputPeerContact#1023dbe8 user_id:int = InputPeer;
-inputPeerForeign#9b447325 user_id:int access_hash:long = InputPeer;
-inputPeerChat#179be863 chat_id:int = InputPeer;
-
-inputUserEmpty#b98886cf = InputUser;
-inputUserSelf#f7c1b13f = InputUser;
-inputUserContact#86e94f65 user_id:int = InputUser;
-inputUserForeign#655e74ff user_id:int access_hash:long = InputUser;
-
-inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact;
-
-inputFile#f52ff27f id:long parts:int name:string md5_checksum:string = InputFile;
-
-inputMediaEmpty#9664f57f = InputMedia;
-inputMediaUploadedPhoto#2dc53a7d file:InputFile = InputMedia;
-inputMediaPhoto#8f2ab2ec photo_id:InputPhoto = InputMedia;
-inputMediaGeoPoint#f9c44144 geo_point:InputGeoPoint = InputMedia;
-inputMediaContact#a6e45987 phone_number:string first_name:string last_name:string = InputMedia;
-inputMediaUploadedVideo#133ad6f6 file:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaUploadedThumbVideo#9912dabf file:InputFile thumb:InputFile duration:int w:int h:int mime_type:string = InputMedia;
-inputMediaVideo#7f023ae6 video_id:InputVideo = InputMedia;
-
-inputChatPhotoEmpty#1ca48f57 = InputChatPhoto;
-inputChatUploadedPhoto#94254732 file:InputFile crop:InputPhotoCrop = InputChatPhoto;
-inputChatPhoto#b2e1bf08 id:InputPhoto crop:InputPhotoCrop = InputChatPhoto;
-
-inputGeoPointEmpty#e4c123d6 = InputGeoPoint;
-inputGeoPoint#f3b7acc9 latitude:double longitude:double = InputGeoPoint;
-
-inputPhotoEmpty#1cd7bf0d = InputPhoto;
-inputPhoto#fb95c6c4 id:long access_hash:long = InputPhoto;
-
-inputVideoEmpty#5508ec75 = InputVideo;
-inputVideo#ee579652 id:long access_hash:long = InputVideo;
-
-inputFileLocation#14637196 volume_id:long local_id:int secret:long = InputFileLocation;
-inputVideoFileLocation#3d0364ec id:long access_hash:long = InputFileLocation;
-
-inputPhotoCropAuto#ade6b004 = InputPhotoCrop;
-inputPhotoCrop#d9915325 crop_left:double crop_top:double crop_width:double = InputPhotoCrop;
-
-inputAppEvent#770656a8 time:double type:string peer:long data:string = InputAppEvent;
-
-peerUser#9db1bc6d user_id:int = Peer;
-peerChat#bad0e5bb chat_id:int = Peer;
-
-storage.fileUnknown#aa963b05 = storage.FileType;
-storage.fileJpeg#7efe0e = storage.FileType;
-storage.fileGif#cae1aadf = storage.FileType;
-storage.filePng#a4f63c0 = storage.FileType;
-storage.filePdf#ae1e508d = storage.FileType;
-storage.fileMp3#528a0677 = storage.FileType;
-storage.fileMov#4b09ebbc = storage.FileType;
-storage.filePartial#40bc6f52 = storage.FileType;
-storage.fileMp4#b3cea0e4 = storage.FileType;
-storage.fileWebp#1081464c = storage.FileType;
-
-fileLocationUnavailable#7c596b46 volume_id:long local_id:int secret:long = FileLocation;
-fileLocation#53d69076 dc_id:int volume_id:long local_id:int secret:long = FileLocation;
-
-userEmpty#200250ba id:int = User;
-userSelf#1c60e608 id:int first_name:string last_name:string username:string phone:string photo:UserProfilePhoto status:UserStatus = User;
-userContact#cab35e18 id:int first_name:string last_name:string username:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userRequest#d9ccc4ef id:int first_name:string last_name:string username:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userForeign#75cf7a8 id:int first_name:string last_name:string username:string access_hash:long photo:UserProfilePhoto status:UserStatus = User;
-userDeleted#d6016d7a id:int first_name:string last_name:string username:string = User;
-
-userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
-userProfilePhoto#d559d8c8 photo_id:long photo_small:FileLocation photo_big:FileLocation = UserProfilePhoto;
-
-userStatusEmpty#9d05049 = UserStatus;
-userStatusOnline#edb93949 expires:int = UserStatus;
-userStatusOffline#8c703f was_online:int = UserStatus;
-
-chatEmpty#9ba2d800 id:int = Chat;
-chat#6e9c9bc7 id:int title:string photo:ChatPhoto participants_count:int date:int left:Bool version:int = Chat;
-chatForbidden#fb0ccc41 id:int title:string date:int = Chat;
-
-chatFull#630e61be id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings = ChatFull;
-
-chatParticipant#c8d7493e user_id:int inviter_id:int date:int = ChatParticipant;
-
-chatParticipantsForbidden#fd2bb8a chat_id:int = ChatParticipants;
-chatParticipants#7841b415 chat_id:int admin_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
-
-chatPhotoEmpty#37c1011c = ChatPhoto;
-chatPhoto#6153276a photo_small:FileLocation photo_big:FileLocation = ChatPhoto;
-
-messageEmpty#83e5de54 id:int = Message;
-message#a7ab1991 flags:# id:int from_id:int to_id:Peer fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int date:int message:string media:MessageMedia = Message;
-messageService#1d86f70e flags:int id:int from_id:int to_id:Peer date:int action:MessageAction = Message;
-
-messageMediaEmpty#3ded6320 = MessageMedia;
-messageMediaPhoto#c8c45a2a photo:Photo = MessageMedia;
-messageMediaVideo#a2d24290 video:Video = MessageMedia;
-messageMediaGeo#56e0d474 geo:GeoPoint = MessageMedia;
-messageMediaContact#5e7d2f39 phone_number:string first_name:string last_name:string user_id:int = MessageMedia;
-messageMediaUnsupportedL22#29632a36 bytes:bytes = MessageMedia;
-messageMediaUnsupported#9f84f49e = MessageMedia;
-
-messageActionEmpty#b6aef7b0 = MessageAction;
-messageActionChatCreate#a6638b9a title:string users:Vector<int> = MessageAction;
-messageActionChatEditTitle#b5a1ce5a title:string = MessageAction;
-messageActionChatEditPhoto#7fcb13a8 photo:Photo = MessageAction;
-messageActionChatDeletePhoto#95e3fbef = MessageAction;
-messageActionChatAddUser#5e3cfc4b user_id:int = MessageAction;
-messageActionChatDeleteUser#b2ae9b0c user_id:int = MessageAction;
-
-dialog#c1dd804a peer:Peer top_message:int read_inbox_max_id:int unread_count:int notify_settings:PeerNotifySettings = Dialog;
-
-photoEmpty#2331b22d id:long = Photo;
-photo#22b56751 id:long access_hash:long user_id:int date:int caption:string geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-
-photoSizeEmpty#e17e23c type:string = PhotoSize;
-photoSize#77bfb61b type:string location:FileLocation w:int h:int size:int = PhotoSize;
-photoCachedSize#e9a734fa type:string location:FileLocation w:int h:int bytes:bytes = PhotoSize;
-
-videoEmpty#c10658a8 id:long = Video;
-video#388fa391 id:long access_hash:long user_id:int date:int caption:string duration:int mime_type:string size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-
-geoPointEmpty#1117dd5f = GeoPoint;
-geoPoint#2049d70c longitude:double latitude:double = GeoPoint;
-
-auth.checkedPhone#811ea28e phone_registered:Bool = auth.CheckedPhone;
-
-auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-auth.authorization#f6b673a4 expires:int user:User = auth.Authorization;
-
-auth.exportedAuthorization#df969c2d id:int bytes:bytes = auth.ExportedAuthorization;
-
-inputNotifyPeer#b8bc5b0c peer:InputPeer = InputNotifyPeer;
-inputNotifyUsers#193b4417 = InputNotifyPeer;
-inputNotifyChats#4a95e84e = InputNotifyPeer;
-inputNotifyAll#a429b886 = InputNotifyPeer;
-
-inputPeerNotifyEventsEmpty#f03064d8 = InputPeerNotifyEvents;
-inputPeerNotifyEventsAll#e86a2c74 = InputPeerNotifyEvents;
-
-inputPeerNotifySettings#46a2ce98 mute_until:int sound:string show_previews:Bool events_mask:int = InputPeerNotifySettings;
-
-peerNotifyEventsEmpty#add53cb3 = PeerNotifyEvents;
-peerNotifyEventsAll#6d1ded88 = PeerNotifyEvents;
-
-peerNotifySettingsEmpty#70a68512 = PeerNotifySettings;
-peerNotifySettings#8d5e11ee mute_until:int sound:string show_previews:Bool events_mask:int = PeerNotifySettings;
-
-wallPaper#ccb03657 id:int title:string sizes:Vector<PhotoSize> color:int = WallPaper;
-
-userFull#771095da user:User link:contacts.Link profile_photo:Photo notify_settings:PeerNotifySettings blocked:Bool real_first_name:string real_last_name:string = UserFull;
-
-contact#f911c994 user_id:int mutual:Bool = Contact;
-
-importedContact#d0028438 user_id:int client_id:long = ImportedContact;
-
-contactBlocked#561bc879 user_id:int date:int = ContactBlocked;
-
-contactSuggested#3de191a1 user_id:int mutual_contacts:int = ContactSuggested;
-
-contactStatus#d3680c61 user_id:int status:UserStatus = ContactStatus;
-
-chatLocated#3631cf4c chat_id:int distance:int = ChatLocated;
-
-contacts.link#3ace484c my_link:ContactLink foreign_link:ContactLink user:User = contacts.Link;
-
-contacts.contactsNotModified#b74ba9d2 = contacts.Contacts;
-contacts.contacts#6f8b8cb2 contacts:Vector<Contact> users:Vector<User> = contacts.Contacts;
-
-contacts.importedContacts#ad524315 imported:Vector<ImportedContact> retry_contacts:Vector<long> users:Vector<User> = contacts.ImportedContacts;
-
-contacts.blocked#1c138d15 blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-contacts.blockedSlice#900802a1 count:int blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-
-contacts.suggested#5649dcc5 results:Vector<ContactSuggested> users:Vector<User> = contacts.Suggested;
-
-messages.dialogs#15ba6c40 dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-messages.dialogsSlice#71e094f3 count:int dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-
-messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-messages.messagesSlice#b446ae3 count:int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-
-messages.messageEmpty#3f4e0648 = messages.Message;
-
-messages.sentMessage#4c3d47f3 id:int date:int media:MessageMedia pts:int pts_count:int = messages.SentMessage;
-
-messages.chats#64ff9fd5 chats:Vector<Chat> = messages.Chats;
-
-messages.chatFull#e5d7d19c full_chat:ChatFull chats:Vector<Chat> users:Vector<User> = messages.ChatFull;
-
-messages.affectedHistory#b45c69d1 pts:int pts_count:int offset:int = messages.AffectedHistory;
-
-inputMessagesFilterEmpty#57e2f66c = MessagesFilter;
-inputMessagesFilterPhotos#9609a51c = MessagesFilter;
-inputMessagesFilterVideo#9fc00e65 = MessagesFilter;
-inputMessagesFilterPhotoVideo#56e9f0e4 = MessagesFilter;
-inputMessagesFilterPhotoVideoDocuments#d95e73bb = MessagesFilter;
-inputMessagesFilterDocument#9eddf188 = MessagesFilter;
-inputMessagesFilterAudio#cfc87522 = MessagesFilter;
-
-updateNewMessage#1f2b0afd message:Message pts:int pts_count:int = Update;
-updateMessageID#4e90bfd6 id:int random_id:long = Update;
-updateReadMessages#2e5ab668 messages:Vector<int> pts:int pts_count:int = Update;
-updateDeleteMessages#a20db0e5 messages:Vector<int> pts:int pts_count:int = Update;
-updateUserTyping#5c486927 user_id:int action:SendMessageAction = Update;
-updateChatUserTyping#9a65ea1f chat_id:int user_id:int action:SendMessageAction = Update;
-updateChatParticipants#7761198 participants:ChatParticipants = Update;
-updateUserStatus#1bfbd823 user_id:int status:UserStatus = Update;
-updateUserName#a7332b73 user_id:int first_name:string last_name:string username:string = Update;
-updateUserPhoto#95313b0c user_id:int date:int photo:UserProfilePhoto previous:Bool = Update;
-updateContactRegistered#2575bbb9 user_id:int date:int = Update;
-updateContactLink#9d2e67c5 user_id:int my_link:ContactLink foreign_link:ContactLink = Update;
-updateNewAuthorization#8f06529a auth_key_id:long date:int device:string location:string = Update;
-
-updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
-
-updates.differenceEmpty#5d75a138 date:int seq:int = updates.Difference;
-updates.difference#f49ca0 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> state:updates.State = updates.Difference;
-updates.differenceSlice#a8fb1981 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> intermediate_state:updates.State = updates.Difference;
-
-updatesTooLong#e317af7e = Updates;
-updateShortMessage#ed5c2127 flags:# id:int user_id:int message:string pts:int pts_count:int date:int fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int = Updates;
-updateShortChatMessage#52238b3c flags:# id:int from_id:int chat_id:int message:string pts:int pts_count:int date:int fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int = Updates;
-updateShort#78d4dec1 update:Update date:int = Updates;
-updatesCombined#725b04c3 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq_start:int seq:int = Updates;
-updates#74ae4240 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq:int = Updates;
-
-photos.photos#8dca6aa5 photos:Vector<Photo> users:Vector<User> = photos.Photos;
-photos.photosSlice#15051f54 count:int photos:Vector<Photo> users:Vector<User> = photos.Photos;
-
-photos.photo#20212ca8 photo:Photo users:Vector<User> = photos.Photo;
-
-upload.file#96a18d5 type:storage.FileType mtime:int bytes:bytes = upload.File;
-
-dcOption#2ec2a43c id:int hostname:string ip_address:string port:int = DcOption;
-
-config#68bac247 date:int expires:int test_mode:Bool this_dc:int dc_options:Vector<DcOption> chat_size_max:int broadcast_size_max:int forwarded_count_max:int online_update_period_ms:int offline_blur_timeout_ms:int offline_idle_timeout_ms:int online_cloud_timeout_ms:int notify_cloud_delay_ms:int notify_default_delay_ms:int chat_big_size:int disabled_features:Vector<DisabledFeature> = Config;
-
-nearestDc#8e1a1775 country:string this_dc:int nearest_dc:int = NearestDc;
-
-help.appUpdate#8987f311 id:int critical:Bool url:string text:string = help.AppUpdate;
-help.noAppUpdate#c45a6536 = help.AppUpdate;
-
-help.inviteText#18cb9f78 message:string = help.InviteText;
-
-messages.sentMessageLink#35a1a663 id:int date:int media:MessageMedia pts:int pts_count:int links:Vector<contacts.Link> seq:int = messages.SentMessage;
-
-inputGeoChat#74d456fa chat_id:int access_hash:long = InputGeoChat;
-
-inputNotifyGeoChatPeer#4d8ddec8 geo_peer:InputGeoChat = InputNotifyPeer;
-
-geoChat#75eaea5a id:int access_hash:long title:string address:string venue:string geo:GeoPoint photo:ChatPhoto participants_count:int date:int checked_in:Bool version:int = Chat;
-
-geoChatMessageEmpty#60311a9b chat_id:int id:int = GeoChatMessage;
-geoChatMessage#4505f8e1 chat_id:int id:int from_id:int date:int message:string media:MessageMedia = GeoChatMessage;
-geoChatMessageService#d34fa24e chat_id:int id:int from_id:int date:int action:MessageAction = GeoChatMessage;
-
-geochats.statedMessage#17b1578b message:GeoChatMessage chats:Vector<Chat> users:Vector<User> seq:int = geochats.StatedMessage;
-
-geochats.located#48feb267 results:Vector<ChatLocated> messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Located;
-
-geochats.messages#d1526db1 messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-geochats.messagesSlice#bc5863e8 count:int messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-
-messageActionGeoChatCreate#6f038ebc title:string address:string = MessageAction;
-messageActionGeoChatCheckin#c7d53de = MessageAction;
-
-updateNewGeoChatMessage#5a68e3f7 geo_message:GeoChatMessage = Update;
-
-wallPaperSolid#63117f24 id:int title:string bg_color:int color:int = WallPaper;
-
-updateNewEncryptedMessage#12bcbd9a encr_message:EncryptedMessage qts:int = Update;
-updateEncryptedChatTyping#1710f156 chat_id:int = Update;
-updateEncryption#b4a2e88d encr_chat:EncryptedChat date:int = Update;
-updateEncryptedMessagesRead#38fe25b7 chat_id:int max_date:int date:int = Update;
-
-encryptedChatEmpty#ab7ec0a0 id:int = EncryptedChat;
-encryptedChatWaiting#3bf703dc id:int access_hash:long date:int admin_id:int participant_id:int = EncryptedChat;
-encryptedChatRequested#c878527e id:int access_hash:long date:int admin_id:int participant_id:int g_a:bytes = EncryptedChat;
-encryptedChat#fa56ce36 id:int access_hash:long date:int admin_id:int participant_id:int g_a_or_b:bytes key_fingerprint:long = EncryptedChat;
-encryptedChatDiscarded#13d6dd27 id:int = EncryptedChat;
-
-inputEncryptedChat#f141b5e1 chat_id:int access_hash:long = InputEncryptedChat;
-
-encryptedFileEmpty#c21f497e = EncryptedFile;
-encryptedFile#4a70994c id:long access_hash:long size:int dc_id:int key_fingerprint:int = EncryptedFile;
-
-inputEncryptedFileEmpty#1837c364 = InputEncryptedFile;
-inputEncryptedFileUploaded#64bd0306 id:long parts:int md5_checksum:string key_fingerprint:int = InputEncryptedFile;
-inputEncryptedFile#5a17b5e5 id:long access_hash:long = InputEncryptedFile;
-
-inputEncryptedFileLocation#f5235d55 id:long access_hash:long = InputFileLocation;
-
-encryptedMessage#ed18c118 random_id:long chat_id:int date:int bytes:bytes file:EncryptedFile = EncryptedMessage;
-encryptedMessageService#23734b06 random_id:long chat_id:int date:int bytes:bytes = EncryptedMessage;
-
-messages.dhConfigNotModified#c0e24635 random:bytes = messages.DhConfig;
-messages.dhConfig#2c221edd g:int p:bytes version:int random:bytes = messages.DhConfig;
-
-messages.sentEncryptedMessage#560f8935 date:int = messages.SentEncryptedMessage;
-messages.sentEncryptedFile#9493ff32 date:int file:EncryptedFile = messages.SentEncryptedMessage;
-
-inputFileBig#fa4f0bb5 id:long parts:int name:string = InputFile;
-
-inputEncryptedFileBigUploaded#2dc173c8 id:long parts:int key_fingerprint:int = InputEncryptedFile;
-
-updateChatParticipantAdd#3a0eeb22 chat_id:int user_id:int inviter_id:int version:int = Update;
-updateChatParticipantDelete#6e5f8c22 chat_id:int user_id:int version:int = Update;
-updateDcOptions#8e5e9873 dc_options:Vector<DcOption> = Update;
-
-inputMediaUploadedAudio#4e498cab file:InputFile duration:int mime_type:string = InputMedia;
-inputMediaAudio#89938781 audio_id:InputAudio = InputMedia;
-inputMediaUploadedDocument#ffe76b78 file:InputFile mime_type:string attributes:Vector<DocumentAttribute> = InputMedia;
-inputMediaUploadedThumbDocument#41481486 file:InputFile thumb:InputFile mime_type:string attributes:Vector<DocumentAttribute> = InputMedia;
-inputMediaDocument#d184e841 document_id:InputDocument = InputMedia;
-
-messageMediaDocument#2fda2204 document:Document = MessageMedia;
-messageMediaAudio#c6b68300 audio:Audio = MessageMedia;
-
-inputAudioEmpty#d95adc84 = InputAudio;
-inputAudio#77d440ff id:long access_hash:long = InputAudio;
-
-inputDocumentEmpty#72f0eaae = InputDocument;
-inputDocument#18798952 id:long access_hash:long = InputDocument;
-
-inputAudioFileLocation#74dc404d id:long access_hash:long = InputFileLocation;
-inputDocumentFileLocation#4e45abe9 id:long access_hash:long = InputFileLocation;
-
-audioEmpty#586988d8 id:long = Audio;
-audio#c7ac6496 id:long access_hash:long user_id:int date:int duration:int mime_type:string size:int dc_id:int = Audio;
-
-documentEmpty#36f8c871 id:long = Document;
-document#f9a39f4f id:long access_hash:long date:int mime_type:string size:int thumb:PhotoSize dc_id:int attributes:Vector<DocumentAttribute> = Document;
-document_l19#9efc6326 id:long access_hash:long user_id:int date:int file_name:string mime_type:string size:int thumb:PhotoSize dc_id:int = Document;
-
-help.support#17c6b5f6 phone_number:string user:User = help.Support;
-
-notifyPeer#9fd40bd8 peer:Peer = NotifyPeer;
-notifyUsers#b4c83b4c = NotifyPeer;
-notifyChats#c007cec3 = NotifyPeer;
-notifyAll#74d07c60 = NotifyPeer;
-
-updateUserBlocked#80ece81a user_id:int blocked:Bool = Update;
-updateNotifySettings#bec268ef notify_peer:NotifyPeer notify_settings:PeerNotifySettings = Update;
-
-auth.sentAppCode#e325edcf phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-sendMessageTypingAction#16bf744e = SendMessageAction;
-sendMessageCancelAction#fd5ec8f5 = SendMessageAction;
-sendMessageRecordVideoAction#a187d66f = SendMessageAction;
-sendMessageUploadVideoActionL27#92042ff7 = SendMessageAction;
-sendMessageUploadVideoAction#e9763aec progress:int = SendMessageAction;
-sendMessageRecordAudioAction#d52f73f7 = SendMessageAction;
-sendMessageUploadAudioActionL27#e6ac8a6f = SendMessageAction;
-sendMessageUploadAudioAction#f351d7ab progress:int = SendMessageAction;
-sendMessageUploadPhotoAction#990a3c1a = SendMessageAction;
-sendMessageUploadDocumentActionL27#8faee98e = SendMessageAction;
-sendMessageUploadDocumentAction#aa0cd9e4 progress:int = SendMessageAction;
-sendMessageGeoLocationAction#176f8ba1 = SendMessageAction;
-sendMessageChooseContactAction#628cbc6f = SendMessageAction;
-
-contactFound#ea879f95 user_id:int = ContactFound;
-
-contacts.found#566000e results:Vector<ContactFound> users:Vector<User> = contacts.Found;
-
-updateServiceNotification#382dd3e4 type:string message_text:string media:MessageMedia popup:Bool = Update;
-
-userStatusRecently#e26f42f1 = UserStatus;
-userStatusLastWeek#7bf09fc = UserStatus;
-userStatusLastMonth#77ebc742 = UserStatus;
-
-updatePrivacy#ee3b272a key:PrivacyKey rules:Vector<PrivacyRule> = Update;
-
-inputPrivacyKeyStatusTimestamp#4f96cb18 = InputPrivacyKey;
-
-privacyKeyStatusTimestamp#bc2eab30 = PrivacyKey;
-
-inputPrivacyValueAllowContacts#d09e07b = InputPrivacyRule;
-inputPrivacyValueAllowAll#184b35ce = InputPrivacyRule;
-inputPrivacyValueAllowUsers#131cc67f users:Vector<InputUser> = InputPrivacyRule;
-inputPrivacyValueDisallowContacts#ba52007 = InputPrivacyRule;
-inputPrivacyValueDisallowAll#d66b66c9 = InputPrivacyRule;
-inputPrivacyValueDisallowUsers#90110467 users:Vector<InputUser> = InputPrivacyRule;
-
-privacyValueAllowContacts#fffe1bac = PrivacyRule;
-privacyValueAllowAll#65427b82 = PrivacyRule;
-privacyValueAllowUsers#4d5bbe0c users:Vector<int> = PrivacyRule;
-privacyValueDisallowContacts#f888fa1a = PrivacyRule;
-privacyValueDisallowAll#8b73e763 = PrivacyRule;
-privacyValueDisallowUsers#c7f49b7 users:Vector<int> = PrivacyRule;
-
-account.privacyRules#554abb6f rules:Vector<PrivacyRule> users:Vector<User> = account.PrivacyRules;
-
-accountDaysTTL#b8d0afdf days:int = AccountDaysTTL;
-
-account.sentChangePhoneCode#a4f58c4c phone_code_hash:string send_call_timeout:int = account.SentChangePhoneCode;
-
-updateUserPhone#12b9417b user_id:int phone:string = Update;
-
-documentAttributeImageSize#6c37c15c w:int h:int = DocumentAttribute;
-documentAttributeAnimated#11b58939 = DocumentAttribute;
-documentAttributeSticker#994c9882 alt:string = DocumentAttribute;
-documentAttributeVideo#5910cccb duration:int w:int h:int = DocumentAttribute;
-documentAttributeAudio#51448e5 duration:int = DocumentAttribute;
-documentAttributeFilename#15590068 file_name:string = DocumentAttribute;
-
-messages.stickersNotModified#f1749a22 = messages.Stickers;
-messages.stickers#8a8ecd32 hash:string stickers:Vector<Document> = messages.Stickers;
-
-stickerPack#12b299d4 emoticon:string documents:Vector<long> = StickerPack;
-
-messages.allStickersNotModified#e86602c3 = messages.AllStickers;
-messages.allStickers#dcef3102 hash:string packs:Vector<StickerPack> documents:Vector<Document> = messages.AllStickers;
-
-disabledFeature#ae636f24 feature:string description:string = DisabledFeature;
-
-updateReadHistoryInbox#9961fd5c peer:Peer max_id:int pts:int pts_count:int = Update;
-updateReadHistoryOutbox#2f2f21bf peer:Peer max_id:int pts:int pts_count:int = Update;
-
-messages.affectedMessages#84d19185 pts:int pts_count:int = messages.AffectedMessages;
-
-contactLinkUnknown#5f4f9247 = ContactLink;
-contactLinkNone#feedd3ad = ContactLink;
-contactLinkHasPhone#268f3f59 = ContactLink;
-contactLinkContact#d502c2d0 = ContactLink;
-
-updateWebPage#2cc36971 webpage:WebPage = Update;
-
-webPageEmpty#eb1477e8 id:long = WebPage;
-webPagePending#c586da1c id:long date:int = WebPage;
-webPage#a31ea0b5 flags:# id:long url:string display_url:string type:flags.0?string site_name:flags.1?string title:flags.2?string description:flags.3?string photo:flags.4?Photo embed_url:flags.5?string embed_type:flags.5?string embed_width:flags.6?int embed_height:flags.6?int duration:flags.7?int author:flags.8?string = WebPage;
-
-messageMediaWebPage#a32dd600 webpage:WebPage = MessageMedia;
-
-authorization#7bf2e6f6 hash:long flags:int device_model:string platform:string system_version:string api_id:int app_name:string app_version:string date_created:int date_active:int ip:string country:string region:string = Authorization;
-
-account.authorizations#1250abde authorizations:Vector<Authorization> = account.Authorizations;
-
-account.noPassword#96dabc18 new_salt:bytes email_unconfirmed_pattern:string = account.Password;
-account.password#7c18141c current_salt:bytes new_salt:bytes hint:string has_recovery:Bool email_unconfirmed_pattern:string = account.Password;
-
-account.passwordSettings#b7b72ab3 email:string = account.PasswordSettings;
-
-account.passwordInputSettings#bcfc532c flags:# new_salt:flags.0?bytes new_password_hash:flags.0?bytes hint:flags.0?string email:flags.1?string = account.PasswordInputSettings;
-
-auth.passwordRecovery#137948a5 email_pattern:string = auth.PasswordRecovery;
-
-inputMediaVenue#2827a81a geo_point:InputGeoPoint title:string address:string provider:string venue_id:string = InputMedia;
-
-messageMediaVenue#7912b71f geo:GeoPoint title:string address:string provider:string venue_id:string = MessageMedia;
-
----functions---
-
-invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
-
-invokeAfterMsgs#3dc4b4f0 {X:Type} msg_ids:Vector<long> query:!X = X;
-
-auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone;
-auth.sendCode#768d5f4d phone_number:string sms_type:int api_id:int api_hash:string lang_code:string = auth.SentCode;
-auth.sendCall#3c51564 phone_number:string phone_code_hash:string = Bool;
-auth.signUp#1b067634 phone_number:string phone_code_hash:string phone_code:string first_name:string last_name:string = auth.Authorization;
-auth.signIn#bcd51581 phone_number:string phone_code_hash:string phone_code:string = auth.Authorization;
-auth.logOut#5717da40 = Bool;
-auth.resetAuthorizations#9fab0d1a = Bool;
-auth.sendInvites#771c1d97 phone_numbers:Vector<string> message:string = Bool;
-auth.exportAuthorization#e5bfffcd dc_id:int = auth.ExportedAuthorization;
-auth.importAuthorization#e3ef9613 id:int bytes:bytes = auth.Authorization;
-auth.bindTempAuthKey#cdd42a05 perm_auth_key_id:long nonce:long expires_at:int encrypted_message:bytes = Bool;
-
-account.registerDevice#446c712c token_type:int token:string device_model:string system_version:string app_version:string app_sandbox:Bool lang_code:string = Bool;
-account.unregisterDevice#65c55b40 token_type:int token:string = Bool;
-account.updateNotifySettings#84be5b93 peer:InputNotifyPeer settings:InputPeerNotifySettings = Bool;
-account.getNotifySettings#12b3ad31 peer:InputNotifyPeer = PeerNotifySettings;
-account.resetNotifySettings#db7e1747 = Bool;
-account.updateProfile#f0888d68 first_name:string last_name:string = User;
-account.updateStatus#6628562c offline:Bool = Bool;
-account.getWallPapers#c04cfac2 = Vector<WallPaper>;
-
-users.getUsers#d91a548 id:Vector<InputUser> = Vector<User>;
-users.getFullUser#ca30a5b1 id:InputUser = UserFull;
-
-contacts.getStatuses#c4a353ee = Vector<ContactStatus>;
-contacts.getContacts#22c6aa08 hash:string = contacts.Contacts;
-contacts.importContacts#da30b32d contacts:Vector<InputContact> replace:Bool = contacts.ImportedContacts;
-contacts.getSuggested#cd773428 limit:int = contacts.Suggested;
-contacts.deleteContact#8e953744 id:InputUser = contacts.Link;
-contacts.deleteContacts#59ab389e id:Vector<InputUser> = Bool;
-contacts.block#332b49fc id:InputUser = Bool;
-contacts.unblock#e54100bd id:InputUser = Bool;
-contacts.getBlocked#f57c350f offset:int limit:int = contacts.Blocked;
-contacts.exportCard#84e53737 = Vector<int>;
-contacts.importCard#4fe196fe export_card:Vector<int> = User;
-
-messages.getMessages#4222fa74 id:Vector<int> = messages.Messages;
-messages.getDialogs#eccf1df6 offset:int max_id:int limit:int = messages.Dialogs;
-messages.getHistory#92a1df2f peer:InputPeer offset:int max_id:int limit:int = messages.Messages;
-messages.search#7e9f2ab peer:InputPeer q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = messages.Messages;
-messages.readHistory#b04f2510 peer:InputPeer max_id:int offset:int = messages.AffectedHistory;
-messages.deleteHistory#f4f8fb61 peer:InputPeer offset:int = messages.AffectedHistory;
-messages.deleteMessages#a5f18925 id:Vector<int> = messages.AffectedMessages;
-messages.receivedMessages#28abcb68 max_id:int = Vector<int>;
-messages.setTyping#a3825e50 peer:InputPeer action:SendMessageAction = Bool;
-messages.sendMessage#9add8f26 flags:# peer:InputPeer reply_to_msg_id:flags.0?int message:string random_id:long = messages.SentMessage;
-messages.sendMedia#2d7923b1 flags:# peer:InputPeer reply_to_msg_id:flags.0?int media:InputMedia random_id:long = Updates;
-messages.forwardMessages#55e1728d peer:InputPeer id:Vector<int> random_id:Vector<long> = Updates;
-messages.getChats#3c6aa187 id:Vector<int> = messages.Chats;
-messages.getFullChat#3b831c66 chat_id:int = messages.ChatFull;
-messages.editChatTitle#dc452855 chat_id:int title:string = Updates;
-messages.editChatPhoto#ca4c79d8 chat_id:int photo:InputChatPhoto = Updates;
-messages.addChatUser#f9a0aa09 chat_id:int user_id:InputUser fwd_limit:int = Updates;
-messages.deleteChatUser#e0611f16 chat_id:int user_id:InputUser = Updates;
-messages.createChat#9cb126e users:Vector<InputUser> title:string = Updates;
-
-updates.getState#edd4882a = updates.State;
-updates.getDifference#a041495 pts:int date:int qts:int = updates.Difference;
-
-photos.updateProfilePhoto#eef579a0 id:InputPhoto crop:InputPhotoCrop = UserProfilePhoto;
-photos.uploadProfilePhoto#d50f9c88 file:InputFile caption:string geo_point:InputGeoPoint crop:InputPhotoCrop = photos.Photo;
-photos.deletePhotos#87cf7f2f id:Vector<InputPhoto> = Vector<long>;
-
-upload.saveFilePart#b304a621 file_id:long file_part:int bytes:bytes = Bool;
-upload.getFile#e3a6cfb5 location:InputFileLocation offset:int limit:int = upload.File;
-
-help.getConfig#c4f9186b = Config;
-help.getNearestDc#1fb33026 = NearestDc;
-help.getAppUpdate#c812ac7e device_model:string system_version:string app_version:string lang_code:string = help.AppUpdate;
-help.saveAppLog#6f02f748 events:Vector<InputAppEvent> = Bool;
-help.getInviteText#a4a95186 lang_code:string = help.InviteText;
-
-photos.getUserPhotos#b7ee553c user_id:InputUser offset:int max_id:int limit:int = photos.Photos;
-
-messages.forwardMessage#33963bf9 peer:InputPeer id:int random_id:long = Updates;
-messages.sendBroadcast#bf73f4da contacts:Vector<InputUser> random_id:Vector<long> message:string media:InputMedia = Updates;
-
-geochats.getLocated#7f192d8f geo_point:InputGeoPoint radius:int limit:int = geochats.Located;
-geochats.getRecents#e1427e6f offset:int limit:int = geochats.Messages;
-geochats.checkin#55b3e8fb peer:InputGeoChat = geochats.StatedMessage;
-geochats.getFullChat#6722dd6f peer:InputGeoChat = messages.ChatFull;
-geochats.editChatTitle#4c8e2273 peer:InputGeoChat title:string address:string = geochats.StatedMessage;
-geochats.editChatPhoto#35d81a95 peer:InputGeoChat photo:InputChatPhoto = geochats.StatedMessage;
-geochats.search#cfcdc44d peer:InputGeoChat q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = geochats.Messages;
-geochats.getHistory#b53f7a68 peer:InputGeoChat offset:int max_id:int limit:int = geochats.Messages;
-geochats.setTyping#8b8a729 peer:InputGeoChat typing:Bool = Bool;
-geochats.sendMessage#61b0044 peer:InputGeoChat message:string random_id:long = geochats.StatedMessage;
-geochats.sendMedia#b8f0deff peer:InputGeoChat media:InputMedia random_id:long = geochats.StatedMessage;
-geochats.createGeoChat#e092e16 title:string geo_point:InputGeoPoint address:string venue:string = geochats.StatedMessage;
-
-messages.getDhConfig#26cf8950 version:int random_length:int = messages.DhConfig;
-messages.requestEncryption#f64daf43 user_id:InputUser random_id:int g_a:bytes = EncryptedChat;
-messages.acceptEncryption#3dbc0415 peer:InputEncryptedChat g_b:bytes key_fingerprint:long = EncryptedChat;
-messages.discardEncryption#edd923c5 chat_id:int = Bool;
-messages.setEncryptedTyping#791451ed peer:InputEncryptedChat typing:Bool = Bool;
-messages.readEncryptedHistory#7f4b690a peer:InputEncryptedChat max_date:int = Bool;
-messages.sendEncrypted#a9776773 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.sendEncryptedFile#9a901b66 peer:InputEncryptedChat random_id:long data:bytes file:InputEncryptedFile = messages.SentEncryptedMessage;
-messages.sendEncryptedService#32d439a4 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.receivedQueue#55a5bb66 max_qts:int = Vector<long>;
-
-upload.saveBigFilePart#de7b673d file_id:long file_part:int file_total_parts:int bytes:bytes = Bool;
-
-initConnection#69796de9 {X:Type} api_id:int device_model:string system_version:string app_version:string lang_code:string query:!X = X;
-
-help.getSupport#9cdf08cd = help.Support;
-
-auth.sendSms#da9f3e8 phone_number:string phone_code_hash:string = Bool;
-
-messages.readMessageContents#36a73f77 id:Vector<int> = messages.AffectedMessages;
-
-account.checkUsername#2714d86c username:string = Bool;
-account.updateUsername#3e0bdd7c username:string = User;
-
-contacts.search#11f812d8 q:string limit:int = contacts.Found;
-
-account.getPrivacy#dadbc950 key:InputPrivacyKey = account.PrivacyRules;
-account.setPrivacy#c9f81ce8 key:InputPrivacyKey rules:Vector<InputPrivacyRule> = account.PrivacyRules;
-account.deleteAccount#418d4e0b reason:string = Bool;
-account.getAccountTTL#8fc711d = AccountDaysTTL;
-account.setAccountTTL#2442485e ttl:AccountDaysTTL = Bool;
-
-invokeWithLayer#da9b0d0d {X:Type} layer:int query:!X = X;
-
-contacts.resolveUsername#bf0131c username:string = User;
-
-account.sendChangePhoneCode#a407a8f4 phone_number:string = account.SentChangePhoneCode;
-account.changePhone#70c32edb phone_number:string phone_code_hash:string phone_code:string = User;
-
-messages.getStickers#ae22e045 emoticon:string hash:string = messages.Stickers;
-messages.getAllStickers#aa3bc868 hash:string = messages.AllStickers;
-
-account.updateDeviceLocked#38df3532 period:int = Bool;
-
-messages.getWebPagePreview#25223e24 message:string = MessageMedia;
-
-account.getAuthorizations#e320c158 = account.Authorizations;
-account.resetAuthorization#df77f3bc hash:long = Bool;
-account.getPassword#548a30f5 = account.Password;
-account.getPasswordSettings#bc8d11bb current_password_hash:bytes = account.PasswordSettings;
-account.updatePasswordSettings#fa7c4b86 current_password_hash:bytes new_settings:account.PasswordInputSettings = Bool;
-
-auth.checkPassword#a63011e password_hash:bytes = auth.Authorization;
-auth.requestPasswordRecovery#d897bc66 = auth.PasswordRecovery;
-auth.recoverPassword#4ea56e92 code:string = auth.Authorization;
diff --git a/protocols/Telegram/docs/tgl/scheme28.tl b/protocols/Telegram/docs/tgl/scheme28.tl
deleted file mode 100644
index 302731ef77..0000000000
--- a/protocols/Telegram/docs/tgl/scheme28.tl
+++ /dev/null
@@ -1,641 +0,0 @@
-int ?= Int;
-long ?= Long;
-double ?= Double;
-string ?= String;
-
-bytes string = Bytes;
-
-int128 long long = Int128;
-int256 long long long long = Int256;
-
-boolFalse#bc799737 = Bool;
-boolTrue#997275b5 = Bool;
-
-vector#1cb5c415 {t:Type} # [ t ] = Vector t;
-
-error#c4b9f9bb code:int text:string = Error;
-
-null#56730bcc = Null;
-
-inputPeerEmpty#7f3b18ea = InputPeer;
-inputPeerSelf#7da07ec9 = InputPeer;
-inputPeerContact#1023dbe8 user_id:int = InputPeer;
-inputPeerForeign#9b447325 user_id:int access_hash:long = InputPeer;
-inputPeerChat#179be863 chat_id:int = InputPeer;
-
-inputUserEmpty#b98886cf = InputUser;
-inputUserSelf#f7c1b13f = InputUser;
-inputUserContact#86e94f65 user_id:int = InputUser;
-inputUserForeign#655e74ff user_id:int access_hash:long = InputUser;
-
-inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact;
-
-inputFile#f52ff27f id:long parts:int name:string md5_checksum:string = InputFile;
-
-inputMediaEmpty#9664f57f = InputMedia;
-inputMediaUploadedPhoto#f7aff1c0 file:InputFile caption:string = InputMedia;
-inputMediaPhoto#e9bfb4f3 id:InputPhoto caption:string = InputMedia;
-inputMediaGeoPoint#f9c44144 geo_point:InputGeoPoint = InputMedia;
-inputMediaContact#a6e45987 phone_number:string first_name:string last_name:string = InputMedia;
-inputMediaUploadedVideo#e13fd4bc file:InputFile duration:int w:int h:int caption:string = InputMedia;
-inputMediaUploadedThumbVideo#96fb97dc file:InputFile thumb:InputFile duration:int w:int h:int caption:string = InputMedia;
-inputMediaVideo#936a4ebd video_id:InputVideo caption:string = InputMedia;
-
-inputChatPhotoEmpty#1ca48f57 = InputChatPhoto;
-inputChatUploadedPhoto#94254732 file:InputFile crop:InputPhotoCrop = InputChatPhoto;
-inputChatPhoto#b2e1bf08 id:InputPhoto crop:InputPhotoCrop = InputChatPhoto;
-
-inputGeoPointEmpty#e4c123d6 = InputGeoPoint;
-inputGeoPoint#f3b7acc9 latitude:double longitude:double = InputGeoPoint;
-
-inputPhotoEmpty#1cd7bf0d = InputPhoto;
-inputPhoto#fb95c6c4 id:long access_hash:long = InputPhoto;
-
-inputVideoEmpty#5508ec75 = InputVideo;
-inputVideo#ee579652 id:long access_hash:long = InputVideo;
-
-inputFileLocation#14637196 volume_id:long local_id:int secret:long = InputFileLocation;
-inputVideoFileLocation#3d0364ec id:long access_hash:long = InputFileLocation;
-
-inputPhotoCropAuto#ade6b004 = InputPhotoCrop;
-inputPhotoCrop#d9915325 crop_left:double crop_top:double crop_width:double = InputPhotoCrop;
-
-inputAppEvent#770656a8 time:double type:string peer:long data:string = InputAppEvent;
-
-peerUser#9db1bc6d user_id:int = Peer;
-peerChat#bad0e5bb chat_id:int = Peer;
-
-storage.fileUnknown#aa963b05 = storage.FileType;
-storage.fileJpeg#7efe0e = storage.FileType;
-storage.fileGif#cae1aadf = storage.FileType;
-storage.filePng#a4f63c0 = storage.FileType;
-storage.filePdf#ae1e508d = storage.FileType;
-storage.fileMp3#528a0677 = storage.FileType;
-storage.fileMov#4b09ebbc = storage.FileType;
-storage.filePartial#40bc6f52 = storage.FileType;
-storage.fileMp4#b3cea0e4 = storage.FileType;
-storage.fileWebp#1081464c = storage.FileType;
-
-fileLocationUnavailable#7c596b46 volume_id:long local_id:int secret:long = FileLocation;
-fileLocation#53d69076 dc_id:int volume_id:long local_id:int secret:long = FileLocation;
-
-userEmpty#200250ba id:int = User;
-userSelf#1c60e608 id:int first_name:string last_name:string username:string phone:string photo:UserProfilePhoto status:UserStatus = User;
-userContact#cab35e18 id:int first_name:string last_name:string username:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userRequest#d9ccc4ef id:int first_name:string last_name:string username:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userForeign#75cf7a8 id:int first_name:string last_name:string username:string access_hash:long photo:UserProfilePhoto status:UserStatus = User;
-userDeleted#d6016d7a id:int first_name:string last_name:string username:string = User;
-
-userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
-userProfilePhoto#d559d8c8 photo_id:long photo_small:FileLocation photo_big:FileLocation = UserProfilePhoto;
-
-userStatusEmpty#9d05049 = UserStatus;
-userStatusOnline#edb93949 expires:int = UserStatus;
-userStatusOffline#8c703f was_online:int = UserStatus;
-
-chatEmpty#9ba2d800 id:int = Chat;
-chat#6e9c9bc7 id:int title:string photo:ChatPhoto participants_count:int date:int left:Bool version:int = Chat;
-chatForbidden#fb0ccc41 id:int title:string date:int = Chat;
-
-chatFullL27#630e61be id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings = ChatFull;
-chatFull#cade0791 id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings exported_invite:ExportedChatInvite = ChatFull;
-
-chatParticipant#c8d7493e user_id:int inviter_id:int date:int = ChatParticipant;
-
-chatParticipantsForbidden#fd2bb8a chat_id:int = ChatParticipants;
-chatParticipants#7841b415 chat_id:int admin_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
-
-chatPhotoEmpty#37c1011c = ChatPhoto;
-chatPhoto#6153276a photo_small:FileLocation photo_big:FileLocation = ChatPhoto;
-
-messageEmpty#83e5de54 id:int = Message;
-message#a7ab1991 flags:# id:int from_id:int to_id:Peer fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int date:int message:string media:MessageMedia = Message;
-messageService#1d86f70e flags:int id:int from_id:int to_id:Peer date:int action:MessageAction = Message;
-
-messageMediaEmpty#3ded6320 = MessageMedia;
-messageMediaPhoto#3d8ce53d photo:Photo caption:string = MessageMedia;
-messageMediaVideo#5bcf1675 video:Video caption:string = MessageMedia;
-messageMediaGeo#56e0d474 geo:GeoPoint = MessageMedia;
-messageMediaContact#5e7d2f39 phone_number:string first_name:string last_name:string user_id:int = MessageMedia;
-messageMediaUnsupported#9f84f49e = MessageMedia;
-
-messageActionEmpty#b6aef7b0 = MessageAction;
-messageActionChatCreate#a6638b9a title:string users:Vector<int> = MessageAction;
-messageActionChatEditTitle#b5a1ce5a title:string = MessageAction;
-messageActionChatEditPhoto#7fcb13a8 photo:Photo = MessageAction;
-messageActionChatDeletePhoto#95e3fbef = MessageAction;
-messageActionChatAddUser#5e3cfc4b user_id:int = MessageAction;
-messageActionChatDeleteUser#b2ae9b0c user_id:int = MessageAction;
-
-dialog#c1dd804a peer:Peer top_message:int read_inbox_max_id:int unread_count:int notify_settings:PeerNotifySettings = Dialog;
-
-photoEmpty#2331b22d id:long = Photo;
-photo#c3838076 id:long access_hash:long user_id:int date:int geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-photoL27#22b56751 id:long access_hash:long user_id:int date:int caption:string geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-
-photoSizeEmpty#e17e23c type:string = PhotoSize;
-photoSize#77bfb61b type:string location:FileLocation w:int h:int size:int = PhotoSize;
-photoCachedSize#e9a734fa type:string location:FileLocation w:int h:int bytes:bytes = PhotoSize;
-
-videoEmpty#c10658a8 id:long = Video;
-video#ee9f4a4d id:long access_hash:long user_id:int date:int duration:int size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-videoL27#388fa391 id:long access_hash:long user_id:int date:int caption:string duration:int mime_type:string size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-
-geoPointEmpty#1117dd5f = GeoPoint;
-geoPoint#2049d70c longitude:double latitude:double = GeoPoint;
-
-auth.checkedPhone#811ea28e phone_registered:Bool = auth.CheckedPhone;
-
-auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-auth.authorization#f6b673a4 expires:int user:User = auth.Authorization;
-
-auth.exportedAuthorization#df969c2d id:int bytes:bytes = auth.ExportedAuthorization;
-
-inputNotifyPeer#b8bc5b0c peer:InputPeer = InputNotifyPeer;
-inputNotifyUsers#193b4417 = InputNotifyPeer;
-inputNotifyChats#4a95e84e = InputNotifyPeer;
-inputNotifyAll#a429b886 = InputNotifyPeer;
-
-inputPeerNotifyEventsEmpty#f03064d8 = InputPeerNotifyEvents;
-inputPeerNotifyEventsAll#e86a2c74 = InputPeerNotifyEvents;
-
-inputPeerNotifySettings#46a2ce98 mute_until:int sound:string show_previews:Bool events_mask:int = InputPeerNotifySettings;
-
-peerNotifyEventsEmpty#add53cb3 = PeerNotifyEvents;
-peerNotifyEventsAll#6d1ded88 = PeerNotifyEvents;
-
-peerNotifySettingsEmpty#70a68512 = PeerNotifySettings;
-peerNotifySettings#8d5e11ee mute_until:int sound:string show_previews:Bool events_mask:int = PeerNotifySettings;
-
-wallPaper#ccb03657 id:int title:string sizes:Vector<PhotoSize> color:int = WallPaper;
-
-userFull#771095da user:User link:contacts.Link profile_photo:Photo notify_settings:PeerNotifySettings blocked:Bool real_first_name:string real_last_name:string = UserFull;
-
-contact#f911c994 user_id:int mutual:Bool = Contact;
-
-importedContact#d0028438 user_id:int client_id:long = ImportedContact;
-
-contactBlocked#561bc879 user_id:int date:int = ContactBlocked;
-
-contactSuggested#3de191a1 user_id:int mutual_contacts:int = ContactSuggested;
-
-contactStatus#d3680c61 user_id:int status:UserStatus = ContactStatus;
-
-chatLocated#3631cf4c chat_id:int distance:int = ChatLocated;
-
-contacts.link#3ace484c my_link:ContactLink foreign_link:ContactLink user:User = contacts.Link;
-
-contacts.contactsNotModified#b74ba9d2 = contacts.Contacts;
-contacts.contacts#6f8b8cb2 contacts:Vector<Contact> users:Vector<User> = contacts.Contacts;
-
-contacts.importedContacts#ad524315 imported:Vector<ImportedContact> retry_contacts:Vector<long> users:Vector<User> = contacts.ImportedContacts;
-
-contacts.blocked#1c138d15 blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-contacts.blockedSlice#900802a1 count:int blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-
-contacts.suggested#5649dcc5 results:Vector<ContactSuggested> users:Vector<User> = contacts.Suggested;
-
-messages.dialogs#15ba6c40 dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-messages.dialogsSlice#71e094f3 count:int dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-
-messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-messages.messagesSlice#b446ae3 count:int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-
-messages.messageEmpty#3f4e0648 = messages.Message;
-
-messages.sentMessage#4c3d47f3 id:int date:int media:MessageMedia pts:int pts_count:int = messages.SentMessage;
-
-messages.chats#64ff9fd5 chats:Vector<Chat> = messages.Chats;
-
-messages.chatFull#e5d7d19c full_chat:ChatFull chats:Vector<Chat> users:Vector<User> = messages.ChatFull;
-
-messages.affectedHistory#b45c69d1 pts:int pts_count:int offset:int = messages.AffectedHistory;
-
-inputMessagesFilterEmpty#57e2f66c = MessagesFilter;
-inputMessagesFilterPhotos#9609a51c = MessagesFilter;
-inputMessagesFilterVideo#9fc00e65 = MessagesFilter;
-inputMessagesFilterPhotoVideo#56e9f0e4 = MessagesFilter;
-inputMessagesFilterPhotoVideoDocuments#d95e73bb = MessagesFilter;
-inputMessagesFilterDocument#9eddf188 = MessagesFilter;
-inputMessagesFilterAudio#cfc87522 = MessagesFilter;
-
-updateNewMessage#1f2b0afd message:Message pts:int pts_count:int = Update;
-updateMessageID#4e90bfd6 id:int random_id:long = Update;
-updateDeleteMessages#a20db0e5 messages:Vector<int> pts:int pts_count:int = Update;
-updateUserTyping#5c486927 user_id:int action:SendMessageAction = Update;
-updateChatUserTyping#9a65ea1f chat_id:int user_id:int action:SendMessageAction = Update;
-updateChatParticipants#7761198 participants:ChatParticipants = Update;
-updateUserStatus#1bfbd823 user_id:int status:UserStatus = Update;
-updateUserName#a7332b73 user_id:int first_name:string last_name:string username:string = Update;
-updateUserPhoto#95313b0c user_id:int date:int photo:UserProfilePhoto previous:Bool = Update;
-updateContactRegistered#2575bbb9 user_id:int date:int = Update;
-updateContactLink#9d2e67c5 user_id:int my_link:ContactLink foreign_link:ContactLink = Update;
-updateNewAuthorization#8f06529a auth_key_id:long date:int device:string location:string = Update;
-
-updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
-
-updates.differenceEmpty#5d75a138 date:int seq:int = updates.Difference;
-updates.difference#f49ca0 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> state:updates.State = updates.Difference;
-updates.differenceSlice#a8fb1981 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> intermediate_state:updates.State = updates.Difference;
-
-updatesTooLong#e317af7e = Updates;
-updateShortMessage#ed5c2127 flags:# id:int user_id:int message:string pts:int pts_count:int date:int fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int = Updates;
-updateShortChatMessage#52238b3c flags:# id:int from_id:int chat_id:int message:string pts:int pts_count:int date:int fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int = Updates;
-updateShort#78d4dec1 update:Update date:int = Updates;
-updatesCombined#725b04c3 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq_start:int seq:int = Updates;
-updates#74ae4240 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq:int = Updates;
-
-photos.photos#8dca6aa5 photos:Vector<Photo> users:Vector<User> = photos.Photos;
-photos.photosSlice#15051f54 count:int photos:Vector<Photo> users:Vector<User> = photos.Photos;
-
-photos.photo#20212ca8 photo:Photo users:Vector<User> = photos.Photo;
-
-upload.file#96a18d5 type:storage.FileType mtime:int bytes:bytes = upload.File;
-
-dcOption#2ec2a43c id:int hostname:string ip_address:string port:int = DcOption;
-
-config#4e32b894 date:int expires:int test_mode:Bool this_dc:int dc_options:Vector<DcOption> chat_size_max:int broadcast_size_max:int forwarded_count_max:int online_update_period_ms:int offline_blur_timeout_ms:int offline_idle_timeout_ms:int online_cloud_timeout_ms:int notify_cloud_delay_ms:int notify_default_delay_ms:int chat_big_size:int push_chat_period_ms:int push_chat_limit:int disabled_features:Vector<DisabledFeature> = Config;
-
-nearestDc#8e1a1775 country:string this_dc:int nearest_dc:int = NearestDc;
-
-help.appUpdate#8987f311 id:int critical:Bool url:string text:string = help.AppUpdate;
-help.noAppUpdate#c45a6536 = help.AppUpdate;
-
-help.inviteText#18cb9f78 message:string = help.InviteText;
-
-messages.sentMessageLink#35a1a663 id:int date:int media:MessageMedia pts:int pts_count:int links:Vector<contacts.Link> seq:int = messages.SentMessage;
-
-inputGeoChat#74d456fa chat_id:int access_hash:long = InputGeoChat;
-
-inputNotifyGeoChatPeer#4d8ddec8 geo_peer:InputGeoChat = InputNotifyPeer;
-
-geoChat#75eaea5a id:int access_hash:long title:string address:string venue:string geo:GeoPoint photo:ChatPhoto participants_count:int date:int checked_in:Bool version:int = Chat;
-
-geoChatMessageEmpty#60311a9b chat_id:int id:int = GeoChatMessage;
-geoChatMessage#4505f8e1 chat_id:int id:int from_id:int date:int message:string media:MessageMedia = GeoChatMessage;
-geoChatMessageService#d34fa24e chat_id:int id:int from_id:int date:int action:MessageAction = GeoChatMessage;
-
-geochats.statedMessage#17b1578b message:GeoChatMessage chats:Vector<Chat> users:Vector<User> seq:int = geochats.StatedMessage;
-
-geochats.located#48feb267 results:Vector<ChatLocated> messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Located;
-
-geochats.messages#d1526db1 messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-geochats.messagesSlice#bc5863e8 count:int messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-
-messageActionGeoChatCreate#6f038ebc title:string address:string = MessageAction;
-messageActionGeoChatCheckin#c7d53de = MessageAction;
-
-updateNewGeoChatMessage#5a68e3f7 geo_message:GeoChatMessage = Update;
-
-wallPaperSolid#63117f24 id:int title:string bg_color:int color:int = WallPaper;
-
-updateNewEncryptedMessage#12bcbd9a encr_message:EncryptedMessage qts:int = Update;
-updateEncryptedChatTyping#1710f156 chat_id:int = Update;
-updateEncryption#b4a2e88d encr_chat:EncryptedChat date:int = Update;
-updateEncryptedMessagesRead#38fe25b7 chat_id:int max_date:int date:int = Update;
-
-encryptedChatEmpty#ab7ec0a0 id:int = EncryptedChat;
-encryptedChatWaiting#3bf703dc id:int access_hash:long date:int admin_id:int participant_id:int = EncryptedChat;
-encryptedChatRequested#c878527e id:int access_hash:long date:int admin_id:int participant_id:int g_a:bytes = EncryptedChat;
-encryptedChat#fa56ce36 id:int access_hash:long date:int admin_id:int participant_id:int g_a_or_b:bytes key_fingerprint:long = EncryptedChat;
-encryptedChatDiscarded#13d6dd27 id:int = EncryptedChat;
-
-inputEncryptedChat#f141b5e1 chat_id:int access_hash:long = InputEncryptedChat;
-
-encryptedFileEmpty#c21f497e = EncryptedFile;
-encryptedFile#4a70994c id:long access_hash:long size:int dc_id:int key_fingerprint:int = EncryptedFile;
-
-inputEncryptedFileEmpty#1837c364 = InputEncryptedFile;
-inputEncryptedFileUploaded#64bd0306 id:long parts:int md5_checksum:string key_fingerprint:int = InputEncryptedFile;
-inputEncryptedFile#5a17b5e5 id:long access_hash:long = InputEncryptedFile;
-
-inputEncryptedFileLocation#f5235d55 id:long access_hash:long = InputFileLocation;
-
-encryptedMessage#ed18c118 random_id:long chat_id:int date:int bytes:bytes file:EncryptedFile = EncryptedMessage;
-encryptedMessageService#23734b06 random_id:long chat_id:int date:int bytes:bytes = EncryptedMessage;
-
-messages.dhConfigNotModified#c0e24635 random:bytes = messages.DhConfig;
-messages.dhConfig#2c221edd g:int p:bytes version:int random:bytes = messages.DhConfig;
-
-messages.sentEncryptedMessage#560f8935 date:int = messages.SentEncryptedMessage;
-messages.sentEncryptedFile#9493ff32 date:int file:EncryptedFile = messages.SentEncryptedMessage;
-
-inputFileBig#fa4f0bb5 id:long parts:int name:string = InputFile;
-
-inputEncryptedFileBigUploaded#2dc173c8 id:long parts:int key_fingerprint:int = InputEncryptedFile;
-
-updateChatParticipantAdd#3a0eeb22 chat_id:int user_id:int inviter_id:int version:int = Update;
-updateChatParticipantDelete#6e5f8c22 chat_id:int user_id:int version:int = Update;
-updateDcOptions#8e5e9873 dc_options:Vector<DcOption> = Update;
-
-inputMediaUploadedAudio#4e498cab file:InputFile duration:int mime_type:string = InputMedia;
-inputMediaAudio#89938781 audio_id:InputAudio = InputMedia;
-inputMediaUploadedDocument#ffe76b78 file:InputFile mime_type:string attributes:Vector<DocumentAttribute> = InputMedia;
-inputMediaUploadedThumbDocument#41481486 file:InputFile thumb:InputFile mime_type:string attributes:Vector<DocumentAttribute> = InputMedia;
-inputMediaDocument#d184e841 document_id:InputDocument = InputMedia;
-
-messageMediaDocument#2fda2204 document:Document = MessageMedia;
-messageMediaAudio#c6b68300 audio:Audio = MessageMedia;
-
-inputAudioEmpty#d95adc84 = InputAudio;
-inputAudio#77d440ff id:long access_hash:long = InputAudio;
-
-inputDocumentEmpty#72f0eaae = InputDocument;
-inputDocument#18798952 id:long access_hash:long = InputDocument;
-
-inputAudioFileLocation#74dc404d id:long access_hash:long = InputFileLocation;
-inputDocumentFileLocation#4e45abe9 id:long access_hash:long = InputFileLocation;
-
-audioEmpty#586988d8 id:long = Audio;
-audio#c7ac6496 id:long access_hash:long user_id:int date:int duration:int mime_type:string size:int dc_id:int = Audio;
-
-documentEmpty#36f8c871 id:long = Document;
-document#f9a39f4f id:long access_hash:long date:int mime_type:string size:int thumb:PhotoSize dc_id:int attributes:Vector<DocumentAttribute> = Document;
-document_l19#9efc6326 id:long access_hash:long user_id:int date:int file_name:string mime_type:string size:int thumb:PhotoSize dc_id:int = Document;
-
-help.support#17c6b5f6 phone_number:string user:User = help.Support;
-
-notifyPeer#9fd40bd8 peer:Peer = NotifyPeer;
-notifyUsers#b4c83b4c = NotifyPeer;
-notifyChats#c007cec3 = NotifyPeer;
-notifyAll#74d07c60 = NotifyPeer;
-
-updateUserBlocked#80ece81a user_id:int blocked:Bool = Update;
-updateNotifySettings#bec268ef notify_peer:NotifyPeer notify_settings:PeerNotifySettings = Update;
-
-auth.sentAppCode#e325edcf phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-sendMessageTypingAction#16bf744e = SendMessageAction;
-sendMessageCancelAction#fd5ec8f5 = SendMessageAction;
-sendMessageRecordVideoAction#a187d66f = SendMessageAction;
-sendMessageUploadVideoActionL27#92042ff7 = SendMessageAction;
-sendMessageUploadVideoAction#e9763aec progress:int = SendMessageAction;
-sendMessageRecordAudioAction#d52f73f7 = SendMessageAction;
-sendMessageUploadAudioActionL27#e6ac8a6f = SendMessageAction;
-sendMessageUploadAudioAction#f351d7ab progress:int = SendMessageAction;
-sendMessageUploadPhotoAction#d1d34a26 progress:int = SendMessageAction;
-sendMessageUploadDocumentActionL27#8faee98e = SendMessageAction;
-sendMessageUploadDocumentAction#aa0cd9e4 progress:int = SendMessageAction;
-sendMessageGeoLocationAction#176f8ba1 = SendMessageAction;
-sendMessageChooseContactAction#628cbc6f = SendMessageAction;
-
-contactFound#ea879f95 user_id:int = ContactFound;
-
-contacts.found#566000e results:Vector<ContactFound> users:Vector<User> = contacts.Found;
-
-updateServiceNotification#382dd3e4 type:string message_text:string media:MessageMedia popup:Bool = Update;
-
-userStatusRecently#e26f42f1 = UserStatus;
-userStatusLastWeek#7bf09fc = UserStatus;
-userStatusLastMonth#77ebc742 = UserStatus;
-
-updatePrivacy#ee3b272a key:PrivacyKey rules:Vector<PrivacyRule> = Update;
-
-inputPrivacyKeyStatusTimestamp#4f96cb18 = InputPrivacyKey;
-
-privacyKeyStatusTimestamp#bc2eab30 = PrivacyKey;
-
-inputPrivacyValueAllowContacts#d09e07b = InputPrivacyRule;
-inputPrivacyValueAllowAll#184b35ce = InputPrivacyRule;
-inputPrivacyValueAllowUsers#131cc67f users:Vector<InputUser> = InputPrivacyRule;
-inputPrivacyValueDisallowContacts#ba52007 = InputPrivacyRule;
-inputPrivacyValueDisallowAll#d66b66c9 = InputPrivacyRule;
-inputPrivacyValueDisallowUsers#90110467 users:Vector<InputUser> = InputPrivacyRule;
-
-privacyValueAllowContacts#fffe1bac = PrivacyRule;
-privacyValueAllowAll#65427b82 = PrivacyRule;
-privacyValueAllowUsers#4d5bbe0c users:Vector<int> = PrivacyRule;
-privacyValueDisallowContacts#f888fa1a = PrivacyRule;
-privacyValueDisallowAll#8b73e763 = PrivacyRule;
-privacyValueDisallowUsers#c7f49b7 users:Vector<int> = PrivacyRule;
-
-account.privacyRules#554abb6f rules:Vector<PrivacyRule> users:Vector<User> = account.PrivacyRules;
-
-accountDaysTTL#b8d0afdf days:int = AccountDaysTTL;
-
-account.sentChangePhoneCode#a4f58c4c phone_code_hash:string send_call_timeout:int = account.SentChangePhoneCode;
-
-updateUserPhone#12b9417b user_id:int phone:string = Update;
-
-documentAttributeImageSize#6c37c15c w:int h:int = DocumentAttribute;
-documentAttributeAnimated#11b58939 = DocumentAttribute;
-documentAttributeSticker#994c9882 alt:string = DocumentAttribute;
-documentAttributeVideo#5910cccb duration:int w:int h:int = DocumentAttribute;
-documentAttributeAudio#51448e5 duration:int = DocumentAttribute;
-documentAttributeFilename#15590068 file_name:string = DocumentAttribute;
-
-messages.stickersNotModified#f1749a22 = messages.Stickers;
-messages.stickers#8a8ecd32 hash:string stickers:Vector<Document> = messages.Stickers;
-
-stickerPack#12b299d4 emoticon:string documents:Vector<long> = StickerPack;
-
-messages.allStickersNotModified#e86602c3 = messages.AllStickers;
-messages.allStickers#dcef3102 hash:string packs:Vector<StickerPack> documents:Vector<Document> = messages.AllStickers;
-
-disabledFeature#ae636f24 feature:string description:string = DisabledFeature;
-
-updateReadHistoryInbox#9961fd5c peer:Peer max_id:int pts:int pts_count:int = Update;
-updateReadHistoryOutbox#2f2f21bf peer:Peer max_id:int pts:int pts_count:int = Update;
-
-messages.affectedMessages#84d19185 pts:int pts_count:int = messages.AffectedMessages;
-
-contactLinkUnknown#5f4f9247 = ContactLink;
-contactLinkNone#feedd3ad = ContactLink;
-contactLinkHasPhone#268f3f59 = ContactLink;
-contactLinkContact#d502c2d0 = ContactLink;
-
-updateWebPage#2cc36971 webpage:WebPage = Update;
-
-webPageEmpty#eb1477e8 id:long = WebPage;
-webPagePending#c586da1c id:long date:int = WebPage;
-webPage#a31ea0b5 flags:# id:long url:string display_url:string type:flags.0?string site_name:flags.1?string title:flags.2?string description:flags.3?string photo:flags.4?Photo embed_url:flags.5?string embed_type:flags.5?string embed_width:flags.6?int embed_height:flags.6?int duration:flags.7?int author:flags.8?string = WebPage;
-
-messageMediaWebPage#a32dd600 webpage:WebPage = MessageMedia;
-
-authorization#7bf2e6f6 hash:long flags:int device_model:string platform:string system_version:string api_id:int app_name:string app_version:string date_created:int date_active:int ip:string country:string region:string = Authorization;
-
-account.authorizations#1250abde authorizations:Vector<Authorization> = account.Authorizations;
-
-account.noPassword#96dabc18 new_salt:bytes email_unconfirmed_pattern:string = account.Password;
-account.password#7c18141c current_salt:bytes new_salt:bytes hint:string has_recovery:Bool email_unconfirmed_pattern:string = account.Password;
-
-account.passwordSettings#b7b72ab3 email:string = account.PasswordSettings;
-
-account.passwordInputSettings#bcfc532c flags:# new_salt:flags.0?bytes new_password_hash:flags.0?bytes hint:flags.0?string email:flags.1?string = account.PasswordInputSettings;
-
-auth.passwordRecovery#137948a5 email_pattern:string = auth.PasswordRecovery;
-
-inputMediaVenue#2827a81a geo_point:InputGeoPoint title:string address:string provider:string venue_id:string = InputMedia;
-
-messageMediaVenue#7912b71f geo:GeoPoint title:string address:string provider:string venue_id:string = MessageMedia;
-
-receivedNotifyMessage#a384b779 id:int flags:int = ReceivedNotifyMessage;
-
-chatInviteEmpty#69df3769 = ExportedChatInvite;
-chatInviteExported#fc2e05bc link:string = ExportedChatInvite;
-
-chatInviteAlready#5a686d7c chat:Chat = ChatInvite;
-chatInvite#ce917dcd title:string = ChatInvite;
-
-messageActionChatJoinedByLink#f89cf5e8 inviter_id:int = MessageAction;
-
-updateReadMessagesContents#68c13933 messages:Vector<int> pts:int pts_count:int = Update;
-
----functions---
-
-invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
-
-invokeAfterMsgs#3dc4b4f0 {X:Type} msg_ids:Vector<long> query:!X = X;
-
-auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone;
-auth.sendCode#768d5f4d phone_number:string sms_type:int api_id:int api_hash:string lang_code:string = auth.SentCode;
-auth.sendCall#3c51564 phone_number:string phone_code_hash:string = Bool;
-auth.signUp#1b067634 phone_number:string phone_code_hash:string phone_code:string first_name:string last_name:string = auth.Authorization;
-auth.signIn#bcd51581 phone_number:string phone_code_hash:string phone_code:string = auth.Authorization;
-auth.logOut#5717da40 = Bool;
-auth.resetAuthorizations#9fab0d1a = Bool;
-auth.sendInvites#771c1d97 phone_numbers:Vector<string> message:string = Bool;
-auth.exportAuthorization#e5bfffcd dc_id:int = auth.ExportedAuthorization;
-auth.importAuthorization#e3ef9613 id:int bytes:bytes = auth.Authorization;
-auth.bindTempAuthKey#cdd42a05 perm_auth_key_id:long nonce:long expires_at:int encrypted_message:bytes = Bool;
-
-account.registerDevice#446c712c token_type:int token:string device_model:string system_version:string app_version:string app_sandbox:Bool lang_code:string = Bool;
-account.unregisterDevice#65c55b40 token_type:int token:string = Bool;
-account.updateNotifySettings#84be5b93 peer:InputNotifyPeer settings:InputPeerNotifySettings = Bool;
-account.getNotifySettings#12b3ad31 peer:InputNotifyPeer = PeerNotifySettings;
-account.resetNotifySettings#db7e1747 = Bool;
-account.updateProfile#f0888d68 first_name:string last_name:string = User;
-account.updateStatus#6628562c offline:Bool = Bool;
-account.getWallPapers#c04cfac2 = Vector<WallPaper>;
-
-users.getUsers#d91a548 id:Vector<InputUser> = Vector<User>;
-users.getFullUser#ca30a5b1 id:InputUser = UserFull;
-
-contacts.getStatuses#c4a353ee = Vector<ContactStatus>;
-contacts.getContacts#22c6aa08 hash:string = contacts.Contacts;
-contacts.importContacts#da30b32d contacts:Vector<InputContact> replace:Bool = contacts.ImportedContacts;
-contacts.getSuggested#cd773428 limit:int = contacts.Suggested;
-contacts.deleteContact#8e953744 id:InputUser = contacts.Link;
-contacts.deleteContacts#59ab389e id:Vector<InputUser> = Bool;
-contacts.block#332b49fc id:InputUser = Bool;
-contacts.unblock#e54100bd id:InputUser = Bool;
-contacts.getBlocked#f57c350f offset:int limit:int = contacts.Blocked;
-contacts.exportCard#84e53737 = Vector<int>;
-contacts.importCard#4fe196fe export_card:Vector<int> = User;
-
-messages.getMessages#4222fa74 id:Vector<int> = messages.Messages;
-messages.getDialogs#eccf1df6 offset:int max_id:int limit:int = messages.Dialogs;
-messages.getHistory#92a1df2f peer:InputPeer offset:int max_id:int limit:int = messages.Messages;
-messages.search#7e9f2ab peer:InputPeer q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = messages.Messages;
-messages.readHistory#b04f2510 peer:InputPeer max_id:int offset:int = messages.AffectedHistory;
-messages.deleteHistory#f4f8fb61 peer:InputPeer offset:int = messages.AffectedHistory;
-messages.deleteMessages#a5f18925 id:Vector<int> = messages.AffectedMessages;
-messages.receivedMessages#5a954c0 max_id:int = Vector<ReceivedNotifyMessage>;
-messages.setTyping#a3825e50 peer:InputPeer action:SendMessageAction = Bool;
-messages.sendMessage#9add8f26 flags:# peer:InputPeer reply_to_msg_id:flags.0?int message:string random_id:long = messages.SentMessage;
-messages.sendMedia#2d7923b1 flags:# peer:InputPeer reply_to_msg_id:flags.0?int media:InputMedia random_id:long = Updates;
-messages.forwardMessages#55e1728d peer:InputPeer id:Vector<int> random_id:Vector<long> = Updates;
-messages.getChats#3c6aa187 id:Vector<int> = messages.Chats;
-messages.getFullChat#3b831c66 chat_id:int = messages.ChatFull;
-messages.editChatTitle#dc452855 chat_id:int title:string = Updates;
-messages.editChatPhoto#ca4c79d8 chat_id:int photo:InputChatPhoto = Updates;
-messages.addChatUser#f9a0aa09 chat_id:int user_id:InputUser fwd_limit:int = Updates;
-messages.deleteChatUser#e0611f16 chat_id:int user_id:InputUser = Updates;
-messages.createChat#9cb126e users:Vector<InputUser> title:string = Updates;
-
-updates.getState#edd4882a = updates.State;
-updates.getDifference#a041495 pts:int date:int qts:int = updates.Difference;
-
-photos.updateProfilePhoto#eef579a0 id:InputPhoto crop:InputPhotoCrop = UserProfilePhoto;
-photos.uploadProfilePhoto#d50f9c88 file:InputFile caption:string geo_point:InputGeoPoint crop:InputPhotoCrop = photos.Photo;
-photos.deletePhotos#87cf7f2f id:Vector<InputPhoto> = Vector<long>;
-
-upload.saveFilePart#b304a621 file_id:long file_part:int bytes:bytes = Bool;
-upload.getFile#e3a6cfb5 location:InputFileLocation offset:int limit:int = upload.File;
-
-help.getConfig#c4f9186b = Config;
-help.getNearestDc#1fb33026 = NearestDc;
-help.getAppUpdate#c812ac7e device_model:string system_version:string app_version:string lang_code:string = help.AppUpdate;
-help.saveAppLog#6f02f748 events:Vector<InputAppEvent> = Bool;
-help.getInviteText#a4a95186 lang_code:string = help.InviteText;
-
-photos.getUserPhotos#b7ee553c user_id:InputUser offset:int max_id:int limit:int = photos.Photos;
-
-messages.forwardMessage#33963bf9 peer:InputPeer id:int random_id:long = Updates;
-messages.sendBroadcast#bf73f4da contacts:Vector<InputUser> random_id:Vector<long> message:string media:InputMedia = Updates;
-
-geochats.getLocated#7f192d8f geo_point:InputGeoPoint radius:int limit:int = geochats.Located;
-geochats.getRecents#e1427e6f offset:int limit:int = geochats.Messages;
-geochats.checkin#55b3e8fb peer:InputGeoChat = geochats.StatedMessage;
-geochats.getFullChat#6722dd6f peer:InputGeoChat = messages.ChatFull;
-geochats.editChatTitle#4c8e2273 peer:InputGeoChat title:string address:string = geochats.StatedMessage;
-geochats.editChatPhoto#35d81a95 peer:InputGeoChat photo:InputChatPhoto = geochats.StatedMessage;
-geochats.search#cfcdc44d peer:InputGeoChat q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = geochats.Messages;
-geochats.getHistory#b53f7a68 peer:InputGeoChat offset:int max_id:int limit:int = geochats.Messages;
-geochats.setTyping#8b8a729 peer:InputGeoChat typing:Bool = Bool;
-geochats.sendMessage#61b0044 peer:InputGeoChat message:string random_id:long = geochats.StatedMessage;
-geochats.sendMedia#b8f0deff peer:InputGeoChat media:InputMedia random_id:long = geochats.StatedMessage;
-geochats.createGeoChat#e092e16 title:string geo_point:InputGeoPoint address:string venue:string = geochats.StatedMessage;
-
-messages.getDhConfig#26cf8950 version:int random_length:int = messages.DhConfig;
-messages.requestEncryption#f64daf43 user_id:InputUser random_id:int g_a:bytes = EncryptedChat;
-messages.acceptEncryption#3dbc0415 peer:InputEncryptedChat g_b:bytes key_fingerprint:long = EncryptedChat;
-messages.discardEncryption#edd923c5 chat_id:int = Bool;
-messages.setEncryptedTyping#791451ed peer:InputEncryptedChat typing:Bool = Bool;
-messages.readEncryptedHistory#7f4b690a peer:InputEncryptedChat max_date:int = Bool;
-messages.sendEncrypted#a9776773 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.sendEncryptedFile#9a901b66 peer:InputEncryptedChat random_id:long data:bytes file:InputEncryptedFile = messages.SentEncryptedMessage;
-messages.sendEncryptedService#32d439a4 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.receivedQueue#55a5bb66 max_qts:int = Vector<long>;
-
-upload.saveBigFilePart#de7b673d file_id:long file_part:int file_total_parts:int bytes:bytes = Bool;
-
-initConnection#69796de9 {X:Type} api_id:int device_model:string system_version:string app_version:string lang_code:string query:!X = X;
-
-help.getSupport#9cdf08cd = help.Support;
-
-auth.sendSms#da9f3e8 phone_number:string phone_code_hash:string = Bool;
-
-messages.readMessageContents#36a73f77 id:Vector<int> = messages.AffectedMessages;
-
-account.checkUsername#2714d86c username:string = Bool;
-account.updateUsername#3e0bdd7c username:string = User;
-
-contacts.search#11f812d8 q:string limit:int = contacts.Found;
-
-account.getPrivacy#dadbc950 key:InputPrivacyKey = account.PrivacyRules;
-account.setPrivacy#c9f81ce8 key:InputPrivacyKey rules:Vector<InputPrivacyRule> = account.PrivacyRules;
-account.deleteAccount#418d4e0b reason:string = Bool;
-account.getAccountTTL#8fc711d = AccountDaysTTL;
-account.setAccountTTL#2442485e ttl:AccountDaysTTL = Bool;
-
-invokeWithLayer#da9b0d0d {X:Type} layer:int query:!X = X;
-
-contacts.resolveUsername#bf0131c username:string = User;
-
-account.sendChangePhoneCode#a407a8f4 phone_number:string = account.SentChangePhoneCode;
-account.changePhone#70c32edb phone_number:string phone_code_hash:string phone_code:string = User;
-
-messages.getStickers#ae22e045 emoticon:string hash:string = messages.Stickers;
-messages.getAllStickers#aa3bc868 hash:string = messages.AllStickers;
-
-account.updateDeviceLocked#38df3532 period:int = Bool;
-
-messages.getWebPagePreview#25223e24 message:string = MessageMedia;
-
-account.getAuthorizations#e320c158 = account.Authorizations;
-account.resetAuthorization#df77f3bc hash:long = Bool;
-account.getPassword#548a30f5 = account.Password;
-account.getPasswordSettings#bc8d11bb current_password_hash:bytes = account.PasswordSettings;
-account.updatePasswordSettings#fa7c4b86 current_password_hash:bytes new_settings:account.PasswordInputSettings = Bool;
-
-auth.checkPassword#a63011e password_hash:bytes = auth.Authorization;
-auth.requestPasswordRecovery#d897bc66 = auth.PasswordRecovery;
-auth.recoverPassword#4ea56e92 code:string = auth.Authorization;
-
-invokeWithoutUpdates#bf9459b7 {X:Type} query:!X = X;
-
-messages.exportChatInvite#7d885289 chat_id:int = ExportedChatInvite;
-messages.checkChatInvite#3eadb1bb hash:string = ChatInvite;
-messages.importChatInvite#6c50051c hash:string = Updates;
diff --git a/protocols/Telegram/docs/tgl/scheme30.tl b/protocols/Telegram/docs/tgl/scheme30.tl
deleted file mode 100644
index d6c9b7cf87..0000000000
--- a/protocols/Telegram/docs/tgl/scheme30.tl
+++ /dev/null
@@ -1,656 +0,0 @@
-int ?= Int;
-long ?= Long;
-double ?= Double;
-string ?= String;
-
-bytes string = Bytes;
-
-int128 long long = Int128;
-int256 long long long long = Int256;
-
-boolFalse#bc799737 = Bool;
-boolTrue#997275b5 = Bool;
-
-vector#1cb5c415 {t:Type} # [ t ] = Vector t;
-
-error#c4b9f9bb code:int text:string = Error;
-
-null#56730bcc = Null;
-
-inputPeerEmpty#7f3b18ea = InputPeer;
-inputPeerSelf#7da07ec9 = InputPeer;
-inputPeerContact#1023dbe8 user_id:int = InputPeer;
-inputPeerForeign#9b447325 user_id:int access_hash:long = InputPeer;
-inputPeerChat#179be863 chat_id:int = InputPeer;
-
-inputUserEmpty#b98886cf = InputUser;
-inputUserSelf#f7c1b13f = InputUser;
-inputUserContact#86e94f65 user_id:int = InputUser;
-inputUserForeign#655e74ff user_id:int access_hash:long = InputUser;
-
-inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact;
-
-inputFile#f52ff27f id:long parts:int name:string md5_checksum:string = InputFile;
-
-inputMediaEmpty#9664f57f = InputMedia;
-inputMediaUploadedPhoto#f7aff1c0 file:InputFile caption:string = InputMedia;
-inputMediaPhoto#e9bfb4f3 id:InputPhoto caption:string = InputMedia;
-inputMediaGeoPoint#f9c44144 geo_point:InputGeoPoint = InputMedia;
-inputMediaContact#a6e45987 phone_number:string first_name:string last_name:string = InputMedia;
-inputMediaUploadedVideo#e13fd4bc file:InputFile duration:int w:int h:int caption:string = InputMedia;
-inputMediaUploadedThumbVideo#96fb97dc file:InputFile thumb:InputFile duration:int w:int h:int caption:string = InputMedia;
-inputMediaVideo#936a4ebd video_id:InputVideo caption:string = InputMedia;
-
-inputChatPhotoEmpty#1ca48f57 = InputChatPhoto;
-inputChatUploadedPhoto#94254732 file:InputFile crop:InputPhotoCrop = InputChatPhoto;
-inputChatPhoto#b2e1bf08 id:InputPhoto crop:InputPhotoCrop = InputChatPhoto;
-
-inputGeoPointEmpty#e4c123d6 = InputGeoPoint;
-inputGeoPoint#f3b7acc9 latitude:double longitude:double = InputGeoPoint;
-
-inputPhotoEmpty#1cd7bf0d = InputPhoto;
-inputPhoto#fb95c6c4 id:long access_hash:long = InputPhoto;
-
-inputVideoEmpty#5508ec75 = InputVideo;
-inputVideo#ee579652 id:long access_hash:long = InputVideo;
-
-inputFileLocation#14637196 volume_id:long local_id:int secret:long = InputFileLocation;
-inputVideoFileLocation#3d0364ec id:long access_hash:long = InputFileLocation;
-
-inputPhotoCropAuto#ade6b004 = InputPhotoCrop;
-inputPhotoCrop#d9915325 crop_left:double crop_top:double crop_width:double = InputPhotoCrop;
-
-inputAppEvent#770656a8 time:double type:string peer:long data:string = InputAppEvent;
-
-peerUser#9db1bc6d user_id:int = Peer;
-peerChat#bad0e5bb chat_id:int = Peer;
-
-storage.fileUnknown#aa963b05 = storage.FileType;
-storage.fileJpeg#7efe0e = storage.FileType;
-storage.fileGif#cae1aadf = storage.FileType;
-storage.filePng#a4f63c0 = storage.FileType;
-storage.filePdf#ae1e508d = storage.FileType;
-storage.fileMp3#528a0677 = storage.FileType;
-storage.fileMov#4b09ebbc = storage.FileType;
-storage.filePartial#40bc6f52 = storage.FileType;
-storage.fileMp4#b3cea0e4 = storage.FileType;
-storage.fileWebp#1081464c = storage.FileType;
-
-fileLocationUnavailable#7c596b46 volume_id:long local_id:int secret:long = FileLocation;
-fileLocation#53d69076 dc_id:int volume_id:long local_id:int secret:long = FileLocation;
-
-userEmpty#200250ba id:int = User;
-userSelf#1c60e608 id:int first_name:string last_name:string username:string phone:string photo:UserProfilePhoto status:UserStatus = User;
-userContact#cab35e18 id:int first_name:string last_name:string username:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userRequest#d9ccc4ef id:int first_name:string last_name:string username:string access_hash:long phone:string photo:UserProfilePhoto status:UserStatus = User;
-userForeign#75cf7a8 id:int first_name:string last_name:string username:string access_hash:long photo:UserProfilePhoto status:UserStatus = User;
-userDeleted#d6016d7a id:int first_name:string last_name:string username:string = User;
-
-userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
-userProfilePhoto#d559d8c8 photo_id:long photo_small:FileLocation photo_big:FileLocation = UserProfilePhoto;
-
-userStatusEmpty#9d05049 = UserStatus;
-userStatusOnline#edb93949 expires:int = UserStatus;
-userStatusOffline#8c703f was_online:int = UserStatus;
-
-chatEmpty#9ba2d800 id:int = Chat;
-chat#6e9c9bc7 id:int title:string photo:ChatPhoto participants_count:int date:int left:Bool version:int = Chat;
-chatForbidden#fb0ccc41 id:int title:string date:int = Chat;
-
-chatFullL27#630e61be id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings = ChatFull;
-chatFull#cade0791 id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings exported_invite:ExportedChatInvite = ChatFull;
-
-chatParticipant#c8d7493e user_id:int inviter_id:int date:int = ChatParticipant;
-
-chatParticipantsForbidden#fd2bb8a chat_id:int = ChatParticipants;
-chatParticipants#7841b415 chat_id:int admin_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
-
-chatPhotoEmpty#37c1011c = ChatPhoto;
-chatPhoto#6153276a photo_small:FileLocation photo_big:FileLocation = ChatPhoto;
-
-messageEmpty#83e5de54 id:int = Message;
-message#a7ab1991 flags:# id:int from_id:int to_id:Peer fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int date:int message:string media:MessageMedia = Message;
-messageService#1d86f70e flags:int id:int from_id:int to_id:Peer date:int action:MessageAction = Message;
-
-messageMediaEmpty#3ded6320 = MessageMedia;
-messageMediaPhoto#3d8ce53d photo:Photo caption:string = MessageMedia;
-messageMediaVideo#5bcf1675 video:Video caption:string = MessageMedia;
-messageMediaGeo#56e0d474 geo:GeoPoint = MessageMedia;
-messageMediaContact#5e7d2f39 phone_number:string first_name:string last_name:string user_id:int = MessageMedia;
-messageMediaUnsupported#9f84f49e = MessageMedia;
-
-messageActionEmpty#b6aef7b0 = MessageAction;
-messageActionChatCreate#a6638b9a title:string users:Vector<int> = MessageAction;
-messageActionChatEditTitle#b5a1ce5a title:string = MessageAction;
-messageActionChatEditPhoto#7fcb13a8 photo:Photo = MessageAction;
-messageActionChatDeletePhoto#95e3fbef = MessageAction;
-messageActionChatAddUser#5e3cfc4b user_id:int = MessageAction;
-messageActionChatDeleteUser#b2ae9b0c user_id:int = MessageAction;
-
-dialog#c1dd804a peer:Peer top_message:int read_inbox_max_id:int unread_count:int notify_settings:PeerNotifySettings = Dialog;
-
-photoEmpty#2331b22d id:long = Photo;
-photo#c3838076 id:long access_hash:long user_id:int date:int geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-photoL27#22b56751 id:long access_hash:long user_id:int date:int caption:string geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-
-photoSizeEmpty#e17e23c type:string = PhotoSize;
-photoSize#77bfb61b type:string location:FileLocation w:int h:int size:int = PhotoSize;
-photoCachedSize#e9a734fa type:string location:FileLocation w:int h:int bytes:bytes = PhotoSize;
-
-videoEmpty#c10658a8 id:long = Video;
-video#ee9f4a4d id:long access_hash:long user_id:int date:int duration:int size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-videoL27#388fa391 id:long access_hash:long user_id:int date:int caption:string duration:int mime_type:string size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-
-geoPointEmpty#1117dd5f = GeoPoint;
-geoPoint#2049d70c longitude:double latitude:double = GeoPoint;
-
-auth.checkedPhone#811ea28e phone_registered:Bool = auth.CheckedPhone;
-
-auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-auth.authorization#f6b673a4 expires:int user:User = auth.Authorization;
-
-auth.exportedAuthorization#df969c2d id:int bytes:bytes = auth.ExportedAuthorization;
-
-inputNotifyPeer#b8bc5b0c peer:InputPeer = InputNotifyPeer;
-inputNotifyUsers#193b4417 = InputNotifyPeer;
-inputNotifyChats#4a95e84e = InputNotifyPeer;
-inputNotifyAll#a429b886 = InputNotifyPeer;
-
-inputPeerNotifyEventsEmpty#f03064d8 = InputPeerNotifyEvents;
-inputPeerNotifyEventsAll#e86a2c74 = InputPeerNotifyEvents;
-
-inputPeerNotifySettings#46a2ce98 mute_until:int sound:string show_previews:Bool events_mask:int = InputPeerNotifySettings;
-
-peerNotifyEventsEmpty#add53cb3 = PeerNotifyEvents;
-peerNotifyEventsAll#6d1ded88 = PeerNotifyEvents;
-
-peerNotifySettingsEmpty#70a68512 = PeerNotifySettings;
-peerNotifySettings#8d5e11ee mute_until:int sound:string show_previews:Bool events_mask:int = PeerNotifySettings;
-
-wallPaper#ccb03657 id:int title:string sizes:Vector<PhotoSize> color:int = WallPaper;
-
-userFull#771095da user:User link:contacts.Link profile_photo:Photo notify_settings:PeerNotifySettings blocked:Bool real_first_name:string real_last_name:string = UserFull;
-
-contact#f911c994 user_id:int mutual:Bool = Contact;
-
-importedContact#d0028438 user_id:int client_id:long = ImportedContact;
-
-contactBlocked#561bc879 user_id:int date:int = ContactBlocked;
-
-contactSuggested#3de191a1 user_id:int mutual_contacts:int = ContactSuggested;
-
-contactStatus#d3680c61 user_id:int status:UserStatus = ContactStatus;
-
-chatLocated#3631cf4c chat_id:int distance:int = ChatLocated;
-
-contacts.link#3ace484c my_link:ContactLink foreign_link:ContactLink user:User = contacts.Link;
-
-contacts.contactsNotModified#b74ba9d2 = contacts.Contacts;
-contacts.contacts#6f8b8cb2 contacts:Vector<Contact> users:Vector<User> = contacts.Contacts;
-
-contacts.importedContacts#ad524315 imported:Vector<ImportedContact> retry_contacts:Vector<long> users:Vector<User> = contacts.ImportedContacts;
-
-contacts.blocked#1c138d15 blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-contacts.blockedSlice#900802a1 count:int blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-
-contacts.suggested#5649dcc5 results:Vector<ContactSuggested> users:Vector<User> = contacts.Suggested;
-
-messages.dialogs#15ba6c40 dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-messages.dialogsSlice#71e094f3 count:int dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-
-messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-messages.messagesSlice#b446ae3 count:int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-
-messages.messageEmpty#3f4e0648 = messages.Message;
-
-messages.sentMessage#4c3d47f3 id:int date:int media:MessageMedia pts:int pts_count:int = messages.SentMessage;
-
-messages.chats#64ff9fd5 chats:Vector<Chat> = messages.Chats;
-
-messages.chatFull#e5d7d19c full_chat:ChatFull chats:Vector<Chat> users:Vector<User> = messages.ChatFull;
-
-messages.affectedHistory#b45c69d1 pts:int pts_count:int offset:int = messages.AffectedHistory;
-
-inputMessagesFilterEmpty#57e2f66c = MessagesFilter;
-inputMessagesFilterPhotos#9609a51c = MessagesFilter;
-inputMessagesFilterVideo#9fc00e65 = MessagesFilter;
-inputMessagesFilterPhotoVideo#56e9f0e4 = MessagesFilter;
-inputMessagesFilterPhotoVideoDocuments#d95e73bb = MessagesFilter;
-inputMessagesFilterDocument#9eddf188 = MessagesFilter;
-inputMessagesFilterAudio#cfc87522 = MessagesFilter;
-
-updateNewMessage#1f2b0afd message:Message pts:int pts_count:int = Update;
-updateMessageID#4e90bfd6 id:int random_id:long = Update;
-updateDeleteMessages#a20db0e5 messages:Vector<int> pts:int pts_count:int = Update;
-updateUserTyping#5c486927 user_id:int action:SendMessageAction = Update;
-updateChatUserTyping#9a65ea1f chat_id:int user_id:int action:SendMessageAction = Update;
-updateChatParticipants#7761198 participants:ChatParticipants = Update;
-updateUserStatus#1bfbd823 user_id:int status:UserStatus = Update;
-updateUserName#a7332b73 user_id:int first_name:string last_name:string username:string = Update;
-updateUserPhoto#95313b0c user_id:int date:int photo:UserProfilePhoto previous:Bool = Update;
-updateContactRegistered#2575bbb9 user_id:int date:int = Update;
-updateContactLink#9d2e67c5 user_id:int my_link:ContactLink foreign_link:ContactLink = Update;
-updateNewAuthorization#8f06529a auth_key_id:long date:int device:string location:string = Update;
-
-updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
-
-updates.differenceEmpty#5d75a138 date:int seq:int = updates.Difference;
-updates.difference#f49ca0 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> state:updates.State = updates.Difference;
-updates.differenceSlice#a8fb1981 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> intermediate_state:updates.State = updates.Difference;
-
-updatesTooLong#e317af7e = Updates;
-updateShortMessage#ed5c2127 flags:# id:int user_id:int message:string pts:int pts_count:int date:int fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int = Updates;
-updateShortChatMessage#52238b3c flags:# id:int from_id:int chat_id:int message:string pts:int pts_count:int date:int fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int = Updates;
-updateShort#78d4dec1 update:Update date:int = Updates;
-updatesCombined#725b04c3 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq_start:int seq:int = Updates;
-updates#74ae4240 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq:int = Updates;
-
-photos.photos#8dca6aa5 photos:Vector<Photo> users:Vector<User> = photos.Photos;
-photos.photosSlice#15051f54 count:int photos:Vector<Photo> users:Vector<User> = photos.Photos;
-
-photos.photo#20212ca8 photo:Photo users:Vector<User> = photos.Photo;
-
-upload.file#96a18d5 type:storage.FileType mtime:int bytes:bytes = upload.File;
-
-dcOptionL28#2ec2a43c id:int hostname:string ip_address:string port:int = DcOption;
-dcOption#5d8c6cc flags:int id:int ip_address:string port:int = DcOption;
-
-config#4e32b894 date:int expires:int test_mode:Bool this_dc:int dc_options:Vector<DcOption> chat_size_max:int broadcast_size_max:int forwarded_count_max:int online_update_period_ms:int offline_blur_timeout_ms:int offline_idle_timeout_ms:int online_cloud_timeout_ms:int notify_cloud_delay_ms:int notify_default_delay_ms:int chat_big_size:int push_chat_period_ms:int push_chat_limit:int disabled_features:Vector<DisabledFeature> = Config;
-
-nearestDc#8e1a1775 country:string this_dc:int nearest_dc:int = NearestDc;
-
-help.appUpdate#8987f311 id:int critical:Bool url:string text:string = help.AppUpdate;
-help.noAppUpdate#c45a6536 = help.AppUpdate;
-
-help.inviteText#18cb9f78 message:string = help.InviteText;
-
-messages.sentMessageLink#35a1a663 id:int date:int media:MessageMedia pts:int pts_count:int links:Vector<contacts.Link> seq:int = messages.SentMessage;
-
-inputGeoChat#74d456fa chat_id:int access_hash:long = InputGeoChat;
-
-inputNotifyGeoChatPeer#4d8ddec8 geo_peer:InputGeoChat = InputNotifyPeer;
-
-geoChat#75eaea5a id:int access_hash:long title:string address:string venue:string geo:GeoPoint photo:ChatPhoto participants_count:int date:int checked_in:Bool version:int = Chat;
-
-geoChatMessageEmpty#60311a9b chat_id:int id:int = GeoChatMessage;
-geoChatMessage#4505f8e1 chat_id:int id:int from_id:int date:int message:string media:MessageMedia = GeoChatMessage;
-geoChatMessageService#d34fa24e chat_id:int id:int from_id:int date:int action:MessageAction = GeoChatMessage;
-
-geochats.statedMessage#17b1578b message:GeoChatMessage chats:Vector<Chat> users:Vector<User> seq:int = geochats.StatedMessage;
-
-geochats.located#48feb267 results:Vector<ChatLocated> messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Located;
-
-geochats.messages#d1526db1 messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-geochats.messagesSlice#bc5863e8 count:int messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-
-messageActionGeoChatCreate#6f038ebc title:string address:string = MessageAction;
-messageActionGeoChatCheckin#c7d53de = MessageAction;
-
-updateNewGeoChatMessage#5a68e3f7 geo_message:GeoChatMessage = Update;
-
-wallPaperSolid#63117f24 id:int title:string bg_color:int color:int = WallPaper;
-
-updateNewEncryptedMessage#12bcbd9a encr_message:EncryptedMessage qts:int = Update;
-updateEncryptedChatTyping#1710f156 chat_id:int = Update;
-updateEncryption#b4a2e88d encr_chat:EncryptedChat date:int = Update;
-updateEncryptedMessagesRead#38fe25b7 chat_id:int max_date:int date:int = Update;
-
-encryptedChatEmpty#ab7ec0a0 id:int = EncryptedChat;
-encryptedChatWaiting#3bf703dc id:int access_hash:long date:int admin_id:int participant_id:int = EncryptedChat;
-encryptedChatRequested#c878527e id:int access_hash:long date:int admin_id:int participant_id:int g_a:bytes = EncryptedChat;
-encryptedChat#fa56ce36 id:int access_hash:long date:int admin_id:int participant_id:int g_a_or_b:bytes key_fingerprint:long = EncryptedChat;
-encryptedChatDiscarded#13d6dd27 id:int = EncryptedChat;
-
-inputEncryptedChat#f141b5e1 chat_id:int access_hash:long = InputEncryptedChat;
-
-encryptedFileEmpty#c21f497e = EncryptedFile;
-encryptedFile#4a70994c id:long access_hash:long size:int dc_id:int key_fingerprint:int = EncryptedFile;
-
-inputEncryptedFileEmpty#1837c364 = InputEncryptedFile;
-inputEncryptedFileUploaded#64bd0306 id:long parts:int md5_checksum:string key_fingerprint:int = InputEncryptedFile;
-inputEncryptedFile#5a17b5e5 id:long access_hash:long = InputEncryptedFile;
-
-inputEncryptedFileLocation#f5235d55 id:long access_hash:long = InputFileLocation;
-
-encryptedMessage#ed18c118 random_id:long chat_id:int date:int bytes:bytes file:EncryptedFile = EncryptedMessage;
-encryptedMessageService#23734b06 random_id:long chat_id:int date:int bytes:bytes = EncryptedMessage;
-
-messages.dhConfigNotModified#c0e24635 random:bytes = messages.DhConfig;
-messages.dhConfig#2c221edd g:int p:bytes version:int random:bytes = messages.DhConfig;
-
-messages.sentEncryptedMessage#560f8935 date:int = messages.SentEncryptedMessage;
-messages.sentEncryptedFile#9493ff32 date:int file:EncryptedFile = messages.SentEncryptedMessage;
-
-inputFileBig#fa4f0bb5 id:long parts:int name:string = InputFile;
-
-inputEncryptedFileBigUploaded#2dc173c8 id:long parts:int key_fingerprint:int = InputEncryptedFile;
-
-updateChatParticipantAdd#3a0eeb22 chat_id:int user_id:int inviter_id:int version:int = Update;
-updateChatParticipantDelete#6e5f8c22 chat_id:int user_id:int version:int = Update;
-updateDcOptions#8e5e9873 dc_options:Vector<DcOption> = Update;
-
-inputMediaUploadedAudio#4e498cab file:InputFile duration:int mime_type:string = InputMedia;
-inputMediaAudio#89938781 audio_id:InputAudio = InputMedia;
-inputMediaUploadedDocument#ffe76b78 file:InputFile mime_type:string attributes:Vector<DocumentAttribute> = InputMedia;
-inputMediaUploadedThumbDocument#41481486 file:InputFile thumb:InputFile mime_type:string attributes:Vector<DocumentAttribute> = InputMedia;
-inputMediaDocument#d184e841 document_id:InputDocument = InputMedia;
-
-messageMediaDocument#2fda2204 document:Document = MessageMedia;
-messageMediaAudio#c6b68300 audio:Audio = MessageMedia;
-
-inputAudioEmpty#d95adc84 = InputAudio;
-inputAudio#77d440ff id:long access_hash:long = InputAudio;
-
-inputDocumentEmpty#72f0eaae = InputDocument;
-inputDocument#18798952 id:long access_hash:long = InputDocument;
-
-inputAudioFileLocation#74dc404d id:long access_hash:long = InputFileLocation;
-inputDocumentFileLocation#4e45abe9 id:long access_hash:long = InputFileLocation;
-
-audioEmpty#586988d8 id:long = Audio;
-audio#c7ac6496 id:long access_hash:long user_id:int date:int duration:int mime_type:string size:int dc_id:int = Audio;
-
-documentEmpty#36f8c871 id:long = Document;
-document#f9a39f4f id:long access_hash:long date:int mime_type:string size:int thumb:PhotoSize dc_id:int attributes:Vector<DocumentAttribute> = Document;
-document_l19#9efc6326 id:long access_hash:long user_id:int date:int file_name:string mime_type:string size:int thumb:PhotoSize dc_id:int = Document;
-
-help.support#17c6b5f6 phone_number:string user:User = help.Support;
-
-notifyPeer#9fd40bd8 peer:Peer = NotifyPeer;
-notifyUsers#b4c83b4c = NotifyPeer;
-notifyChats#c007cec3 = NotifyPeer;
-notifyAll#74d07c60 = NotifyPeer;
-
-updateUserBlocked#80ece81a user_id:int blocked:Bool = Update;
-updateNotifySettings#bec268ef notify_peer:NotifyPeer notify_settings:PeerNotifySettings = Update;
-
-auth.sentAppCode#e325edcf phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-sendMessageTypingAction#16bf744e = SendMessageAction;
-sendMessageCancelAction#fd5ec8f5 = SendMessageAction;
-sendMessageRecordVideoAction#a187d66f = SendMessageAction;
-sendMessageUploadVideoActionL27#92042ff7 = SendMessageAction;
-sendMessageUploadVideoAction#e9763aec progress:int = SendMessageAction;
-sendMessageRecordAudioAction#d52f73f7 = SendMessageAction;
-sendMessageUploadAudioActionL27#e6ac8a6f = SendMessageAction;
-sendMessageUploadAudioAction#f351d7ab progress:int = SendMessageAction;
-sendMessageUploadPhotoAction#d1d34a26 progress:int = SendMessageAction;
-sendMessageUploadDocumentActionL27#8faee98e = SendMessageAction;
-sendMessageUploadDocumentAction#aa0cd9e4 progress:int = SendMessageAction;
-sendMessageGeoLocationAction#176f8ba1 = SendMessageAction;
-sendMessageChooseContactAction#628cbc6f = SendMessageAction;
-
-contactFound#ea879f95 user_id:int = ContactFound;
-
-contacts.found#566000e results:Vector<ContactFound> users:Vector<User> = contacts.Found;
-
-updateServiceNotification#382dd3e4 type:string message_text:string media:MessageMedia popup:Bool = Update;
-
-userStatusRecently#e26f42f1 = UserStatus;
-userStatusLastWeek#7bf09fc = UserStatus;
-userStatusLastMonth#77ebc742 = UserStatus;
-
-updatePrivacy#ee3b272a key:PrivacyKey rules:Vector<PrivacyRule> = Update;
-
-inputPrivacyKeyStatusTimestamp#4f96cb18 = InputPrivacyKey;
-
-privacyKeyStatusTimestamp#bc2eab30 = PrivacyKey;
-
-inputPrivacyValueAllowContacts#d09e07b = InputPrivacyRule;
-inputPrivacyValueAllowAll#184b35ce = InputPrivacyRule;
-inputPrivacyValueAllowUsers#131cc67f users:Vector<InputUser> = InputPrivacyRule;
-inputPrivacyValueDisallowContacts#ba52007 = InputPrivacyRule;
-inputPrivacyValueDisallowAll#d66b66c9 = InputPrivacyRule;
-inputPrivacyValueDisallowUsers#90110467 users:Vector<InputUser> = InputPrivacyRule;
-
-privacyValueAllowContacts#fffe1bac = PrivacyRule;
-privacyValueAllowAll#65427b82 = PrivacyRule;
-privacyValueAllowUsers#4d5bbe0c users:Vector<int> = PrivacyRule;
-privacyValueDisallowContacts#f888fa1a = PrivacyRule;
-privacyValueDisallowAll#8b73e763 = PrivacyRule;
-privacyValueDisallowUsers#c7f49b7 users:Vector<int> = PrivacyRule;
-
-account.privacyRules#554abb6f rules:Vector<PrivacyRule> users:Vector<User> = account.PrivacyRules;
-
-accountDaysTTL#b8d0afdf days:int = AccountDaysTTL;
-
-account.sentChangePhoneCode#a4f58c4c phone_code_hash:string send_call_timeout:int = account.SentChangePhoneCode;
-
-updateUserPhone#12b9417b user_id:int phone:string = Update;
-
-documentAttributeImageSize#6c37c15c w:int h:int = DocumentAttribute;
-documentAttributeAnimated#11b58939 = DocumentAttribute;
-documentAttributeStickerL28#994c9882 alt:string = DocumentAttribute;
-documentAttributeSticker#3a556302 alt:string stickerset:InputStickerSet = DocumentAttribute;
-documentAttributeVideo#5910cccb duration:int w:int h:int = DocumentAttribute;
-documentAttributeAudio#51448e5 duration:int = DocumentAttribute;
-documentAttributeFilename#15590068 file_name:string = DocumentAttribute;
-
-messages.stickersNotModified#f1749a22 = messages.Stickers;
-messages.stickers#8a8ecd32 hash:string stickers:Vector<Document> = messages.Stickers;
-
-stickerPack#12b299d4 emoticon:string documents:Vector<long> = StickerPack;
-
-messages.allStickersNotModified#e86602c3 = messages.AllStickers;
-messages.allStickers#5ce352ec hash:string packs:Vector<StickerPack> sets:Vector<StickerSet> documents:Vector<Document> = messages.AllStickers;
-
-disabledFeature#ae636f24 feature:string description:string = DisabledFeature;
-
-updateReadHistoryInbox#9961fd5c peer:Peer max_id:int pts:int pts_count:int = Update;
-updateReadHistoryOutbox#2f2f21bf peer:Peer max_id:int pts:int pts_count:int = Update;
-
-messages.affectedMessages#84d19185 pts:int pts_count:int = messages.AffectedMessages;
-
-contactLinkUnknown#5f4f9247 = ContactLink;
-contactLinkNone#feedd3ad = ContactLink;
-contactLinkHasPhone#268f3f59 = ContactLink;
-contactLinkContact#d502c2d0 = ContactLink;
-
-updateWebPage#2cc36971 webpage:WebPage = Update;
-
-webPageEmpty#eb1477e8 id:long = WebPage;
-webPagePending#c586da1c id:long date:int = WebPage;
-webPage#a31ea0b5 flags:# id:long url:string display_url:string type:flags.0?string site_name:flags.1?string title:flags.2?string description:flags.3?string photo:flags.4?Photo embed_url:flags.5?string embed_type:flags.5?string embed_width:flags.6?int embed_height:flags.6?int duration:flags.7?int author:flags.8?string = WebPage;
-
-messageMediaWebPage#a32dd600 webpage:WebPage = MessageMedia;
-
-authorization#7bf2e6f6 hash:long flags:int device_model:string platform:string system_version:string api_id:int app_name:string app_version:string date_created:int date_active:int ip:string country:string region:string = Authorization;
-
-account.authorizations#1250abde authorizations:Vector<Authorization> = account.Authorizations;
-
-account.noPassword#96dabc18 new_salt:bytes email_unconfirmed_pattern:string = account.Password;
-account.password#7c18141c current_salt:bytes new_salt:bytes hint:string has_recovery:Bool email_unconfirmed_pattern:string = account.Password;
-
-account.passwordSettings#b7b72ab3 email:string = account.PasswordSettings;
-
-account.passwordInputSettings#bcfc532c flags:# new_salt:flags.0?bytes new_password_hash:flags.0?bytes hint:flags.0?string email:flags.1?string = account.PasswordInputSettings;
-
-auth.passwordRecovery#137948a5 email_pattern:string = auth.PasswordRecovery;
-
-inputMediaVenue#2827a81a geo_point:InputGeoPoint title:string address:string provider:string venue_id:string = InputMedia;
-
-messageMediaVenue#7912b71f geo:GeoPoint title:string address:string provider:string venue_id:string = MessageMedia;
-
-receivedNotifyMessage#a384b779 id:int flags:int = ReceivedNotifyMessage;
-
-chatInviteEmpty#69df3769 = ExportedChatInvite;
-chatInviteExported#fc2e05bc link:string = ExportedChatInvite;
-
-chatInviteAlready#5a686d7c chat:Chat = ChatInvite;
-chatInvite#ce917dcd title:string = ChatInvite;
-
-messageActionChatJoinedByLink#f89cf5e8 inviter_id:int = MessageAction;
-
-updateReadMessagesContents#68c13933 messages:Vector<int> pts:int pts_count:int = Update;
-
-inputStickerSetEmpty#ffb62b95 = InputStickerSet;
-inputStickerSetID#9de7a269 id:long access_hash:long = InputStickerSet;
-inputStickerSetShortName#861cc8a0 short_name:string = InputStickerSet;
-
-stickerSet#a7a43b17 id:long access_hash:long title:string short_name:string = StickerSet;
-
-messages.stickerSet#b60a24a6 set:StickerSet packs:Vector<StickerPack> documents:Vector<Document> = messages.StickerSet;
-
----functions---
-
-invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
-
-invokeAfterMsgs#3dc4b4f0 {X:Type} msg_ids:Vector<long> query:!X = X;
-
-auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone;
-auth.sendCode#768d5f4d phone_number:string sms_type:int api_id:int api_hash:string lang_code:string = auth.SentCode;
-auth.sendCall#3c51564 phone_number:string phone_code_hash:string = Bool;
-auth.signUp#1b067634 phone_number:string phone_code_hash:string phone_code:string first_name:string last_name:string = auth.Authorization;
-auth.signIn#bcd51581 phone_number:string phone_code_hash:string phone_code:string = auth.Authorization;
-auth.logOut#5717da40 = Bool;
-auth.resetAuthorizations#9fab0d1a = Bool;
-auth.sendInvites#771c1d97 phone_numbers:Vector<string> message:string = Bool;
-auth.exportAuthorization#e5bfffcd dc_id:int = auth.ExportedAuthorization;
-auth.importAuthorization#e3ef9613 id:int bytes:bytes = auth.Authorization;
-auth.bindTempAuthKey#cdd42a05 perm_auth_key_id:long nonce:long expires_at:int encrypted_message:bytes = Bool;
-
-account.registerDevice#446c712c token_type:int token:string device_model:string system_version:string app_version:string app_sandbox:Bool lang_code:string = Bool;
-account.unregisterDevice#65c55b40 token_type:int token:string = Bool;
-account.updateNotifySettings#84be5b93 peer:InputNotifyPeer settings:InputPeerNotifySettings = Bool;
-account.getNotifySettings#12b3ad31 peer:InputNotifyPeer = PeerNotifySettings;
-account.resetNotifySettings#db7e1747 = Bool;
-account.updateProfile#f0888d68 first_name:string last_name:string = User;
-account.updateStatus#6628562c offline:Bool = Bool;
-account.getWallPapers#c04cfac2 = Vector<WallPaper>;
-
-users.getUsers#d91a548 id:Vector<InputUser> = Vector<User>;
-users.getFullUser#ca30a5b1 id:InputUser = UserFull;
-
-contacts.getStatuses#c4a353ee = Vector<ContactStatus>;
-contacts.getContacts#22c6aa08 hash:string = contacts.Contacts;
-contacts.importContacts#da30b32d contacts:Vector<InputContact> replace:Bool = contacts.ImportedContacts;
-contacts.getSuggested#cd773428 limit:int = contacts.Suggested;
-contacts.deleteContact#8e953744 id:InputUser = contacts.Link;
-contacts.deleteContacts#59ab389e id:Vector<InputUser> = Bool;
-contacts.block#332b49fc id:InputUser = Bool;
-contacts.unblock#e54100bd id:InputUser = Bool;
-contacts.getBlocked#f57c350f offset:int limit:int = contacts.Blocked;
-contacts.exportCard#84e53737 = Vector<int>;
-contacts.importCard#4fe196fe export_card:Vector<int> = User;
-
-messages.getMessages#4222fa74 id:Vector<int> = messages.Messages;
-messages.getDialogs#eccf1df6 offset:int max_id:int limit:int = messages.Dialogs;
-messages.getHistory#92a1df2f peer:InputPeer offset:int max_id:int limit:int = messages.Messages;
-messages.search#7e9f2ab peer:InputPeer q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = messages.Messages;
-messages.readHistory#b04f2510 peer:InputPeer max_id:int offset:int = messages.AffectedHistory;
-messages.deleteHistory#f4f8fb61 peer:InputPeer offset:int = messages.AffectedHistory;
-messages.deleteMessages#a5f18925 id:Vector<int> = messages.AffectedMessages;
-messages.receivedMessages#5a954c0 max_id:int = Vector<ReceivedNotifyMessage>;
-messages.setTyping#a3825e50 peer:InputPeer action:SendMessageAction = Bool;
-messages.sendMessage#9add8f26 flags:# peer:InputPeer reply_to_msg_id:flags.0?int message:string random_id:long = messages.SentMessage;
-messages.sendMedia#2d7923b1 flags:# peer:InputPeer reply_to_msg_id:flags.0?int media:InputMedia random_id:long = Updates;
-messages.forwardMessages#55e1728d peer:InputPeer id:Vector<int> random_id:Vector<long> = Updates;
-messages.getChats#3c6aa187 id:Vector<int> = messages.Chats;
-messages.getFullChat#3b831c66 chat_id:int = messages.ChatFull;
-messages.editChatTitle#dc452855 chat_id:int title:string = Updates;
-messages.editChatPhoto#ca4c79d8 chat_id:int photo:InputChatPhoto = Updates;
-messages.addChatUser#f9a0aa09 chat_id:int user_id:InputUser fwd_limit:int = Updates;
-messages.deleteChatUser#e0611f16 chat_id:int user_id:InputUser = Updates;
-messages.createChat#9cb126e users:Vector<InputUser> title:string = Updates;
-
-updates.getState#edd4882a = updates.State;
-updates.getDifference#a041495 pts:int date:int qts:int = updates.Difference;
-
-photos.updateProfilePhoto#eef579a0 id:InputPhoto crop:InputPhotoCrop = UserProfilePhoto;
-photos.uploadProfilePhoto#d50f9c88 file:InputFile caption:string geo_point:InputGeoPoint crop:InputPhotoCrop = photos.Photo;
-photos.deletePhotos#87cf7f2f id:Vector<InputPhoto> = Vector<long>;
-
-upload.saveFilePart#b304a621 file_id:long file_part:int bytes:bytes = Bool;
-upload.getFile#e3a6cfb5 location:InputFileLocation offset:int limit:int = upload.File;
-
-help.getConfig#c4f9186b = Config;
-help.getNearestDc#1fb33026 = NearestDc;
-help.getAppUpdate#c812ac7e device_model:string system_version:string app_version:string lang_code:string = help.AppUpdate;
-help.saveAppLog#6f02f748 events:Vector<InputAppEvent> = Bool;
-help.getInviteText#a4a95186 lang_code:string = help.InviteText;
-
-photos.getUserPhotos#b7ee553c user_id:InputUser offset:int max_id:int limit:int = photos.Photos;
-
-messages.forwardMessage#33963bf9 peer:InputPeer id:int random_id:long = Updates;
-messages.sendBroadcast#bf73f4da contacts:Vector<InputUser> random_id:Vector<long> message:string media:InputMedia = Updates;
-
-geochats.getLocated#7f192d8f geo_point:InputGeoPoint radius:int limit:int = geochats.Located;
-geochats.getRecents#e1427e6f offset:int limit:int = geochats.Messages;
-geochats.checkin#55b3e8fb peer:InputGeoChat = geochats.StatedMessage;
-geochats.getFullChat#6722dd6f peer:InputGeoChat = messages.ChatFull;
-geochats.editChatTitle#4c8e2273 peer:InputGeoChat title:string address:string = geochats.StatedMessage;
-geochats.editChatPhoto#35d81a95 peer:InputGeoChat photo:InputChatPhoto = geochats.StatedMessage;
-geochats.search#cfcdc44d peer:InputGeoChat q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = geochats.Messages;
-geochats.getHistory#b53f7a68 peer:InputGeoChat offset:int max_id:int limit:int = geochats.Messages;
-geochats.setTyping#8b8a729 peer:InputGeoChat typing:Bool = Bool;
-geochats.sendMessage#61b0044 peer:InputGeoChat message:string random_id:long = geochats.StatedMessage;
-geochats.sendMedia#b8f0deff peer:InputGeoChat media:InputMedia random_id:long = geochats.StatedMessage;
-geochats.createGeoChat#e092e16 title:string geo_point:InputGeoPoint address:string venue:string = geochats.StatedMessage;
-
-messages.getDhConfig#26cf8950 version:int random_length:int = messages.DhConfig;
-messages.requestEncryption#f64daf43 user_id:InputUser random_id:int g_a:bytes = EncryptedChat;
-messages.acceptEncryption#3dbc0415 peer:InputEncryptedChat g_b:bytes key_fingerprint:long = EncryptedChat;
-messages.discardEncryption#edd923c5 chat_id:int = Bool;
-messages.setEncryptedTyping#791451ed peer:InputEncryptedChat typing:Bool = Bool;
-messages.readEncryptedHistory#7f4b690a peer:InputEncryptedChat max_date:int = Bool;
-messages.sendEncrypted#a9776773 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.sendEncryptedFile#9a901b66 peer:InputEncryptedChat random_id:long data:bytes file:InputEncryptedFile = messages.SentEncryptedMessage;
-messages.sendEncryptedService#32d439a4 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.receivedQueue#55a5bb66 max_qts:int = Vector<long>;
-
-upload.saveBigFilePart#de7b673d file_id:long file_part:int file_total_parts:int bytes:bytes = Bool;
-
-initConnection#69796de9 {X:Type} api_id:int device_model:string system_version:string app_version:string lang_code:string query:!X = X;
-
-help.getSupport#9cdf08cd = help.Support;
-
-auth.sendSms#da9f3e8 phone_number:string phone_code_hash:string = Bool;
-
-messages.readMessageContents#36a73f77 id:Vector<int> = messages.AffectedMessages;
-
-account.checkUsername#2714d86c username:string = Bool;
-account.updateUsername#3e0bdd7c username:string = User;
-
-contacts.search#11f812d8 q:string limit:int = contacts.Found;
-
-account.getPrivacy#dadbc950 key:InputPrivacyKey = account.PrivacyRules;
-account.setPrivacy#c9f81ce8 key:InputPrivacyKey rules:Vector<InputPrivacyRule> = account.PrivacyRules;
-account.deleteAccount#418d4e0b reason:string = Bool;
-account.getAccountTTL#8fc711d = AccountDaysTTL;
-account.setAccountTTL#2442485e ttl:AccountDaysTTL = Bool;
-
-invokeWithLayer#da9b0d0d {X:Type} layer:int query:!X = X;
-
-contacts.resolveUsername#bf0131c username:string = User;
-
-account.sendChangePhoneCode#a407a8f4 phone_number:string = account.SentChangePhoneCode;
-account.changePhone#70c32edb phone_number:string phone_code_hash:string phone_code:string = User;
-
-messages.getStickers#ae22e045 emoticon:string hash:string = messages.Stickers;
-messages.getAllStickers#aa3bc868 hash:string = messages.AllStickers;
-
-account.updateDeviceLocked#38df3532 period:int = Bool;
-
-auth.importBotAuthorization#67a3ff2c flags:int api_id:int api_hash:string bot_auth_token:string = auth.Authorization;
-
-messages.getWebPagePreview#25223e24 message:string = MessageMedia;
-
-account.getAuthorizations#e320c158 = account.Authorizations;
-account.resetAuthorization#df77f3bc hash:long = Bool;
-account.getPassword#548a30f5 = account.Password;
-account.getPasswordSettings#bc8d11bb current_password_hash:bytes = account.PasswordSettings;
-account.updatePasswordSettings#fa7c4b86 current_password_hash:bytes new_settings:account.PasswordInputSettings = Bool;
-
-auth.checkPassword#a63011e password_hash:bytes = auth.Authorization;
-auth.requestPasswordRecovery#d897bc66 = auth.PasswordRecovery;
-auth.recoverPassword#4ea56e92 code:string = auth.Authorization;
-
-invokeWithoutUpdates#bf9459b7 {X:Type} query:!X = X;
-
-messages.exportChatInvite#7d885289 chat_id:int = ExportedChatInvite;
-messages.checkChatInvite#3eadb1bb hash:string = ChatInvite;
-messages.importChatInvite#6c50051c hash:string = Updates;
-messages.getStickerSet#2619a90e stickerset:InputStickerSet = messages.StickerSet;
-messages.installStickerSet#efbbfae9 stickerset:InputStickerSet = Bool;
-messages.uninstallStickerSet#f96e55de stickerset:InputStickerSet = Bool;
diff --git a/protocols/Telegram/docs/tgl/scheme31.tl b/protocols/Telegram/docs/tgl/scheme31.tl
deleted file mode 100644
index 83a2084170..0000000000
--- a/protocols/Telegram/docs/tgl/scheme31.tl
+++ /dev/null
@@ -1,668 +0,0 @@
-int ?= Int;
-long ?= Long;
-double ?= Double;
-string ?= String;
-
-bytes string = Bytes;
-
-int128 long long = Int128;
-int256 long long long long = Int256;
-
-boolFalse#bc799737 = Bool;
-boolTrue#997275b5 = Bool;
-
-vector#1cb5c415 {t:Type} # [ t ] = Vector t;
-
-error#c4b9f9bb code:int text:string = Error;
-
-null#56730bcc = Null;
-
-inputPeerEmpty#7f3b18ea = InputPeer;
-inputPeerSelf#7da07ec9 = InputPeer;
-inputPeerContact#1023dbe8 user_id:int = InputPeer;
-inputPeerForeign#9b447325 user_id:int access_hash:long = InputPeer;
-inputPeerChat#179be863 chat_id:int = InputPeer;
-
-inputUserEmpty#b98886cf = InputUser;
-inputUserSelf#f7c1b13f = InputUser;
-inputUserContact#86e94f65 user_id:int = InputUser;
-inputUserForeign#655e74ff user_id:int access_hash:long = InputUser;
-
-inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact;
-
-inputFile#f52ff27f id:long parts:int name:string md5_checksum:string = InputFile;
-
-inputMediaEmpty#9664f57f = InputMedia;
-inputMediaUploadedPhoto#f7aff1c0 file:InputFile caption:string = InputMedia;
-inputMediaPhoto#e9bfb4f3 id:InputPhoto caption:string = InputMedia;
-inputMediaGeoPoint#f9c44144 geo_point:InputGeoPoint = InputMedia;
-inputMediaContact#a6e45987 phone_number:string first_name:string last_name:string = InputMedia;
-inputMediaUploadedVideo#e13fd4bc file:InputFile duration:int w:int h:int caption:string = InputMedia;
-inputMediaUploadedThumbVideo#96fb97dc file:InputFile thumb:InputFile duration:int w:int h:int caption:string = InputMedia;
-inputMediaVideo#936a4ebd video_id:InputVideo caption:string = InputMedia;
-
-inputChatPhotoEmpty#1ca48f57 = InputChatPhoto;
-inputChatUploadedPhoto#94254732 file:InputFile crop:InputPhotoCrop = InputChatPhoto;
-inputChatPhoto#b2e1bf08 id:InputPhoto crop:InputPhotoCrop = InputChatPhoto;
-
-inputGeoPointEmpty#e4c123d6 = InputGeoPoint;
-inputGeoPoint#f3b7acc9 latitude:double longitude:double = InputGeoPoint;
-
-inputPhotoEmpty#1cd7bf0d = InputPhoto;
-inputPhoto#fb95c6c4 id:long access_hash:long = InputPhoto;
-
-inputVideoEmpty#5508ec75 = InputVideo;
-inputVideo#ee579652 id:long access_hash:long = InputVideo;
-
-inputFileLocation#14637196 volume_id:long local_id:int secret:long = InputFileLocation;
-inputVideoFileLocation#3d0364ec id:long access_hash:long = InputFileLocation;
-
-inputPhotoCropAuto#ade6b004 = InputPhotoCrop;
-inputPhotoCrop#d9915325 crop_left:double crop_top:double crop_width:double = InputPhotoCrop;
-
-inputAppEvent#770656a8 time:double type:string peer:long data:string = InputAppEvent;
-
-peerUser#9db1bc6d user_id:int = Peer;
-peerChat#bad0e5bb chat_id:int = Peer;
-
-storage.fileUnknown#aa963b05 = storage.FileType;
-storage.fileJpeg#7efe0e = storage.FileType;
-storage.fileGif#cae1aadf = storage.FileType;
-storage.filePng#a4f63c0 = storage.FileType;
-storage.filePdf#ae1e508d = storage.FileType;
-storage.fileMp3#528a0677 = storage.FileType;
-storage.fileMov#4b09ebbc = storage.FileType;
-storage.filePartial#40bc6f52 = storage.FileType;
-storage.fileMp4#b3cea0e4 = storage.FileType;
-storage.fileWebp#1081464c = storage.FileType;
-
-fileLocationUnavailable#7c596b46 volume_id:long local_id:int secret:long = FileLocation;
-fileLocation#53d69076 dc_id:int volume_id:long local_id:int secret:long = FileLocation;
-
-userEmpty#200250ba id:int = User;
-
-userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
-userProfilePhoto#d559d8c8 photo_id:long photo_small:FileLocation photo_big:FileLocation = UserProfilePhoto;
-
-userStatusEmpty#9d05049 = UserStatus;
-userStatusOnline#edb93949 expires:int = UserStatus;
-userStatusOffline#8c703f was_online:int = UserStatus;
-
-chatEmpty#9ba2d800 id:int = Chat;
-chat#6e9c9bc7 id:int title:string photo:ChatPhoto participants_count:int date:int left:Bool version:int = Chat;
-chatForbidden#fb0ccc41 id:int title:string date:int = Chat;
-
-chatFull#2e02a614 id:int participants:ChatParticipants chat_photo:Photo notify_settings:PeerNotifySettings exported_invite:ExportedChatInvite bot_info:Vector<BotInfo> = ChatFull;
-
-
-chatParticipant#c8d7493e user_id:int inviter_id:int date:int = ChatParticipant;
-
-chatParticipantsForbidden#fd2bb8a chat_id:int = ChatParticipants;
-chatParticipants#7841b415 chat_id:int admin_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
-
-chatPhotoEmpty#37c1011c = ChatPhoto;
-chatPhoto#6153276a photo_small:FileLocation photo_big:FileLocation = ChatPhoto;
-
-messageEmpty#83e5de54 id:int = Message;
-message#c3060325 flags:# id:int from_id:int to_id:Peer fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int date:int message:string media:MessageMedia reply_markup:flags.6?ReplyMarkup = Message;
-messageService#1d86f70e flags:int id:int from_id:int to_id:Peer date:int action:MessageAction = Message;
-
-messageMediaEmpty#3ded6320 = MessageMedia;
-messageMediaPhoto#3d8ce53d photo:Photo caption:string = MessageMedia;
-messageMediaVideo#5bcf1675 video:Video caption:string = MessageMedia;
-messageMediaGeo#56e0d474 geo:GeoPoint = MessageMedia;
-messageMediaContact#5e7d2f39 phone_number:string first_name:string last_name:string user_id:int = MessageMedia;
-messageMediaUnsupported#9f84f49e = MessageMedia;
-
-messageActionEmpty#b6aef7b0 = MessageAction;
-messageActionChatCreate#a6638b9a title:string users:Vector<int> = MessageAction;
-messageActionChatEditTitle#b5a1ce5a title:string = MessageAction;
-messageActionChatEditPhoto#7fcb13a8 photo:Photo = MessageAction;
-messageActionChatDeletePhoto#95e3fbef = MessageAction;
-messageActionChatAddUser#5e3cfc4b user_id:int = MessageAction;
-messageActionChatDeleteUser#b2ae9b0c user_id:int = MessageAction;
-
-dialog#c1dd804a peer:Peer top_message:int read_inbox_max_id:int unread_count:int notify_settings:PeerNotifySettings = Dialog;
-
-photoEmpty#2331b22d id:long = Photo;
-photo#c3838076 id:long access_hash:long user_id:int date:int geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-photoL27#22b56751 id:long access_hash:long user_id:int date:int caption:string geo:GeoPoint sizes:Vector<PhotoSize> = Photo;
-
-photoSizeEmpty#e17e23c type:string = PhotoSize;
-photoSize#77bfb61b type:string location:FileLocation w:int h:int size:int = PhotoSize;
-photoCachedSize#e9a734fa type:string location:FileLocation w:int h:int bytes:bytes = PhotoSize;
-
-videoEmpty#c10658a8 id:long = Video;
-video#ee9f4a4d id:long access_hash:long user_id:int date:int duration:int size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-videoL27#388fa391 id:long access_hash:long user_id:int date:int caption:string duration:int mime_type:string size:int thumb:PhotoSize dc_id:int w:int h:int = Video;
-
-geoPointEmpty#1117dd5f = GeoPoint;
-geoPoint#2049d70c longitude:double latitude:double = GeoPoint;
-
-auth.checkedPhone#811ea28e phone_registered:Bool = auth.CheckedPhone;
-
-auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-auth.authorization#ff036af1 user:User = auth.Authorization;
-
-auth.exportedAuthorization#df969c2d id:int bytes:bytes = auth.ExportedAuthorization;
-
-inputNotifyPeer#b8bc5b0c peer:InputPeer = InputNotifyPeer;
-inputNotifyUsers#193b4417 = InputNotifyPeer;
-inputNotifyChats#4a95e84e = InputNotifyPeer;
-inputNotifyAll#a429b886 = InputNotifyPeer;
-
-inputPeerNotifyEventsEmpty#f03064d8 = InputPeerNotifyEvents;
-inputPeerNotifyEventsAll#e86a2c74 = InputPeerNotifyEvents;
-
-inputPeerNotifySettings#46a2ce98 mute_until:int sound:string show_previews:Bool events_mask:int = InputPeerNotifySettings;
-
-peerNotifyEventsEmpty#add53cb3 = PeerNotifyEvents;
-peerNotifyEventsAll#6d1ded88 = PeerNotifyEvents;
-
-peerNotifySettingsEmpty#70a68512 = PeerNotifySettings;
-peerNotifySettings#8d5e11ee mute_until:int sound:string show_previews:Bool events_mask:int = PeerNotifySettings;
-
-wallPaper#ccb03657 id:int title:string sizes:Vector<PhotoSize> color:int = WallPaper;
-
-userFull#5a89ac5b user:User link:contacts.Link profile_photo:Photo notify_settings:PeerNotifySettings blocked:Bool bot_info:BotInfo = UserFull;
-
-contact#f911c994 user_id:int mutual:Bool = Contact;
-
-importedContact#d0028438 user_id:int client_id:long = ImportedContact;
-
-contactBlocked#561bc879 user_id:int date:int = ContactBlocked;
-
-contactSuggested#3de191a1 user_id:int mutual_contacts:int = ContactSuggested;
-
-contactStatus#d3680c61 user_id:int status:UserStatus = ContactStatus;
-
-chatLocated#3631cf4c chat_id:int distance:int = ChatLocated;
-
-contacts.link#3ace484c my_link:ContactLink foreign_link:ContactLink user:User = contacts.Link;
-
-contacts.contactsNotModified#b74ba9d2 = contacts.Contacts;
-contacts.contacts#6f8b8cb2 contacts:Vector<Contact> users:Vector<User> = contacts.Contacts;
-
-contacts.importedContacts#ad524315 imported:Vector<ImportedContact> retry_contacts:Vector<long> users:Vector<User> = contacts.ImportedContacts;
-
-contacts.blocked#1c138d15 blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-contacts.blockedSlice#900802a1 count:int blocked:Vector<ContactBlocked> users:Vector<User> = contacts.Blocked;
-
-contacts.suggested#5649dcc5 results:Vector<ContactSuggested> users:Vector<User> = contacts.Suggested;
-
-messages.dialogs#15ba6c40 dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-messages.dialogsSlice#71e094f3 count:int dialogs:Vector<Dialog> messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Dialogs;
-
-messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-messages.messagesSlice#b446ae3 count:int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
-
-messages.messageEmpty#3f4e0648 = messages.Message;
-
-messages.sentMessage#4c3d47f3 id:int date:int media:MessageMedia pts:int pts_count:int = messages.SentMessage;
-
-messages.chats#64ff9fd5 chats:Vector<Chat> = messages.Chats;
-
-messages.chatFull#e5d7d19c full_chat:ChatFull chats:Vector<Chat> users:Vector<User> = messages.ChatFull;
-
-messages.affectedHistory#b45c69d1 pts:int pts_count:int offset:int = messages.AffectedHistory;
-
-inputMessagesFilterEmpty#57e2f66c = MessagesFilter;
-inputMessagesFilterPhotos#9609a51c = MessagesFilter;
-inputMessagesFilterVideo#9fc00e65 = MessagesFilter;
-inputMessagesFilterPhotoVideo#56e9f0e4 = MessagesFilter;
-inputMessagesFilterPhotoVideoDocuments#d95e73bb = MessagesFilter;
-inputMessagesFilterDocument#9eddf188 = MessagesFilter;
-inputMessagesFilterAudio#cfc87522 = MessagesFilter;
-
-updateNewMessage#1f2b0afd message:Message pts:int pts_count:int = Update;
-updateMessageID#4e90bfd6 id:int random_id:long = Update;
-updateDeleteMessages#a20db0e5 messages:Vector<int> pts:int pts_count:int = Update;
-updateUserTyping#5c486927 user_id:int action:SendMessageAction = Update;
-updateChatUserTyping#9a65ea1f chat_id:int user_id:int action:SendMessageAction = Update;
-updateChatParticipants#7761198 participants:ChatParticipants = Update;
-updateUserStatus#1bfbd823 user_id:int status:UserStatus = Update;
-updateUserName#a7332b73 user_id:int first_name:string last_name:string username:string = Update;
-updateUserPhoto#95313b0c user_id:int date:int photo:UserProfilePhoto previous:Bool = Update;
-updateContactRegistered#2575bbb9 user_id:int date:int = Update;
-updateContactLink#9d2e67c5 user_id:int my_link:ContactLink foreign_link:ContactLink = Update;
-updateNewAuthorization#8f06529a auth_key_id:long date:int device:string location:string = Update;
-
-updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
-
-updates.differenceEmpty#5d75a138 date:int seq:int = updates.Difference;
-updates.difference#f49ca0 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> state:updates.State = updates.Difference;
-updates.differenceSlice#a8fb1981 new_messages:Vector<Message> new_encrypted_messages:Vector<EncryptedMessage> other_updates:Vector<Update> chats:Vector<Chat> users:Vector<User> intermediate_state:updates.State = updates.Difference;
-
-updatesTooLong#e317af7e = Updates;
-updateShortMessage#ed5c2127 flags:# id:int user_id:int message:string pts:int pts_count:int date:int fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int = Updates;
-updateShortChatMessage#52238b3c flags:# id:int from_id:int chat_id:int message:string pts:int pts_count:int date:int fwd_from_id:flags.2?int fwd_date:flags.2?int reply_to_msg_id:flags.3?int = Updates;
-updateShort#78d4dec1 update:Update date:int = Updates;
-updatesCombined#725b04c3 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq_start:int seq:int = Updates;
-updates#74ae4240 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq:int = Updates;
-
-photos.photos#8dca6aa5 photos:Vector<Photo> users:Vector<User> = photos.Photos;
-photos.photosSlice#15051f54 count:int photos:Vector<Photo> users:Vector<User> = photos.Photos;
-
-photos.photo#20212ca8 photo:Photo users:Vector<User> = photos.Photo;
-
-upload.file#96a18d5 type:storage.FileType mtime:int bytes:bytes = upload.File;
-
-dcOptionL28#2ec2a43c id:int hostname:string ip_address:string port:int = DcOption;
-dcOption#5d8c6cc flags:int id:int ip_address:string port:int = DcOption;
-
-config#4e32b894 date:int expires:int test_mode:Bool this_dc:int dc_options:Vector<DcOption> chat_size_max:int broadcast_size_max:int forwarded_count_max:int online_update_period_ms:int offline_blur_timeout_ms:int offline_idle_timeout_ms:int online_cloud_timeout_ms:int notify_cloud_delay_ms:int notify_default_delay_ms:int chat_big_size:int push_chat_period_ms:int push_chat_limit:int disabled_features:Vector<DisabledFeature> = Config;
-
-nearestDc#8e1a1775 country:string this_dc:int nearest_dc:int = NearestDc;
-
-help.appUpdate#8987f311 id:int critical:Bool url:string text:string = help.AppUpdate;
-help.noAppUpdate#c45a6536 = help.AppUpdate;
-
-help.inviteText#18cb9f78 message:string = help.InviteText;
-
-messages.sentMessageLink#35a1a663 id:int date:int media:MessageMedia pts:int pts_count:int links:Vector<contacts.Link> seq:int = messages.SentMessage;
-
-inputGeoChat#74d456fa chat_id:int access_hash:long = InputGeoChat;
-
-inputNotifyGeoChatPeer#4d8ddec8 geo_peer:InputGeoChat = InputNotifyPeer;
-
-geoChat#75eaea5a id:int access_hash:long title:string address:string venue:string geo:GeoPoint photo:ChatPhoto participants_count:int date:int checked_in:Bool version:int = Chat;
-
-geoChatMessageEmpty#60311a9b chat_id:int id:int = GeoChatMessage;
-geoChatMessage#4505f8e1 chat_id:int id:int from_id:int date:int message:string media:MessageMedia = GeoChatMessage;
-geoChatMessageService#d34fa24e chat_id:int id:int from_id:int date:int action:MessageAction = GeoChatMessage;
-
-geochats.statedMessage#17b1578b message:GeoChatMessage chats:Vector<Chat> users:Vector<User> seq:int = geochats.StatedMessage;
-
-geochats.located#48feb267 results:Vector<ChatLocated> messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Located;
-
-geochats.messages#d1526db1 messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-geochats.messagesSlice#bc5863e8 count:int messages:Vector<GeoChatMessage> chats:Vector<Chat> users:Vector<User> = geochats.Messages;
-
-messageActionGeoChatCreate#6f038ebc title:string address:string = MessageAction;
-messageActionGeoChatCheckin#c7d53de = MessageAction;
-
-updateNewGeoChatMessage#5a68e3f7 geo_message:GeoChatMessage = Update;
-
-wallPaperSolid#63117f24 id:int title:string bg_color:int color:int = WallPaper;
-
-updateNewEncryptedMessage#12bcbd9a encr_message:EncryptedMessage qts:int = Update;
-updateEncryptedChatTyping#1710f156 chat_id:int = Update;
-updateEncryption#b4a2e88d encr_chat:EncryptedChat date:int = Update;
-updateEncryptedMessagesRead#38fe25b7 chat_id:int max_date:int date:int = Update;
-
-encryptedChatEmpty#ab7ec0a0 id:int = EncryptedChat;
-encryptedChatWaiting#3bf703dc id:int access_hash:long date:int admin_id:int participant_id:int = EncryptedChat;
-encryptedChatRequested#c878527e id:int access_hash:long date:int admin_id:int participant_id:int g_a:bytes = EncryptedChat;
-encryptedChat#fa56ce36 id:int access_hash:long date:int admin_id:int participant_id:int g_a_or_b:bytes key_fingerprint:long = EncryptedChat;
-encryptedChatDiscarded#13d6dd27 id:int = EncryptedChat;
-
-inputEncryptedChat#f141b5e1 chat_id:int access_hash:long = InputEncryptedChat;
-
-encryptedFileEmpty#c21f497e = EncryptedFile;
-encryptedFile#4a70994c id:long access_hash:long size:int dc_id:int key_fingerprint:int = EncryptedFile;
-
-inputEncryptedFileEmpty#1837c364 = InputEncryptedFile;
-inputEncryptedFileUploaded#64bd0306 id:long parts:int md5_checksum:string key_fingerprint:int = InputEncryptedFile;
-inputEncryptedFile#5a17b5e5 id:long access_hash:long = InputEncryptedFile;
-
-inputEncryptedFileLocation#f5235d55 id:long access_hash:long = InputFileLocation;
-
-encryptedMessage#ed18c118 random_id:long chat_id:int date:int bytes:bytes file:EncryptedFile = EncryptedMessage;
-encryptedMessageService#23734b06 random_id:long chat_id:int date:int bytes:bytes = EncryptedMessage;
-
-messages.dhConfigNotModified#c0e24635 random:bytes = messages.DhConfig;
-messages.dhConfig#2c221edd g:int p:bytes version:int random:bytes = messages.DhConfig;
-
-messages.sentEncryptedMessage#560f8935 date:int = messages.SentEncryptedMessage;
-messages.sentEncryptedFile#9493ff32 date:int file:EncryptedFile = messages.SentEncryptedMessage;
-
-inputFileBig#fa4f0bb5 id:long parts:int name:string = InputFile;
-
-inputEncryptedFileBigUploaded#2dc173c8 id:long parts:int key_fingerprint:int = InputEncryptedFile;
-
-updateChatParticipantAdd#3a0eeb22 chat_id:int user_id:int inviter_id:int version:int = Update;
-updateChatParticipantDelete#6e5f8c22 chat_id:int user_id:int version:int = Update;
-updateDcOptions#8e5e9873 dc_options:Vector<DcOption> = Update;
-
-inputMediaUploadedAudio#4e498cab file:InputFile duration:int mime_type:string = InputMedia;
-inputMediaAudio#89938781 audio_id:InputAudio = InputMedia;
-inputMediaUploadedDocument#ffe76b78 file:InputFile mime_type:string attributes:Vector<DocumentAttribute> = InputMedia;
-inputMediaUploadedThumbDocument#41481486 file:InputFile thumb:InputFile mime_type:string attributes:Vector<DocumentAttribute> = InputMedia;
-inputMediaDocument#d184e841 document_id:InputDocument = InputMedia;
-
-messageMediaDocument#2fda2204 document:Document = MessageMedia;
-messageMediaAudio#c6b68300 audio:Audio = MessageMedia;
-
-inputAudioEmpty#d95adc84 = InputAudio;
-inputAudio#77d440ff id:long access_hash:long = InputAudio;
-
-inputDocumentEmpty#72f0eaae = InputDocument;
-inputDocument#18798952 id:long access_hash:long = InputDocument;
-
-inputAudioFileLocation#74dc404d id:long access_hash:long = InputFileLocation;
-inputDocumentFileLocation#4e45abe9 id:long access_hash:long = InputFileLocation;
-
-audioEmpty#586988d8 id:long = Audio;
-audio#c7ac6496 id:long access_hash:long user_id:int date:int duration:int mime_type:string size:int dc_id:int = Audio;
-
-documentEmpty#36f8c871 id:long = Document;
-document#f9a39f4f id:long access_hash:long date:int mime_type:string size:int thumb:PhotoSize dc_id:int attributes:Vector<DocumentAttribute> = Document;
-document_l19#9efc6326 id:long access_hash:long user_id:int date:int file_name:string mime_type:string size:int thumb:PhotoSize dc_id:int = Document;
-
-help.support#17c6b5f6 phone_number:string user:User = help.Support;
-
-notifyPeer#9fd40bd8 peer:Peer = NotifyPeer;
-notifyUsers#b4c83b4c = NotifyPeer;
-notifyChats#c007cec3 = NotifyPeer;
-notifyAll#74d07c60 = NotifyPeer;
-
-updateUserBlocked#80ece81a user_id:int blocked:Bool = Update;
-updateNotifySettings#bec268ef notify_peer:NotifyPeer notify_settings:PeerNotifySettings = Update;
-
-auth.sentAppCode#e325edcf phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
-
-sendMessageTypingAction#16bf744e = SendMessageAction;
-sendMessageCancelAction#fd5ec8f5 = SendMessageAction;
-sendMessageRecordVideoAction#a187d66f = SendMessageAction;
-sendMessageUploadVideoActionL27#92042ff7 = SendMessageAction;
-sendMessageUploadVideoAction#e9763aec progress:int = SendMessageAction;
-sendMessageRecordAudioAction#d52f73f7 = SendMessageAction;
-sendMessageUploadAudioActionL27#e6ac8a6f = SendMessageAction;
-sendMessageUploadAudioAction#f351d7ab progress:int = SendMessageAction;
-sendMessageUploadPhotoAction#d1d34a26 progress:int = SendMessageAction;
-sendMessageUploadDocumentActionL27#8faee98e = SendMessageAction;
-sendMessageUploadDocumentAction#aa0cd9e4 progress:int = SendMessageAction;
-sendMessageGeoLocationAction#176f8ba1 = SendMessageAction;
-sendMessageChooseContactAction#628cbc6f = SendMessageAction;
-
-contactFound#ea879f95 user_id:int = ContactFound;
-
-contacts.found#566000e results:Vector<ContactFound> users:Vector<User> = contacts.Found;
-
-updateServiceNotification#382dd3e4 type:string message_text:string media:MessageMedia popup:Bool = Update;
-
-userStatusRecently#e26f42f1 = UserStatus;
-userStatusLastWeek#7bf09fc = UserStatus;
-userStatusLastMonth#77ebc742 = UserStatus;
-
-updatePrivacy#ee3b272a key:PrivacyKey rules:Vector<PrivacyRule> = Update;
-
-inputPrivacyKeyStatusTimestamp#4f96cb18 = InputPrivacyKey;
-
-privacyKeyStatusTimestamp#bc2eab30 = PrivacyKey;
-
-inputPrivacyValueAllowContacts#d09e07b = InputPrivacyRule;
-inputPrivacyValueAllowAll#184b35ce = InputPrivacyRule;
-inputPrivacyValueAllowUsers#131cc67f users:Vector<InputUser> = InputPrivacyRule;
-inputPrivacyValueDisallowContacts#ba52007 = InputPrivacyRule;
-inputPrivacyValueDisallowAll#d66b66c9 = InputPrivacyRule;
-inputPrivacyValueDisallowUsers#90110467 users:Vector<InputUser> = InputPrivacyRule;
-
-privacyValueAllowContacts#fffe1bac = PrivacyRule;
-privacyValueAllowAll#65427b82 = PrivacyRule;
-privacyValueAllowUsers#4d5bbe0c users:Vector<int> = PrivacyRule;
-privacyValueDisallowContacts#f888fa1a = PrivacyRule;
-privacyValueDisallowAll#8b73e763 = PrivacyRule;
-privacyValueDisallowUsers#c7f49b7 users:Vector<int> = PrivacyRule;
-
-account.privacyRules#554abb6f rules:Vector<PrivacyRule> users:Vector<User> = account.PrivacyRules;
-
-accountDaysTTL#b8d0afdf days:int = AccountDaysTTL;
-
-account.sentChangePhoneCode#a4f58c4c phone_code_hash:string send_call_timeout:int = account.SentChangePhoneCode;
-
-updateUserPhone#12b9417b user_id:int phone:string = Update;
-
-documentAttributeImageSize#6c37c15c w:int h:int = DocumentAttribute;
-documentAttributeAnimated#11b58939 = DocumentAttribute;
-documentAttributeStickerL28#994c9882 alt:string = DocumentAttribute;
-documentAttributeSticker#3a556302 alt:string stickerset:InputStickerSet = DocumentAttribute;
-documentAttributeVideo#5910cccb duration:int w:int h:int = DocumentAttribute;
-documentAttributeAudio#51448e5 duration:int = DocumentAttribute;
-documentAttributeFilename#15590068 file_name:string = DocumentAttribute;
-
-messages.stickersNotModified#f1749a22 = messages.Stickers;
-messages.stickers#8a8ecd32 hash:string stickers:Vector<Document> = messages.Stickers;
-
-stickerPack#12b299d4 emoticon:string documents:Vector<long> = StickerPack;
-
-messages.allStickersNotModified#e86602c3 = messages.AllStickers;
-messages.allStickers#5ce352ec hash:string packs:Vector<StickerPack> sets:Vector<StickerSet> documents:Vector<Document> = messages.AllStickers;
-
-disabledFeature#ae636f24 feature:string description:string = DisabledFeature;
-
-updateReadHistoryInbox#9961fd5c peer:Peer max_id:int pts:int pts_count:int = Update;
-updateReadHistoryOutbox#2f2f21bf peer:Peer max_id:int pts:int pts_count:int = Update;
-
-messages.affectedMessages#84d19185 pts:int pts_count:int = messages.AffectedMessages;
-
-contactLinkUnknown#5f4f9247 = ContactLink;
-contactLinkNone#feedd3ad = ContactLink;
-contactLinkHasPhone#268f3f59 = ContactLink;
-contactLinkContact#d502c2d0 = ContactLink;
-
-updateWebPage#2cc36971 webpage:WebPage = Update;
-
-webPageEmpty#eb1477e8 id:long = WebPage;
-webPagePending#c586da1c id:long date:int = WebPage;
-webPage#a31ea0b5 flags:# id:long url:string display_url:string type:flags.0?string site_name:flags.1?string title:flags.2?string description:flags.3?string photo:flags.4?Photo embed_url:flags.5?string embed_type:flags.5?string embed_width:flags.6?int embed_height:flags.6?int duration:flags.7?int author:flags.8?string = WebPage;
-
-messageMediaWebPage#a32dd600 webpage:WebPage = MessageMedia;
-
-authorization#7bf2e6f6 hash:long flags:int device_model:string platform:string system_version:string api_id:int app_name:string app_version:string date_created:int date_active:int ip:string country:string region:string = Authorization;
-
-account.authorizations#1250abde authorizations:Vector<Authorization> = account.Authorizations;
-
-account.noPassword#96dabc18 new_salt:bytes email_unconfirmed_pattern:string = account.Password;
-account.password#7c18141c current_salt:bytes new_salt:bytes hint:string has_recovery:Bool email_unconfirmed_pattern:string = account.Password;
-
-account.passwordSettings#b7b72ab3 email:string = account.PasswordSettings;
-
-account.passwordInputSettings#bcfc532c flags:# new_salt:flags.0?bytes new_password_hash:flags.0?bytes hint:flags.0?string email:flags.1?string = account.PasswordInputSettings;
-
-auth.passwordRecovery#137948a5 email_pattern:string = auth.PasswordRecovery;
-
-inputMediaVenue#2827a81a geo_point:InputGeoPoint title:string address:string provider:string venue_id:string = InputMedia;
-
-messageMediaVenue#7912b71f geo:GeoPoint title:string address:string provider:string venue_id:string = MessageMedia;
-
-receivedNotifyMessage#a384b779 id:int flags:int = ReceivedNotifyMessage;
-
-chatInviteEmpty#69df3769 = ExportedChatInvite;
-chatInviteExported#fc2e05bc link:string = ExportedChatInvite;
-
-chatInviteAlready#5a686d7c chat:Chat = ChatInvite;
-chatInvite#ce917dcd title:string = ChatInvite;
-
-messageActionChatJoinedByLink#f89cf5e8 inviter_id:int = MessageAction;
-
-updateReadMessagesContents#68c13933 messages:Vector<int> pts:int pts_count:int = Update;
-
-inputStickerSetEmpty#ffb62b95 = InputStickerSet;
-inputStickerSetID#9de7a269 id:long access_hash:long = InputStickerSet;
-inputStickerSetShortName#861cc8a0 short_name:string = InputStickerSet;
-
-stickerSet#a7a43b17 id:long access_hash:long title:string short_name:string = StickerSet;
-
-messages.stickerSet#b60a24a6 set:StickerSet packs:Vector<StickerPack> documents:Vector<Document> = messages.StickerSet;
-
-user#22e49072 flags:# id:int access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int = User;
-
-botCommand#c27ac8c7 command:string description:string = BotCommand;
-botCommandOld#b79d22ab command:string params:string description:string = BotCommand;
-
-botInfoEmpty#bb2e37ce = BotInfo;
-botInfo#9cf585d user_id:int version:int share_text:string description:string commands:Vector<BotCommand> = BotInfo;
-
-keyboardButton#a2fa4880 text:string = KeyboardButton;
-
-keyboardButtonRow#77608b83 buttons:Vector<KeyboardButton> = KeyboardButtonRow;
-
-replyKeyboardHide#a03e5b85 flags:int = ReplyMarkup;
-replyKeyboardForceReply#f4108aa0 flags:int = ReplyMarkup;
-replyKeyboardMarkup#3502758c flags:int rows:Vector<KeyboardButtonRow> = ReplyMarkup;
-
----functions---
-
-invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
-
-invokeAfterMsgs#3dc4b4f0 {X:Type} msg_ids:Vector<long> query:!X = X;
-
-auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone;
-auth.sendCode#768d5f4d phone_number:string sms_type:int api_id:int api_hash:string lang_code:string = auth.SentCode;
-auth.sendCall#3c51564 phone_number:string phone_code_hash:string = Bool;
-auth.signUp#1b067634 phone_number:string phone_code_hash:string phone_code:string first_name:string last_name:string = auth.Authorization;
-auth.signIn#bcd51581 phone_number:string phone_code_hash:string phone_code:string = auth.Authorization;
-auth.logOut#5717da40 = Bool;
-auth.resetAuthorizations#9fab0d1a = Bool;
-auth.sendInvites#771c1d97 phone_numbers:Vector<string> message:string = Bool;
-auth.exportAuthorization#e5bfffcd dc_id:int = auth.ExportedAuthorization;
-auth.importAuthorization#e3ef9613 id:int bytes:bytes = auth.Authorization;
-auth.bindTempAuthKey#cdd42a05 perm_auth_key_id:long nonce:long expires_at:int encrypted_message:bytes = Bool;
-
-account.registerDevice#446c712c token_type:int token:string device_model:string system_version:string app_version:string app_sandbox:Bool lang_code:string = Bool;
-account.unregisterDevice#65c55b40 token_type:int token:string = Bool;
-account.updateNotifySettings#84be5b93 peer:InputNotifyPeer settings:InputPeerNotifySettings = Bool;
-account.getNotifySettings#12b3ad31 peer:InputNotifyPeer = PeerNotifySettings;
-account.resetNotifySettings#db7e1747 = Bool;
-account.updateProfile#f0888d68 first_name:string last_name:string = User;
-account.updateStatus#6628562c offline:Bool = Bool;
-account.getWallPapers#c04cfac2 = Vector<WallPaper>;
-
-users.getUsers#d91a548 id:Vector<InputUser> = Vector<User>;
-users.getFullUser#ca30a5b1 id:InputUser = UserFull;
-
-contacts.getStatuses#c4a353ee = Vector<ContactStatus>;
-contacts.getContacts#22c6aa08 hash:string = contacts.Contacts;
-contacts.importContacts#da30b32d contacts:Vector<InputContact> replace:Bool = contacts.ImportedContacts;
-contacts.getSuggested#cd773428 limit:int = contacts.Suggested;
-contacts.deleteContact#8e953744 id:InputUser = contacts.Link;
-contacts.deleteContacts#59ab389e id:Vector<InputUser> = Bool;
-contacts.block#332b49fc id:InputUser = Bool;
-contacts.unblock#e54100bd id:InputUser = Bool;
-contacts.getBlocked#f57c350f offset:int limit:int = contacts.Blocked;
-contacts.exportCard#84e53737 = Vector<int>;
-contacts.importCard#4fe196fe export_card:Vector<int> = User;
-
-messages.getMessages#4222fa74 id:Vector<int> = messages.Messages;
-messages.getDialogs#eccf1df6 offset:int max_id:int limit:int = messages.Dialogs;
-messages.getHistory#92a1df2f peer:InputPeer offset:int max_id:int limit:int = messages.Messages;
-messages.search#7e9f2ab peer:InputPeer q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = messages.Messages;
-messages.readHistory#b04f2510 peer:InputPeer max_id:int offset:int = messages.AffectedHistory;
-messages.deleteHistory#f4f8fb61 peer:InputPeer offset:int = messages.AffectedHistory;
-messages.deleteMessages#a5f18925 id:Vector<int> = messages.AffectedMessages;
-messages.receivedMessages#5a954c0 max_id:int = Vector<ReceivedNotifyMessage>;
-messages.setTyping#a3825e50 peer:InputPeer action:SendMessageAction = Bool;
-messages.sendMessage#fc55e6b5 flags:# peer:InputPeer reply_to_msg_id:flags.0?int message:string random_id:long reply_markup:flags.2?ReplyMarkup = messages.SentMessage;
-messages.sendMedia#c8f16791 flags:# peer:InputPeer reply_to_msg_id:flags.0?int media:InputMedia random_id:long reply_markup:flags.2?ReplyMarkup = Updates;
-messages.forwardMessages#55e1728d peer:InputPeer id:Vector<int> random_id:Vector<long> = Updates;
-messages.getChats#3c6aa187 id:Vector<int> = messages.Chats;
-messages.getFullChat#3b831c66 chat_id:int = messages.ChatFull;
-messages.editChatTitle#dc452855 chat_id:int title:string = Updates;
-messages.editChatPhoto#ca4c79d8 chat_id:int photo:InputChatPhoto = Updates;
-messages.addChatUser#f9a0aa09 chat_id:int user_id:InputUser fwd_limit:int = Updates;
-messages.deleteChatUser#e0611f16 chat_id:int user_id:InputUser = Updates;
-messages.createChat#9cb126e users:Vector<InputUser> title:string = Updates;
-
-updates.getState#edd4882a = updates.State;
-updates.getDifference#a041495 pts:int date:int qts:int = updates.Difference;
-
-photos.updateProfilePhoto#eef579a0 id:InputPhoto crop:InputPhotoCrop = UserProfilePhoto;
-photos.uploadProfilePhoto#d50f9c88 file:InputFile caption:string geo_point:InputGeoPoint crop:InputPhotoCrop = photos.Photo;
-photos.deletePhotos#87cf7f2f id:Vector<InputPhoto> = Vector<long>;
-
-upload.saveFilePart#b304a621 file_id:long file_part:int bytes:bytes = Bool;
-upload.getFile#e3a6cfb5 location:InputFileLocation offset:int limit:int = upload.File;
-
-help.getConfig#c4f9186b = Config;
-help.getNearestDc#1fb33026 = NearestDc;
-help.getAppUpdate#c812ac7e device_model:string system_version:string app_version:string lang_code:string = help.AppUpdate;
-help.saveAppLog#6f02f748 events:Vector<InputAppEvent> = Bool;
-help.getInviteText#a4a95186 lang_code:string = help.InviteText;
-
-photos.getUserPhotos#b7ee553c user_id:InputUser offset:int max_id:int limit:int = photos.Photos;
-
-messages.forwardMessage#33963bf9 peer:InputPeer id:int random_id:long = Updates;
-messages.sendBroadcast#bf73f4da contacts:Vector<InputUser> random_id:Vector<long> message:string media:InputMedia = Updates;
-
-geochats.getLocated#7f192d8f geo_point:InputGeoPoint radius:int limit:int = geochats.Located;
-geochats.getRecents#e1427e6f offset:int limit:int = geochats.Messages;
-geochats.checkin#55b3e8fb peer:InputGeoChat = geochats.StatedMessage;
-geochats.getFullChat#6722dd6f peer:InputGeoChat = messages.ChatFull;
-geochats.editChatTitle#4c8e2273 peer:InputGeoChat title:string address:string = geochats.StatedMessage;
-geochats.editChatPhoto#35d81a95 peer:InputGeoChat photo:InputChatPhoto = geochats.StatedMessage;
-geochats.search#cfcdc44d peer:InputGeoChat q:string filter:MessagesFilter min_date:int max_date:int offset:int max_id:int limit:int = geochats.Messages;
-geochats.getHistory#b53f7a68 peer:InputGeoChat offset:int max_id:int limit:int = geochats.Messages;
-geochats.setTyping#8b8a729 peer:InputGeoChat typing:Bool = Bool;
-geochats.sendMessage#61b0044 peer:InputGeoChat message:string random_id:long = geochats.StatedMessage;
-geochats.sendMedia#b8f0deff peer:InputGeoChat media:InputMedia random_id:long = geochats.StatedMessage;
-geochats.createGeoChat#e092e16 title:string geo_point:InputGeoPoint address:string venue:string = geochats.StatedMessage;
-
-messages.getDhConfig#26cf8950 version:int random_length:int = messages.DhConfig;
-messages.requestEncryption#f64daf43 user_id:InputUser random_id:int g_a:bytes = EncryptedChat;
-messages.acceptEncryption#3dbc0415 peer:InputEncryptedChat g_b:bytes key_fingerprint:long = EncryptedChat;
-messages.discardEncryption#edd923c5 chat_id:int = Bool;
-messages.setEncryptedTyping#791451ed peer:InputEncryptedChat typing:Bool = Bool;
-messages.readEncryptedHistory#7f4b690a peer:InputEncryptedChat max_date:int = Bool;
-messages.sendEncrypted#a9776773 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.sendEncryptedFile#9a901b66 peer:InputEncryptedChat random_id:long data:bytes file:InputEncryptedFile = messages.SentEncryptedMessage;
-messages.sendEncryptedService#32d439a4 peer:InputEncryptedChat random_id:long data:bytes = messages.SentEncryptedMessage;
-messages.receivedQueue#55a5bb66 max_qts:int = Vector<long>;
-
-upload.saveBigFilePart#de7b673d file_id:long file_part:int file_total_parts:int bytes:bytes = Bool;
-
-initConnection#69796de9 {X:Type} api_id:int device_model:string system_version:string app_version:string lang_code:string query:!X = X;
-
-help.getSupport#9cdf08cd = help.Support;
-
-auth.sendSms#da9f3e8 phone_number:string phone_code_hash:string = Bool;
-
-messages.readMessageContents#36a73f77 id:Vector<int> = messages.AffectedMessages;
-
-account.checkUsername#2714d86c username:string = Bool;
-account.updateUsername#3e0bdd7c username:string = User;
-
-contacts.search#11f812d8 q:string limit:int = contacts.Found;
-
-account.getPrivacy#dadbc950 key:InputPrivacyKey = account.PrivacyRules;
-account.setPrivacy#c9f81ce8 key:InputPrivacyKey rules:Vector<InputPrivacyRule> = account.PrivacyRules;
-account.deleteAccount#418d4e0b reason:string = Bool;
-account.getAccountTTL#8fc711d = AccountDaysTTL;
-account.setAccountTTL#2442485e ttl:AccountDaysTTL = Bool;
-
-invokeWithLayer#da9b0d0d {X:Type} layer:int query:!X = X;
-
-contacts.resolveUsername#bf0131c username:string = User;
-
-account.sendChangePhoneCode#a407a8f4 phone_number:string = account.SentChangePhoneCode;
-account.changePhone#70c32edb phone_number:string phone_code_hash:string phone_code:string = User;
-
-messages.getStickers#ae22e045 emoticon:string hash:string = messages.Stickers;
-messages.getAllStickers#aa3bc868 hash:string = messages.AllStickers;
-
-account.updateDeviceLocked#38df3532 period:int = Bool;
-
-auth.importBotAuthorization#67a3ff2c flags:int api_id:int api_hash:string bot_auth_token:string = auth.Authorization;
-
-messages.getWebPagePreview#25223e24 message:string = MessageMedia;
-
-account.getAuthorizations#e320c158 = account.Authorizations;
-account.resetAuthorization#df77f3bc hash:long = Bool;
-account.getPassword#548a30f5 = account.Password;
-account.getPasswordSettings#bc8d11bb current_password_hash:bytes = account.PasswordSettings;
-account.updatePasswordSettings#fa7c4b86 current_password_hash:bytes new_settings:account.PasswordInputSettings = Bool;
-
-auth.checkPassword#a63011e password_hash:bytes = auth.Authorization;
-auth.requestPasswordRecovery#d897bc66 = auth.PasswordRecovery;
-auth.recoverPassword#4ea56e92 code:string = auth.Authorization;
-
-invokeWithoutUpdates#bf9459b7 {X:Type} query:!X = X;
-
-messages.exportChatInvite#7d885289 chat_id:int = ExportedChatInvite;
-messages.checkChatInvite#3eadb1bb hash:string = ChatInvite;
-messages.importChatInvite#6c50051c hash:string = Updates;
-messages.getStickerSet#2619a90e stickerset:InputStickerSet = messages.StickerSet;
-messages.installStickerSet#efbbfae9 stickerset:InputStickerSet = Bool;
-messages.uninstallStickerSet#f96e55de stickerset:InputStickerSet = Bool;
-messages.startBot#1b3e0ffc bot:InputUser chat_id:int random_id:long start_param:string = Updates;
diff --git a/protocols/Telegram/docs/tgl/wingetopt.c b/protocols/Telegram/docs/tgl/wingetopt.c
deleted file mode 100644
index 09dac17a4f..0000000000
--- a/protocols/Telegram/docs/tgl/wingetopt.c
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
-POSIX getopt for Windows
-
-AT&T Public License
-
-Code given out at the 1985 UNIFORUM conference in Dallas.
-*/
-
-#ifndef __GNUC__
-
-#include "wingetopt.h"
-#include <stdio.h>
-#include <string.h>
-
-#ifndef NULL
-#define NULL 0
-#endif
-#define EOF (-1)
-#define ERR(s, c) if(opterr){\
- char errbuf[2];\
- errbuf[0] = c; errbuf[1] = '\n';\
- fputs(argv[0], stderr);\
- fputs(s, stderr);\
- fputc(c, stderr);}
-//(void) write(2, argv[0], (unsigned)strlen(argv[0]));\
- //(void) write(2, s, (unsigned)strlen(s));\
- //(void) write(2, errbuf, 2);}
-
-int opterr = 1;
-int optind = 1;
-int optopt;
-char *optarg;
-
-int
-getopt(argc, argv, opts)
-int argc;
-char **argv, *opts;
-{
- static int sp = 1;
- register int c;
- register char *cp;
-
- if (sp == 1)
- if (optind >= argc ||
- argv[optind][0] != '-' || argv[optind][1] == '\0')
- return(EOF);
- else if (strcmp(argv[optind], "--") == (int)NULL) {
- optind++;
- return(EOF);
- }
- optopt = c = argv[optind][sp];
- if (c == ':' || (cp = strchr(opts, c)) == NULL) {
- ERR(": illegal option -- ", c);
- if (argv[optind][++sp] == '\0') {
- optind++;
- sp = 1;
- }
- return('?');
- }
- if (*++cp == ':') {
- if (argv[optind][sp + 1] != '\0')
- optarg = &argv[optind++][sp + 1];
- else if (++optind >= argc) {
- ERR(": option requires an argument -- ", c);
- sp = 1;
- return('?');
- }
- else
- optarg = argv[optind++];
- sp = 1;
- }
- else {
- if (argv[optind][++sp] == '\0') {
- sp = 1;
- optind++;
- }
- optarg = NULL;
- }
- return(c);
-}
-
-#endif /* __GNUC__ */ \ No newline at end of file
diff --git a/protocols/Telegram/docs/tgl/wingetopt.h b/protocols/Telegram/docs/tgl/wingetopt.h
deleted file mode 100644
index 4372c66011..0000000000
--- a/protocols/Telegram/docs/tgl/wingetopt.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
-POSIX getopt for Windows
-
-AT&T Public License
-
-Code given out at the 1985 UNIFORUM conference in Dallas.
-*/
-
-#ifdef __GNUC__
-#include <getopt.h>
-#endif
-#ifndef __GNUC__
-
-#ifndef _WINGETOPT_H_
-#define _WINGETOPT_H_
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
- extern int opterr;
- extern int optind;
- extern int optopt;
- extern char *optarg;
- extern int getopt(int argc, char **argv, char *opts);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _GETOPT_H_ */
-#endif /* __GNUC__ */ \ No newline at end of file
diff --git a/protocols/Telegram/res/version.rc b/protocols/Telegram/res/version.rc
deleted file mode 100644
index fdeb14668c..0000000000
--- a/protocols/Telegram/res/version.rc
+++ /dev/null
@@ -1,55 +0,0 @@
-// Microsoft Visual C++ generated resource script.
-//
-#ifdef APSTUDIO_INVOKED
-#error this file is not editable by Microsoft Visual C++
-#endif //APSTUDIO_INVOKED
-
-#include "..\src\version.h"
-
-#define APSTUDIO_READONLY_SYMBOLS
-#include "afxres.h"
-#undef APSTUDIO_READONLY_SYMBOLS
-
-/////////////////////////////////////////////////////////////////////////////
-// English (U.S.) resources
-
-#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
-#ifdef _WIN32
-LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
-#pragma code_page(1252)
-#endif //_WIN32
-
-VS_VERSION_INFO VERSIONINFO
- FILEVERSION __FILEVERSION_STRING
- PRODUCTVERSION __FILEVERSION_STRING
- FILEFLAGSMASK 0x17L
-#ifdef _DEBUG
- FILEFLAGS 0x1L
-#else
- FILEFLAGS 0x0L
-#endif
- FILEOS 0x4L
- FILETYPE 0x2L
- FILESUBTYPE 0x0L
-BEGIN
- BLOCK "StringFileInfo"
- BEGIN
- BLOCK "000004b0"
- BEGIN
- VALUE "Author", __AUTHOR
- VALUE "FileDescription", __DESCRIPTION
- VALUE "FileVersion", __VERSION_STRING
- VALUE "InternalName", __PLUGIN_NAME
- VALUE "LegalCopyright", __COPYRIGHT
- VALUE "OriginalFilename", __FILENAME
- VALUE "ProductName", __PLUGIN_NAME
- END
- END
- BLOCK "VarFileInfo"
- BEGIN
- VALUE "Translation", 0x0, 1200
- END
-END
-
-#endif // English (U.S.) resources
-/////////////////////////////////////////////////////////////////////////////
diff --git a/protocols/Telegram/src/main.cpp b/protocols/Telegram/src/main.cpp
deleted file mode 100644
index 4ddaf55d29..0000000000
--- a/protocols/Telegram/src/main.cpp
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
-Copyright (c) 2015 Miranda NG project (https://miranda-ng.org)
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation version 2
-of the License.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "stdafx.h"
-
-#include <delayimp.h>
-#pragma comment(lib, "delayimp.lib")
-
-FARPROC WINAPI delayHook(unsigned dliNotify, PDelayLoadInfo dli)
-{
- switch (dliNotify)
- {
- case dliNotePreLoadLibrary:
- return (FARPROC)LoadLibraryA(dli->szDll);
- }
- return NULL;
-}
-
-extern "C" PfnDliHook __pfnDliNotifyHook2 = delayHook;
-
-
-int hLangpack;
-HINSTANCE g_hInstance;
-CLIST_INTERFACE *pcli;
-char g_szMirVer[100];
-HANDLE hQueue;
-
-PLUGININFOEX pluginInfo =
-{
- sizeof(PLUGININFOEX),
- __PLUGIN_NAME,
- PLUGIN_MAKE_VERSION(__MAJOR_VERSION, __MINOR_VERSION, __RELEASE_NUM, __BUILD_NUM),
- __DESCRIPTION,
- __AUTHOR,
- __AUTHOREMAIL,
- __COPYRIGHT,
- __AUTHORWEB,
- UNICODE_AWARE,
- // {43F56D31-CB19-471A-8A8A-91FD6E9A3741}
- { 0x43f56d31, 0xcb19, 0x471a, { 0x8a, 0x8a, 0x91, 0xfd, 0x6e, 0x9a, 0x37, 0x41 } }
-
-};
-
-DWORD WINAPI DllMain(HINSTANCE hInstance, DWORD, LPVOID)
-{
- g_hInstance = hInstance;
-
- return TRUE;
-}
-
-extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD)
-{
- return &pluginInfo;
-}
-
-extern "C" __declspec(dllexport) const MUUID MirandaInterfaces[] = { MIID_PROTOCOL, MIID_LAST };
-
-extern "C" int __declspec(dllexport) Load(void)
-{
- hQueue = CreateTimerQueue();
- mir_getLP(&pluginInfo);
- mir_getCLI();
-
- CallService(MS_SYSTEM_GETVERSIONTEXT, sizeof(g_szMirVer), LPARAM(g_szMirVer));
-
- PROTOCOLDESCRIPTOR pd = { 0 };
- pd.cbSize = sizeof(pd);
- pd.szName = MODULE;
- pd.type = PROTOTYPE_PROTOCOL;
- pd.fnInit = (pfnInitProto)CTelegramProto::InitAccount;
- pd.fnUninit = (pfnUninitProto)CTelegramProto::UninitAccount;
- Proto_RegisterModule(&pd);
-
-
- HookEvent(ME_SYSTEM_MODULESLOADED, &CTelegramProto::OnModulesLoaded);
-
- return 0;
-}
-
-extern "C" int __declspec(dllexport) Unload(void)
-{
- DeleteTimerQueue(hQueue);
- return 0;
-}
-
-
-int CTelegramProto::OnModulesLoaded(WPARAM, LPARAM)
-{
- return 0;
-} \ No newline at end of file
diff --git a/protocols/Telegram/src/stdafx.cxx b/protocols/Telegram/src/stdafx.cxx
deleted file mode 100644
index 1577c4e3bc..0000000000
--- a/protocols/Telegram/src/stdafx.cxx
+++ /dev/null
@@ -1 +0,0 @@
-#include "stdafx.h" \ No newline at end of file
diff --git a/protocols/Telegram/src/stdafx.h b/protocols/Telegram/src/stdafx.h
deleted file mode 100644
index 43047dfb4a..0000000000
--- a/protocols/Telegram/src/stdafx.h
+++ /dev/null
@@ -1,74 +0,0 @@
-#ifndef _STDAFX_H_
-#define _STDAFX_H_
-
-#include "../../../miranda-private-keys/Telegram/api.h"
-
-#include <windows.h>
-#include <time.h>
-#include <string>
-#include <vector>
-#include <regex>
-#include <map>
-#include <thread>
-
-#include <newpluginapi.h>
-
-#include <m_protoint.h>
-#include <m_protosvc.h>
-
-#include <m_database.h>
-#include <m_langpack.h>
-#include <m_clist.h>
-#include <m_options.h>
-#include <m_netlib.h>
-#include <m_popup.h>
-#include <m_icolib.h>
-#include <m_userinfo.h>
-#include <m_addcontact.h>
-#include <m_message.h>
-#include <m_avatars.h>
-#include <m_skin.h>
-#include <m_chat.h>
-#include <m_genmenu.h>
-#include <m_clc.h>
-#include <m_string.h>
-#include <m_json.h>
-#include <m_gui.h>
-#include <m_imgsrvc.h>
-#include <m_xml.h>
-#include <m_assocmgr.h>
-#include <m_file.h>
-
-extern "C"
-{
- #include "tgl/tgl.h"
- #include "tgl/tgl-net.h"
- #include "tgl/tgl-timers.h"
- #include "tgl/tgl-binlog.h"
- #include "tgl/config.h"
- #include "tgl/mtproto-client.h"
-}
-
-
-struct MirTLS : public tgl_state, public MZeroedObject
-{
- struct CTelegramProto *m_proto;
- MirTLS(CTelegramProto *p) : m_proto(p) {}
-};
-
-#include "version.h"
-#include "t_proto.h"
-#include "t_network.h"
-#include "t_callback.h"
-
-extern char g_szMirVer[];
-extern HANDLE hQueue;
-
-#define MODULE "Telegram"
-
-struct CTelegramProto;
-
-
-
-
-#endif //_STDAFX_H_ \ No newline at end of file
diff --git a/protocols/Telegram/src/t_accounts.cpp b/protocols/Telegram/src/t_accounts.cpp
deleted file mode 100644
index ff01247e25..0000000000
--- a/protocols/Telegram/src/t_accounts.cpp
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
-Copyright (c) 2015 Miranda NG project (https://miranda-ng.org)
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation version 2
-of the License.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "stdafx.h"
-
-LIST<CTelegramProto> CTelegramProto::Accounts(1, CTelegramProto::CompareAccounts);
-mir_cs CTelegramProto::accountsLock;
-
-int CTelegramProto::CompareAccounts(const CTelegramProto *p1, const CTelegramProto *p2)
-{
- return mir_tstrcmp(p1->m_tszUserName, p2->m_tszUserName);
-}
-
-CTelegramProto* CTelegramProto::InitAccount(const char *protoName, const wchar_t *userName)
-{
- mir_cslock lck(accountsLock);
- CTelegramProto *proto = new CTelegramProto(protoName, userName);
- Accounts.insert(proto);
- return proto;
-}
-
-int CTelegramProto::UninitAccount(CTelegramProto *proto)
-{
- mir_cslock lck(accountsLock);
- Accounts.remove(proto);
- delete proto;
- return 0;
-}
-
-CTelegramProto* CTelegramProto::GetContactAccount(MCONTACT hContact)
-{
- mir_cslock lck(accountsLock);
- for (int i = 0; i < Accounts.getCount(); i++)
- if (mir_strcmpi(GetContactProto(hContact), Accounts[i]->m_szModuleName) == 0)
- return Accounts[i];
- return NULL;
-}
-
-/*INT_PTR CTelegramProto::OnAccountManagerInit(WPARAM, LPARAM lParam)
-{
-// return (INT_PTR)(CTelegramOptionsMain::CreateAccountManagerPage(this, (HWND)lParam))->GetHwnd();
-}*/ \ No newline at end of file
diff --git a/protocols/Telegram/src/t_callback.cpp b/protocols/Telegram/src/t_callback.cpp
deleted file mode 100644
index 1e097fc1e9..0000000000
--- a/protocols/Telegram/src/t_callback.cpp
+++ /dev/null
@@ -1,61 +0,0 @@
-#include "stdafx.h"
-
-static void update_message_handler(tgl_state *TLS, tgl_message *msg)
-{
- ((MirTLS*)TLS)->m_proto->OnMessage(msg);
-}
-
-static void user_typing(tgl_state *TLS, tgl_user *U, enum tgl_typing_status status)
-{
- ((MirTLS*)TLS)->m_proto->OnUserTyping(U, status);
-}
-
-static void on_login_success(tgl_state *TLS)
-{
-// write_auth_file(TLS);
-}
-
-static void on_login_failed(tgl_state *TLS)
-{
-
-}
-
-static void on_ready(tgl_state *TLS)
-{
- tgl_do_update_contact_list(TLS, 0, 0);
-}
-
-void request_value(struct tgl_state *TLS, enum tgl_value_type type, const char *prompt, int num_values,
- void(*callback) (struct tgl_state *TLS, const char *string[], void *arg), void *arg)
-{
- char *result = nullptr;
- ((MirTLS*)TLS)->m_proto->TGLGetValue(type, prompt, num_values, &result);
- callback(TLS, (const char**)&result, arg);
-}
-
-static void logprintf(const char *fmt, ...)
-{
- CMStringA str("[Telegram]: ");
- va_list args;
- va_start(args, fmt);
- str.AppendFormatV(fmt, args);
- va_end(args);
- CallService(MS_NETLIB_LOG, 0, (LPARAM)str.GetString());
-}
-
-void CTelegramProto::InitCallbacks()
-{
- tgl_update_callback cb = { 0 };
- cb.new_msg = update_message_handler;
- cb.msg_receive = update_message_handler;
- cb.logprintf = logprintf;
- cb.type_notification = user_typing;
- cb.logged_in = on_login_success;
- cb.started = on_ready;
- cb.get_values = request_value;
-
-
-
- tgl_set_callback(TLS, &cb);
-
-} \ No newline at end of file
diff --git a/protocols/Telegram/src/t_callback.h b/protocols/Telegram/src/t_callback.h
deleted file mode 100644
index d3f5a12faa..0000000000
--- a/protocols/Telegram/src/t_callback.h
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/protocols/Telegram/src/t_messages.cpp b/protocols/Telegram/src/t_messages.cpp
deleted file mode 100644
index f3aa404f9a..0000000000
--- a/protocols/Telegram/src/t_messages.cpp
+++ /dev/null
@@ -1,9 +0,0 @@
-#include "stdafx.h"
-
-void CTelegramProto::OnMessage(tgl_message *msg)
-{
-}
-
-void CTelegramProto::OnUserTyping(tgl_user *U, tgl_typing_status status)
-{
-} \ No newline at end of file
diff --git a/protocols/Telegram/src/t_messages.h b/protocols/Telegram/src/t_messages.h
deleted file mode 100644
index e69de29bb2..0000000000
--- a/protocols/Telegram/src/t_messages.h
+++ /dev/null
diff --git a/protocols/Telegram/src/t_network.cpp b/protocols/Telegram/src/t_network.cpp
deleted file mode 100644
index 8837883a72..0000000000
--- a/protocols/Telegram/src/t_network.cpp
+++ /dev/null
@@ -1,629 +0,0 @@
-#include "stdafx.h"
-
-#define PING_TIMEOUT 10
-
-/*static void start_ping_timer(connection *c);
-
-void __stdcall ping_alarm(PVOID arg, BOOLEAN TimerOrWaitFired)
-{
- struct connection *c = (connection*)arg;
- if (tglt_get_double_time() - c->last_receive_time > 6 * PING_TIMEOUT)
- {
- c->TLS->callback.logprintf("fail connection: reason: ping timeout");
- }
- else if (tglt_get_double_time() - c->last_receive_time > 3 * PING_TIMEOUT)
- {
- tgl_do_send_ping(c->TLS, c);
- start_ping_timer(c);
- }
- else
- {
- start_ping_timer(c);
- }
-}
-
-static void start_ping_timer(connection *c)
-{
- CreateTimerQueueTimer(&c->ping_timer, hQueue, ping_alarm, c, PING_TIMEOUT * 1000, 0, 0);
-}
-
-static void stop_ping_timer(struct connection *c)
-{
- DeleteTimerQueueTimer(hQueue, c->ping_timer, 0);
- c->ping_timer = 0;
-}
-
-
-int mtgln_write_out(struct connection *c, const void *_data, int len)
-{
- return Netlib_Send(c->hNetlibConn, (char*)_data, len, 0);
-}
-
-int mtgln_read_in(struct connection *c, void *_data, int len)
-{
- return Netlib_Recv(c->hNetlibConn, (char*)_data, len, 0);
-}
-
-int mtgln_read_in_lookup(struct connection *c, void *_data, int len)
-{
- return Netlib_Recv(c->hNetlibConn, (char*)_data, len, MSG_PEEK);
-}
-
-connection* mtgln_create_connection(struct tgl_state *TLS, const char *host, int port, struct tgl_session *session, struct tgl_dc *dc, struct mtproto_methods *methods)
-{
- connection *conn = new connection;
- conn->TLS = TLS;
- conn->ip = mir_strdup(host);
- conn->port = port;
- conn->dc = dc;
- conn->session = session;
- conn->methods = methods;
-
- NETLIBOPENCONNECTION nloc = { sizeof(nloc) };
- nloc.szHost = conn->ip;
- nloc.wPort = port;
-
- if (!(conn->hNetlibConn = (HANDLE)CallService(MS_NETLIB_OPENCONNECTION, (WPARAM)((MirTLS*)TLS)->m_proto->m_hNetlibUser, (LPARAM)&nloc)))
- {
- delete conn;
- return 0;
- }
-
- char b = 0xfe;
- mtgln_write_out(conn, &b, 1);
-
- conn->last_receive_time = tglt_get_double_time();
- start_ping_timer(conn);
-
- return conn;
-}
-
-static void incr_out_packet_num(struct connection *c) {
-}
-
-static struct tgl_dc *get_dc(struct connection *c) {
- return c->dc;
-}
-
-static struct tgl_session *get_session(struct connection *c) {
- return c->session;
-}
-
-static void tgln_free(struct connection *c)
-{
- Netlib_CloseHandle(c->hNetlibConn);
- mir_free(c->ip);
- delete c;
-}
-
-void mtgln_flush_out(struct connection *c) {
-}*/
-
-#define vlogprintf(verbosity_level,...) \
-do { \
-if (TLS->verbosity >= verbosity_level) {\
- TLS->callback.logprintf(__VA_ARGS__); \
-} \
-} while (0)
-
-#define assert(x) x
-
-
-
-static void fail_connection(struct connection *c);
-
-#define PING_TIMEOUT 10
-
-static void start_ping_timer(struct connection *c);
-
-void __stdcall ping_alarm(PVOID arg, BOOLEAN TimerOrWaitFired)
-{
- struct connection *c = (connection*)arg;
- if (tglt_get_double_time() - c->last_receive_time > 6 * PING_TIMEOUT)
- {
- c->TLS->callback.logprintf("fail connection: reason: ping timeout");
- }
- else if (tglt_get_double_time() - c->last_receive_time > 3 * PING_TIMEOUT)
- {
- tgl_do_send_ping(c->TLS, c);
- start_ping_timer(c);
- }
- else
- {
- start_ping_timer(c);
- }
-}
-
-static void start_ping_timer(connection *c)
-{
- CreateTimerQueueTimer(&c->ping_timer, hQueue, ping_alarm, c, PING_TIMEOUT * 1000, 0, 0);
-}
-
-static void stop_ping_timer(struct connection *c)
-{
- DeleteTimerQueueTimer(hQueue, c->ping_timer, 0);
- c->ping_timer = 0;
-}
-
-static void restart_connection(struct connection *c);
-
-void __stdcall fail_alarm(PVOID arg, BOOLEAN TimerOrWaitFired)
-{
- struct connection *c = (connection*)arg;
- c->in_fail_timer = 0;
- restart_connection(c);
-}
-
-static void start_fail_timer(struct connection *c) {
- if (c->in_fail_timer) { return; }
- CreateTimerQueueTimer(&c->in_fail_timer, hQueue, fail_alarm, c, PING_TIMEOUT * 1000, 0, 0);
-}
-
-connection_buffer *new_connection_buffer(int size) {
- connection_buffer *b = (connection_buffer*)talloc0(sizeof(*b));
- b->start = (PBYTE)talloc(size);
- b->end = b->start + size;
- b->rptr = b->wptr = b->start;
- return b;
-}
-
-static void delete_connection_buffer(struct connection_buffer *b) {
- tfree(b->start, b->end - b->start);
- tfree(b, sizeof (*b));
-}
-
-int mtgln_write_out(struct connection *c, const void *_data, int len)
-{
- struct tgl_state *TLS = c->TLS;
- vlogprintf(E_DEBUG, "write_out: %d bytes\n", len);
- const unsigned char *data = (PBYTE)_data;
- if (!len) { return 0; }
- assert(len > 0);
- int x = 0;
- if (!c->out_bytes) {
- NotifyEventHooks(c->write_ev, (WPARAM)c);
- }
- if (!c->out_head) {
- struct connection_buffer *b = new_connection_buffer(1 << 20);
- c->out_head = c->out_tail = b;
- }
- while (len) {
- if (c->out_tail->end - c->out_tail->wptr >= len) {
- memcpy(c->out_tail->wptr, data, len);
- c->out_tail->wptr += len;
- c->out_bytes += len;
- return x + len;
- }
- else {
- int y = c->out_tail->end - c->out_tail->wptr;
- assert(y < len);
- memcpy(c->out_tail->wptr, data, y);
- x += y;
- len -= y;
- data += y;
- struct connection_buffer *b = new_connection_buffer(1 << 20);
- c->out_tail->next = b;
- b->next = 0;
- c->out_tail = b;
- c->out_bytes += y;
- }
- }
- return x;
-}
-
-int tgln_read_in(struct connection *c, void *_data, int len) {
- unsigned char *data = (PBYTE)_data;
- if (!len) { return 0; }
- assert(len > 0);
- if (len > c->in_bytes) {
- len = c->in_bytes;
- }
- int x = 0;
- while (len) {
- int y = c->in_head->wptr - c->in_head->rptr;
- if (y > len) {
- memcpy(data, c->in_head->rptr, len);
- c->in_head->rptr += len;
- c->in_bytes -= len;
- return x + len;
- }
- else {
- memcpy(data, c->in_head->rptr, y);
- c->in_bytes -= y;
- x += y;
- data += y;
- len -= y;
- void *old = c->in_head;
- c->in_head = c->in_head->next;
- if (!c->in_head) {
- c->in_tail = 0;
- }
- delete_connection_buffer((connection_buffer*)old);
- }
- }
- return x;
-}
-
-int tgln_read_in_lookup(struct connection *c, void *_data, int len) {
- unsigned char *data = (PBYTE)_data;
- if (!len || !c->in_bytes) { return 0; }
- assert(len > 0);
- if (len > c->in_bytes) {
- len = c->in_bytes;
- }
- int x = 0;
- struct connection_buffer *b = c->in_head;
- while (len) {
- int y = b->wptr - b->rptr;
- if (y >= len) {
- memcpy(data, b->rptr, len);
- return x + len;
- }
- else {
- memcpy(data, b->rptr, y);
- x += y;
- data += y;
- len -= y;
- b = b->next;
- }
- }
- return x;
-}
-
-static void try_write(struct connection *c);
-
-void tgln_flush_out(struct connection *c)
-{
-// try_write(c);
-}
-
-#define MAX_CONNECTIONS 100
-static struct connection *Connections[MAX_CONNECTIONS];
-static int max_connection_fd;
-
-static void rotate_port(struct connection *c) {
- switch (c->port) {
- case 443:
- c->port = 80;
- break;
- case 80:
- c->port = 25;
- break;
- case 25:
- c->port = 443;
- break;
- }
-}
-
-static void try_read(struct connection *c);
-static void try_write(struct connection *c);
-
-
-void __stdcall conn_try_read(void *param, BYTE){
- struct connection *c = (connection*)param;
- struct tgl_state *TLS = c->TLS;
- vlogprintf(E_DEBUG + 1, "Try read. Fd = %d\n", c->hNetlibConn);
- try_read(c);
-}
-
-static int conn_try_write(WPARAM w, LPARAM)
-{
- struct connection *c = (connection*)w;
- struct tgl_state *TLS = c->TLS;
- if (c->state == conn_connecting) {
- c->state = conn_ready;
- c->methods->ready(TLS, c);
- }
- try_write(c);
- if (c->out_bytes) {
- NotifyEventHooks(c->write_ev, (WPARAM)c);
- }
- return 0;
-}
-
-struct connection *tgln_create_connection(struct tgl_state *TLS, const char *host, int port, struct tgl_session *session, struct tgl_dc *dc, struct mtproto_methods *methods)
-{
- struct connection *c = new connection;
- c->TLS = TLS;
- c->ip = tstrdup(host);
- c->port = port;
-
-
- NETLIBOPENCONNECTION nloc = { sizeof(nloc) };
- nloc.szHost = c->ip;
- nloc.wPort = port;
-
- if (!(c->hNetlibConn = (HANDLE)CallService(MS_NETLIB_OPENCONNECTION, (WPARAM)((MirTLS*)TLS)->m_proto->m_hNetlibUser, (LPARAM)&nloc)))
- {
- delete c;
- return 0;
- }
-
- c->state = conn_connecting;
- c->last_receive_time = tglt_get_double_time();
- c->flags = 0;
-
- char szTmp[2048] = "TGL_NET_TMPHOOK/";
- char *dst = &szTmp[strlen(szTmp)];
- MUUID uuid;
- CoCreateGuid((GUID*)&uuid);
- mir_snprintf(dst, 2048 - strlen(szTmp) - 1, "{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
- uuid.a, uuid.b, uuid.c, uuid.d[0], uuid.d[1], uuid.d[2], uuid.d[3], uuid.d[4], uuid.d[5], uuid.d[6], uuid.d[7]);
-
- c->write_ev = CreateHookableEvent(szTmp);
- HookEvent(szTmp, conn_try_write);
-
-
-
-
-
- //CoCreateGuid((GUID*)&uuid);
- //mir_snprintf(dst, 2048 - strlen(szTmp) - 1, "{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
- // uuid.a, uuid.b, uuid.c, uuid.d[0], uuid.d[1], uuid.d[2], uuid.d[3], uuid.d[4], uuid.d[5], uuid.d[6], uuid.d[7]);
- //
- //c->read_ev = CreateHookableEvent(szTmp);
- //HookEvent(szTmp, conn_try_read);
-
-
- start_ping_timer(c);
-
- c->dc = dc;
- c->session = session;
- c->methods = methods;
-
- char byte = 0xef;
- assert(mtgln_write_out(c, &byte, 1) == 1);
- tgln_flush_out(c);
-
- CreateTimerQueueTimer(&c->write_ev, hQueue, conn_try_read, c, 1, 5000, 0);
-
- return c;
-}
-
-static void restart_connection(struct connection *c)
-{
- struct tgl_state *TLS = c->TLS;
-
- if (c->last_connect_time == time(0)) {
- start_fail_timer(c);
- return;
- }
-
- c->state = conn_connecting;
- c->last_receive_time = tglt_get_double_time();
-
- Netlib_CloseHandle(c->hNetlibConn);
-
- NETLIBOPENCONNECTION nloc = { sizeof(nloc) };
- nloc.szHost = c->ip;
- nloc.wPort = c->port;
-
- c->hNetlibConn = (HANDLE)CallService(MS_NETLIB_OPENCONNECTION, (WPARAM)((MirTLS*)TLS)->m_proto->m_hNetlibUser, (LPARAM)&nloc);
-
- char byte = 0xef;
- assert(mtgln_write_out(c, &byte, 1) == 1);
- tgln_flush_out(c);
-}
-
-static void fail_connection(struct connection *c)
-{
- struct tgl_state *TLS = c->TLS;
- if (c->state == conn_ready || c->state == conn_connecting) {
- stop_ping_timer(c);
- }
-
-// DestroyHookableEvent(c->read_ev);
-
- rotate_port(c);
- struct connection_buffer *b = c->out_head;
- while (b) {
- struct connection_buffer *d = b;
- b = b->next;
- delete_connection_buffer(d);
- }
- b = c->in_head;
- while (b) {
- struct connection_buffer *d = b;
- b = b->next;
- delete_connection_buffer(d);
- }
- c->out_head = c->out_tail = c->in_head = c->in_tail = 0;
- c->state = conn_failed;
- c->out_bytes = c->in_bytes = 0;
-
- Netlib_CloseHandle(c->hNetlibConn);
-
- vlogprintf(E_NOTICE, "Lost connection to server... %s:%d\n", c->ip, c->port);
- restart_connection(c);
-}
-
-//extern FILE *log_net_f;
-static void try_write(struct connection *c)
-{
- struct tgl_state *TLS = c->TLS;
- vlogprintf(E_DEBUG, "try write: fd = %d\n", c->hNetlibConn);
- int x = 0;
- while (c->out_head) {
- int r = Netlib_Send(c->hNetlibConn, (char*)c->out_head->rptr, c->out_head->wptr - c->out_head->rptr, MSG_RAW);
- if (r != SOCKET_ERROR) {
-
- x += r;
- c->out_head->rptr += r;
- if (c->out_head->rptr != c->out_head->wptr) {
- break;
- }
- struct connection_buffer *b = c->out_head;
- c->out_head = b->next;
- if (!c->out_head) {
- c->out_tail = 0;
- }
- delete_connection_buffer(b);
- }
- else {
- if (/*WSAGetLastError() != EAGAIN && */WSAGetLastError() != WSAEWOULDBLOCK) {
- vlogprintf(E_NOTICE, "fail_connection: write_error %s\n", GetLastErrorStr(WSAGetLastError()));
- fail_connection(c);
- return;
- }
- else {
- break;
- }
- }
- }
- vlogprintf(E_DEBUG, "Sent %d bytes to %d\n", x, c->hNetlibConn);
- c->out_bytes -= x;
-}
-
-static void try_rpc_read(struct connection *c) {
- assert(c->in_head);
- struct tgl_state *TLS = c->TLS;
-
- while (1) {
- if (c->in_bytes < 1) { return; }
- unsigned len = 0;
- unsigned t = 0;
- assert(tgln_read_in_lookup(c, &len, 1) == 1);
- if (len >= 1 && len <= 0x7e) {
- if (c->in_bytes < (int)(1 + 4 * len)) { return; }
- }
- else {
- if (c->in_bytes < 4) { return; }
- assert(tgln_read_in_lookup(c, &len, 4) == 4);
- len = (len >> 8);
- if (c->in_bytes < (int)(4 + 4 * len)) { return; }
- len = 0x7f;
- }
-
- if (len >= 1 && len <= 0x7e) {
- assert(tgln_read_in(c, &t, 1) == 1);
- assert(t == len);
- assert(len >= 1);
- }
- else {
- assert(len == 0x7f);
- assert(tgln_read_in(c, &len, 4) == 4);
- len = (len >> 8);
- assert(len >= 1);
- }
- len *= 4;
- int op;
- assert(tgln_read_in_lookup(c, &op, 4) == 4);
- if (c->methods->execute(TLS, c, op, len) < 0) {
- return;
- }
- }
-}
-
-static void try_read(struct connection *c) {
- struct tgl_state *TLS = c->TLS;
- vlogprintf(E_DEBUG, "try read: fd = %d\n", c->hNetlibConn);
- if (!c->in_tail) {
- c->in_head = c->in_tail = new_connection_buffer(1 << 20);
- }
-#ifdef EVENT_V1
- struct timeval tv = { 5, 0 };
- event_add(c->read_ev, &tv);
-#endif
- int x = 0;
- while (1) {
- int r = Netlib_Recv(c->hNetlibConn, (char*)c->in_tail->wptr, c->in_tail->end - c->in_tail->wptr, MSG_RAW);
- if (r != SOCKET_ERROR) {
- c->last_receive_time = tglt_get_double_time();
- stop_ping_timer(c);
- start_ping_timer(c);
- }
- if (r >= 0) {
- c->in_tail->wptr += r;
- x += r;
- if (c->in_tail->wptr != c->in_tail->end) {
- break;
- }
- struct connection_buffer *b = new_connection_buffer(1 << 20);
- c->in_tail->next = b;
- c->in_tail = b;
- }
- else {
- if (/*WSAGetLastError() != EAGAIN &&*/ WSAGetLastError() != WSAEWOULDBLOCK) {
- vlogprintf(E_NOTICE, "fail_connection: read_error %s\n", GetLastErrorStr(WSAGetLastError()));
- fail_connection(c);
- return;
- }
- else {
- break;
- }
- }
- }
- vlogprintf(E_DEBUG, "Received %d bytes from %d\n", x, c->hNetlibConn);
- c->in_bytes += x;
- if (x) {
- try_rpc_read(c);
- }
-}
-
-static void incr_out_packet_num(struct connection *c) {
- c->out_packet_num++;
-}
-
-static struct tgl_dc *get_dc(struct connection *c) {
- return c->dc;
-}
-
-static struct tgl_session *get_session(struct connection *c) {
- return c->session;
-}
-
-static void tgln_free(struct connection *c) {
- if (c->ip) { tfree_str(c->ip); }
- if (c->ping_ev) { }
- if (c->fail_ev) { }
-// if (c->read_ev) { DestroyHookableEvent(c->read_ev); }
- if (c->write_ev) { DestroyHookableEvent(c->write_ev); }
-
- struct connection_buffer *b = c->out_head;
- while (b) {
- struct connection_buffer *d = b;
- b = b->next;
- delete_connection_buffer(d);
- }
- b = c->in_head;
- while (b) {
- struct connection_buffer *d = b;
- b = b->next;
- delete_connection_buffer(d);
- }
-
-
- if (c->hNetlibConn) Netlib_CloseHandle(c->hNetlibConn);
- delete c;
-}
-
-
-
-
-
-
-
-struct tgl_net_methods mtgl_conn_methods = {
- mtgln_write_out,
- tgln_read_in,
- tgln_read_in_lookup,
- tgln_flush_out,
- incr_out_packet_num,
- tgln_free,
- get_dc,
- get_session,
- tgln_create_connection
-};
-
-void CTelegramProto::InitNetwork()
-{
- NETLIBUSER nlu = { 0 };
- nlu.cbSize = sizeof(nlu);
- nlu.flags = NUF_OUTGOING | NUF_INCOMING | NUF_HTTPCONNS | NUF_UNICODE;
- nlu.ptszDescriptiveName = L"TGL";
- nlu.szSettingsModule = m_szModuleName;
- m_hNetlibUser = (HANDLE)CallService(MS_NETLIB_REGISTERUSER, 0, (LPARAM)&nlu);
-
-
- tgl_set_net_methods(TLS, &mtgl_conn_methods);
-} \ No newline at end of file
diff --git a/protocols/Telegram/src/t_network.h b/protocols/Telegram/src/t_network.h
deleted file mode 100644
index 3859f562e4..0000000000
--- a/protocols/Telegram/src/t_network.h
+++ /dev/null
@@ -1,48 +0,0 @@
-enum conn_state {
- conn_none,
- conn_connecting,
- conn_ready,
- conn_failed,
- conn_stopped
-};
-
-struct connection : public MZeroedObject
-{
- char *ip;
- int port;
- int flags;
- enum conn_state state;
- struct mtproto_methods *methods;
- struct tgl_state *TLS;
- struct tgl_session *session;
- struct tgl_dc *dc;
- void *extra;
- double last_receive_time;
- HANDLE hNetlibConn;
- HANDLE ping_timer;
- HANDLE in_fail_timer;
-
- struct connection_buffer *in_head;
- struct connection_buffer *in_tail;
- struct connection_buffer *out_head;
- struct connection_buffer *out_tail;
-
- int in_bytes;
- int out_bytes;
- int packet_num;
- int out_packet_num;
-
-
- HANDLE ping_ev, fail_ev, write_ev, read_ev;
-
- time_t last_connect_time;
-
-};
-
-struct connection_buffer {
- unsigned char *start;
- unsigned char *end;
- unsigned char *rptr;
- unsigned char *wptr;
- struct connection_buffer *next;
-}; \ No newline at end of file
diff --git a/protocols/Telegram/src/t_proto.cpp b/protocols/Telegram/src/t_proto.cpp
deleted file mode 100644
index d07ccc8c93..0000000000
--- a/protocols/Telegram/src/t_proto.cpp
+++ /dev/null
@@ -1,166 +0,0 @@
-/*
-Copyright (c) 2015 Miranda NG project (https://miranda-ng.org)
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation version 2
-of the License.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "stdafx.h"
-
-CTelegramProto::CTelegramProto(const char* protoName, const TCHAR* userName) : PROTO<CTelegramProto>(protoName, userName)
-{
- TLS = new MirTLS(this);
-
- tgl_set_verbosity(TLS, 10);
-
-
- InitNetwork();
- InitCallbacks();
-
- extern struct tgl_timer_methods mtgl_libevent_timers;
-
- tgl_set_timer_methods(TLS, &mtgl_libevent_timers);
-
- tgl_set_rsa_key(TLS, "tgl.pub");
-
- TLS->base_path = Utils_ReplaceVars("%miranda_profilesdir%\\%miranda_profilename%\\TGL_Data\\");
- CreateDirectoryTree(TLS->base_path);
-
- tgl_set_download_directory(TLS, CMStringA(FORMAT, "%s\\Downloads\\", TLS->base_path));
- CreateDirectoryTree(TLS->downloads_directory);
-
- tgl_register_app_id(TLS, TELEGRAM_API_ID, TELEGRAM_API_HASH);
- tgl_set_app_version(TLS, g_szMirVer);
-
- tgl_init(TLS);
-
- bl_do_dc_option(TLS, 1, "", 0, TELEGRAM_API_SERVER, strlen(TELEGRAM_API_SERVER), 443);
- bl_do_set_working_dc(TLS, 1);
-}
-
-CTelegramProto::~CTelegramProto()
-{
- tgl_free_all(TLS);
-}
-
-DWORD_PTR CTelegramProto::GetCaps(int type, MCONTACT)
-{
- switch (type)
- {
- case PFLAGNUM_1:
- return PF1_IM | PF1_AUTHREQ | PF1_CHAT | PF1_BASICSEARCH | PF1_MODEMSG | PF1_FILE;
- case PFLAGNUM_2:
- return PF2_ONLINE;
- case PFLAGNUM_3:
- return PF2_ONLINE;
- case PFLAGNUM_4:
- return PF4_FORCEADDED | PF4_NOAUTHDENYREASON | PF4_SUPPORTTYPING | PF4_AVATARS | PF4_IMSENDOFFLINE | PF4_OFFLINEFILES;
- case PFLAG_UNIQUEIDTEXT:
- case PFLAG_UNIQUEIDSETTING:
- return (DWORD_PTR)"ID";
- }
- return 0;
-}
-
-MCONTACT CTelegramProto::AddToList(int, PROTOSEARCHRESULT *psr)
-{
- return 0;
-}
-
-MCONTACT CTelegramProto::AddToListByEvent(int, int, MEVENT hDbEvent)
-{
- return 0;
-}
-
-int CTelegramProto::Authorize(MEVENT hDbEvent)
-{
- return 0;
-}
-
-int CTelegramProto::AuthDeny(MEVENT hDbEvent, const TCHAR*)
-{
- return 0;
-
-}
-
-int CTelegramProto::AuthRecv(MCONTACT, PROTORECVEVENT* pre)
-{
- return 0;
-}
-
-int CTelegramProto::AuthRequest(MCONTACT hContact, const TCHAR *szMessage)
-{
- return 0;
-}
-
-int CTelegramProto::GetInfo(MCONTACT hContact, int)
-{
- return 0;
-}
-
-HANDLE CTelegramProto::SearchBasic(const TCHAR* id)
-{
- return 0;
-}
-
-int CTelegramProto::SendMsg(MCONTACT hContact, int flags, const char *msg)
-{
- return 0;
-}
-
-void LoginThread(void* p)
-{
- tgl_login(((CTelegramProto*)p)->TLS);
-}
-
-int CTelegramProto::SetStatus(int iNewStatus)
-{
- if (iNewStatus == ID_STATUS_ONLINE)
- mir_forkthread(LoginThread, this);
- return 0;
-}
-
-int CTelegramProto::UserIsTyping(MCONTACT hContact, int type)
-{
- return 0;
-}
-
-int CTelegramProto::OnEvent(PROTOEVENTTYPE iEventType, WPARAM wParam, LPARAM lParam)
-{
- return 0;
-}
-
-int CTelegramProto::OnPreShutdown(WPARAM, LPARAM)
-{
- SaveState();
- return 0;
-}
-
-
-void CTelegramProto::TGLGetValue(tgl_value_type type, const char *prompt, int num_values, char **result)
-{
- switch (type)
- {
- case tgl_phone_number:
- *result = getStringA("ID");
- if (*result)
- break;
- default:
- ENTER_STRING es = { sizeof(es) };
- es.type = ESF_MULTILINE;
- es.caption = mir_a2t(prompt);
- EnterString(&es);
- *result = mir_t2a(es.ptszResult);
- mir_free((void*)es.caption);
- };
-} \ No newline at end of file
diff --git a/protocols/Telegram/src/t_proto.h b/protocols/Telegram/src/t_proto.h
deleted file mode 100644
index 68e576fa03..0000000000
--- a/protocols/Telegram/src/t_proto.h
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
-Copyright (c) 2015 Miranda NG project (https://miranda-ng.org)
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation version 2
-of the License.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifndef _T_PROTO_H_
-#define _T_PROTO_H_
-
-
-struct CTelegramProto : public PROTO < CTelegramProto >
-{
-
-public:
-
- //////////////////////////////////////////////////////////////////////////////////////
- //Ctors
-
- CTelegramProto(const char *protoName, const wchar_t *userName);
- ~CTelegramProto();
-
- //////////////////////////////////////////////////////////////////////////////////////
- // Virtual functions
-
- virtual MCONTACT __cdecl AddToList(int flags, PROTOSEARCHRESULT* psr);
- virtual MCONTACT __cdecl AddToListByEvent(int flags, int iContact, MEVENT hDbEvent);
- virtual int __cdecl AuthRequest(MCONTACT hContact, const TCHAR* szMessage);
- virtual int __cdecl Authorize(MEVENT hDbEvent);
- virtual int __cdecl AuthDeny(MEVENT hDbEvent, const TCHAR* szReason);
- virtual int __cdecl AuthRecv(MCONTACT hContact, PROTORECVEVENT*);
- virtual DWORD_PTR __cdecl GetCaps(int type, MCONTACT hContact = NULL);
- virtual int __cdecl GetInfo(MCONTACT hContact, int infoType);
- virtual HANDLE __cdecl SearchBasic(const TCHAR* id);
- virtual int __cdecl SendMsg(MCONTACT hContact, int flags, const char* msg);
- virtual int __cdecl SetStatus(int iNewStatus);
- virtual int __cdecl UserIsTyping(MCONTACT hContact, int type);
- virtual int __cdecl OnEvent(PROTOEVENTTYPE iEventType, WPARAM wParam, LPARAM lParam);
-
- // accounts
- static CTelegramProto* InitAccount(const char *protoName, const TCHAR *userName);
- static int UninitAccount(CTelegramProto *proto);
-
- // icons
- static void InitIcons();
- static void UninitIcons();
-
- // menus
- static void InitMenus();
- static void UninitMenus();
-
- //popups
- void InitPopups();
- void UninitPopups();
-
- void InitNetwork();
- void InitCallbacks();
-
- // languages
- static void InitLanguages();
-
- // events
- static int OnModulesLoaded(WPARAM, LPARAM);
- int __cdecl OnDbEventRead(WPARAM, LPARAM);
- int __cdecl OnPreShutdown(WPARAM, LPARAM);
- //search
- void __cdecl SearchBasicThread(void* id);
-
- ////////////////////////////////////////////
- static INT_PTR EventGetIcon(WPARAM wParam, LPARAM lParam);
- static INT_PTR GetEventText(WPARAM, LPARAM lParam);
-
- void TGLGetValue(tgl_value_type type, const char *prompt, int num_values, char **result);
-
-
-
- void OnMessage(tgl_message*);
-
- void OnUserTyping(tgl_user *U, tgl_typing_status status);
-
- MirTLS *TLS;
-private:
-
-
- static mir_cs accountsLock;
-
- void ReadState();
- void SaveState();
-
- void ReadAuth();
- void SaveAuth();
-
- //---Accounts
- static LIST<CTelegramProto> CTelegramProto::Accounts;
- static int CompareAccounts(const CTelegramProto *p1, const CTelegramProto *p2);
- static CTelegramProto* GetContactAccount(MCONTACT hContact);
-
- __forceinline bool IsOnline() const
- { return (m_iStatus > ID_STATUS_OFFLINE);
- }
-
- template<INT_PTR(__cdecl CTelegramProto::*Service)(WPARAM, LPARAM)>
- static INT_PTR __cdecl GlobalService(WPARAM wParam, LPARAM lParam)
- {
- CTelegramProto *proto = GetContactAccount((MCONTACT)wParam);
- return proto ? (proto->*Service)(wParam, lParam) : 0;
- }
-
-};
-
-#endif //_Telegram_PROTO_H_ \ No newline at end of file
diff --git a/protocols/Telegram/src/t_timers.cpp b/protocols/Telegram/src/t_timers.cpp
deleted file mode 100644
index 296242856d..0000000000
--- a/protocols/Telegram/src/t_timers.cpp
+++ /dev/null
@@ -1,56 +0,0 @@
-
-#include "stdafx.h"
-
-extern HANDLE hQueue;
-
-struct tgl_timer
-{
- tgl_state *TLS;
- void(*cb)(struct tgl_state *TLS, void *arg);
- void *arg;
- HANDLE hTimer;
-};
-
-VOID CALLBACK WaitOrTimerCallback(_In_ PVOID lpParameter, _In_ BOOLEAN TimerOrWaitFired)
-{
- tgl_timer *p = (tgl_timer*)lpParameter;
- p->cb(p->TLS, p->arg);
- p->hTimer = 0;
-}
-
-
-struct tgl_timer *mtgl_timer_alloc (struct tgl_state *TLS, void (*cb)(struct tgl_state *TLS, void *arg), void *arg)
-{
- tgl_timer *p = (tgl_timer *)mir_calloc(sizeof (tgl_timer));
- p->TLS = TLS;
- p->cb = cb;
- p->arg = arg;
- return p;
-}
-
-void mtgl_timer_insert (struct tgl_timer *t, double p)
-{
- HANDLE hNewTimer = 0;
- CreateTimerQueueTimer(&hNewTimer, hQueue, WaitOrTimerCallback, t, (DWORD)(p * 1000), 0, 0);
- t->hTimer = hNewTimer;
-}
-
-void mtgl_timer_delete (struct tgl_timer *t)
-{
- DeleteTimerQueueTimer(hQueue, t->hTimer, 0);
- t->hTimer = 0;
-}
-
-void mtgl_timer_free (struct tgl_timer *t)
-{
- if (t->hTimer) mtgl_timer_delete(t);
- mir_free(t);
-}
-
-
-struct tgl_timer_methods mtgl_libevent_timers = {
- mtgl_timer_alloc,
- mtgl_timer_insert,
- mtgl_timer_delete,
- mtgl_timer_free
-}; \ No newline at end of file
diff --git a/protocols/Telegram/src/t_utils.cpp b/protocols/Telegram/src/t_utils.cpp
deleted file mode 100644
index 95a25123ae..0000000000
--- a/protocols/Telegram/src/t_utils.cpp
+++ /dev/null
@@ -1,285 +0,0 @@
-#include "stdafx.h"
-
-#include <fcntl.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <io.h>
-#include <stdio.h>
-
-#define DC_SERIALIZED_MAGIC 0x868aa81d
-#define STATE_FILE_MAGIC 0x28949a93
-#define SECRET_CHAT_FILE_MAGIC 0x37a1988a
-
-
-
-void read_state_file(struct tgl_state *TLS) {
- CMStringA name(FORMAT, "%sstate", TLS->base_path);
- int state_file_fd = open(name, O_CREAT | O_RDWR | O_BINARY, 0600);
-
- if (state_file_fd < 0) {
- return;
- }
- int version, magic;
- if (read(state_file_fd, &magic, 4) < 4) { close(state_file_fd); return; }
- if (magic != (int)STATE_FILE_MAGIC) { close(state_file_fd); return; }
- if (read(state_file_fd, &version, 4) < 4 || version < 0) { close(state_file_fd); return; }
- int x[4];
- if (read(state_file_fd, x, 16) < 16) {
- close(state_file_fd);
- return;
- }
- int pts = x[0];
- int qts = x[1];
- int seq = x[2];
- int date = x[3];
- close(state_file_fd);
- bl_do_set_seq(TLS, seq);
- bl_do_set_pts(TLS, pts);
- bl_do_set_qts(TLS, qts);
- bl_do_set_date(TLS, date);
- TLS->callback.logprintf("read state file: seq=%d pts=%d qts=%d date=%d", seq, pts, qts, date);
-}
-
-void write_state_file(struct tgl_state *TLS) {
- int wseq;
- int wpts;
- int wqts;
- int wdate;
- wseq = TLS->seq; wpts = TLS->pts; wqts = TLS->qts; wdate = TLS->date;
-
- CMStringA name(FORMAT, "%sstate", TLS->base_path);
-
- int state_file_fd = open(name, O_CREAT | O_RDWR | O_BINARY, 0600);
-
- if (state_file_fd < 0) {
- return;
- }
- int x[6];
- x[0] = STATE_FILE_MAGIC;
- x[1] = 0;
- x[2] = wpts;
- x[3] = wqts;
- x[4] = wseq;
- x[5] = wdate;
- assert(write(state_file_fd, x, 24) == 24);
- close(state_file_fd);
- TLS->callback.logprintf("wrote state file: wpts=%d wqts=%d wseq=%d wdate=%d", wpts, wqts, wseq, wdate);
-}
-
-void write_dc(struct tgl_dc *DC, void *extra) {
- int auth_file_fd = *(int *)extra;
- if (!DC) {
- int x = 0;
- assert(write(auth_file_fd, &x, 4) == 4);
- return;
- }
- else {
- int x = 1;
- assert(write(auth_file_fd, &x, 4) == 4);
- }
-
- assert(DC->flags & TGLDCF_LOGGED_IN);
-
- assert(write(auth_file_fd, &DC->options[0]->port, 4) == 4);
- int l = strlen(DC->options[0]->ip);
- assert(write(auth_file_fd, &l, 4) == 4);
- assert(write(auth_file_fd, DC->options[0]->ip, l) == l);
- assert(write(auth_file_fd, &DC->auth_key_id, 8) == 8);
- assert(write(auth_file_fd, DC->auth_key, 256) == 256);
-}
-
-void write_auth_file(struct tgl_state *TLS) {
- CMStringA name(FORMAT, "%sauth", TLS->base_path);
- int auth_file_fd = open(name, O_CREAT | O_RDWR | O_BINARY, 0600);
- if (auth_file_fd < 0) { return; }
- int x = DC_SERIALIZED_MAGIC;
- assert(write(auth_file_fd, &x, 4) == 4);
- assert(write(auth_file_fd, &TLS->max_dc_num, 4) == 4);
- assert(write(auth_file_fd, &TLS->dc_working_num, 4) == 4);
-
- tgl_dc_iterator_ex(TLS, write_dc, &auth_file_fd);
-
- assert(write(auth_file_fd, &TLS->our_id, 4) == 4);
- close(auth_file_fd);
- TLS->callback.logprintf("wrote auth file: magic=%d max_dc_num=%d dc_working_num=%d", x, TLS->max_dc_num, TLS->dc_working_num);
-}
-
-void read_dc(struct tgl_state *TLS, int auth_file_fd, int id, unsigned ver) {
- int port = 0;
- assert(read(auth_file_fd, &port, 4) == 4);
- int l = 0;
- assert(read(auth_file_fd, &l, 4) == 4);
- assert(l >= 0 && l < 100);
- char ip[100];
- assert(read(auth_file_fd, ip, l) == l);
- ip[l] = 0;
-
- long long auth_key_id;
- static unsigned char auth_key[256];
- assert(read(auth_file_fd, &auth_key_id, 8) == 8);
- assert(read(auth_file_fd, auth_key, 256) == 256);
-
- bl_do_dc_option(TLS, id, "DC", 2, ip, l, port);
- bl_do_set_auth_key(TLS, id, auth_key);
- bl_do_dc_signed(TLS, id);
- TLS->callback.logprintf("read dc: id=%d", id);
-}
-
-void empty_auth_file(struct tgl_state *TLS) {
- TLS->callback.logprintf("initializing empty auth file");
- if (TLS->test_mode) {
- bl_do_dc_option(TLS, 1, "", 0, TG_SERVER_TEST_1, strlen(TG_SERVER_TEST_1), 443);
- bl_do_dc_option(TLS, 2, "", 0, TG_SERVER_TEST_2, strlen(TG_SERVER_TEST_2), 443);
- bl_do_dc_option(TLS, 3, "", 0, TG_SERVER_TEST_3, strlen(TG_SERVER_TEST_3), 443);
- bl_do_set_working_dc(TLS, TG_SERVER_TEST_DEFAULT);
- }
- else {
- bl_do_dc_option(TLS, 1, "", 0, TG_SERVER_1, strlen(TG_SERVER_1), 443);
- bl_do_dc_option(TLS, 2, "", 0, TG_SERVER_2, strlen(TG_SERVER_2), 443);
- bl_do_dc_option(TLS, 3, "", 0, TG_SERVER_3, strlen(TG_SERVER_3), 443);
- bl_do_dc_option(TLS, 4, "", 0, TG_SERVER_4, strlen(TG_SERVER_4), 443);
- bl_do_dc_option(TLS, 5, "", 0, TG_SERVER_5, strlen(TG_SERVER_5), 443);
- bl_do_set_working_dc(TLS, TG_SERVER_DEFAULT);
- }
-}
-
-void read_auth_file(struct tgl_state *TLS) {
- CMStringA name(FORMAT, "%sauth", TLS->base_path);
- int auth_file_fd = open(name, O_CREAT | O_RDWR | O_BINARY, 0600);
- if (auth_file_fd < 0) {
- empty_auth_file(TLS);
- return;
- }
- assert(auth_file_fd >= 0);
- unsigned x;
- unsigned m;
- if (read(auth_file_fd, &m, 4) < 4 || (m != DC_SERIALIZED_MAGIC)) {
- close(auth_file_fd);
- empty_auth_file(TLS);
- return;
- }
- assert(read(auth_file_fd, &x, 4) == 4);
- assert(x > 0);
- int dc_working_num;
- assert(read(auth_file_fd, &dc_working_num, 4) == 4);
-
- int i;
- for (i = 0; i <= (int)x; i++) {
- int y;
- assert(read(auth_file_fd, &y, 4) == 4);
- if (y) {
- read_dc(TLS, auth_file_fd, i, m);
- }
- }
- bl_do_set_working_dc(TLS, dc_working_num);
- int our_id;
- int l = read(auth_file_fd, &our_id, 4);
- if (l < 4) {
- assert(!l);
- }
- if (our_id) {
- bl_do_set_our_id(TLS, our_id);
- }
- close(auth_file_fd);
- TLS->callback.logprintf("read auth file: dcs=%d dc_working_num=%d our_id=%d", x, dc_working_num, our_id);
-}
-
-
-
-
-
-
-
-void CTelegramProto::ReadState()
-{
- DBVARIANT dbv = { 0 };
- if (db_get(0, m_szModuleName, "TGL_STATE", &dbv))
- return;
-
- int *x = (int*)dbv.pbVal;
-
- bl_do_set_seq(TLS, x[0]);
- bl_do_set_pts(TLS, x[1]);
- bl_do_set_qts(TLS, x[2]);
- bl_do_set_date(TLS, x[3]);
-
- db_free(&dbv);
-}
-
-void CTelegramProto::SaveState()
-{
- int x[4];
-
- x[0] = TLS->pts;
- x[1] = TLS->qts;
- x[2] = TLS->seq;
- x[3] = TLS->date;
-
- db_set_blob(0, m_szModuleName, "TGL_STATE", &x, sizeof(x));
-
-}
-
-void read_dc(tgl_state *TLS, int *&piBlob, int id) {
- int port = *piBlob++;
- int l = *piBlob++;
- assert(l >= 0 && l < 100);
-
- char ip[100];
- memcpy(ip, piBlob, l);
- piBlob += (l / sizeof(int));
- ip[l] = 0;
-
- long long auth_key_id = *(long long*)piBlob;
- piBlob += 2;
- static unsigned char auth_key[256];
- memcpy(auth_key, piBlob, 256);
- piBlob += (256 / sizeof(int));
-
- bl_do_dc_option(TLS, id, "DC", 2, ip, l, port);
- bl_do_set_auth_key(TLS, id, auth_key);
- bl_do_dc_signed(TLS, id);
-}
-
-
-void CTelegramProto::ReadAuth()
-{
- DBVARIANT dbv = { 0 };
- if (db_get(0, m_szModuleName, "TGL_AUTH", &dbv))
- {
- bl_do_dc_option(TLS, 1, "", 0, TG_SERVER_1, strlen(TG_SERVER_1), 443);
- bl_do_dc_option(TLS, 2, "", 0, TG_SERVER_2, strlen(TG_SERVER_2), 443);
- bl_do_dc_option(TLS, 3, "", 0, TG_SERVER_3, strlen(TG_SERVER_3), 443);
- bl_do_dc_option(TLS, 4, "", 0, TG_SERVER_4, strlen(TG_SERVER_4), 443);
- bl_do_dc_option(TLS, 5, "", 0, TG_SERVER_5, strlen(TG_SERVER_5), 443);
- bl_do_set_working_dc(TLS, TG_SERVER_DEFAULT);
- return;
- }
-
- int *piBlob = (int*)dbv.pbVal;
-
- size_t x = (size_t)*piBlob++;
- int dc_working_num = *piBlob++;
-
- for (size_t i = 0; i < x; i++)
- {
- int y = *piBlob++;
- if (y)
- {
- read_dc(TLS, piBlob, i);
- }
- }
- bl_do_set_working_dc(TLS, dc_working_num);
-
- int our_id = *piBlob++;
-
- if (our_id) {
- bl_do_set_our_id(TLS, TGL_MK_USER(our_id).id);
- }
-
- db_free(&dbv);
-}
-
-
-void CTelegramProto::SaveAuth()
-{
-}
diff --git a/protocols/Telegram/src/tgl/auto-static-autocomplete.c b/protocols/Telegram/src/tgl/auto-static-autocomplete.c
deleted file mode 100644
index 43ec4cc02e..0000000000
--- a/protocols/Telegram/src/tgl/auto-static-autocomplete.c
+++ /dev/null
@@ -1,63 +0,0 @@
-#define IN_AUTOCOMPLETE_H
-#include "auto-static-store.c"
-#undef IN_AUTOCOMPLETE_H
-
-static int autocomplete_mode;
-static char *autocomplete_string;
-static int (*autocomplete_fun)(const char *, int, int, char **);
-
-static void set_autocomplete_string (const char *s) {
- if (autocomplete_string) { free (autocomplete_string); }
- autocomplete_string = strdup (s);
- assert (autocomplete_string);
- autocomplete_mode = 1;
-}
-
-static void set_autocomplete_type (int (*f)(const char *, int, int, char **)) {
- autocomplete_fun = f;
- autocomplete_mode = 2;
-}
-
-#define MAX_FVARS 100
-static struct paramed_type *fvars[MAX_FVARS];
-static int fvars_pos;
-
-static void add_var_to_be_freed (struct paramed_type *P) {
- assert (fvars_pos < MAX_FVARS);
- fvars[fvars_pos ++] = P;
-}
-
-static void free_vars_to_be_freed (void) {
- int i;
- for (i = 0; i < fvars_pos; i++) {
- tgl_paramed_type_free (fvars[i]);
- }
- fvars_pos = 0;
-}
-
-int tglf_extf_autocomplete (struct tgl_state *TLS, const char *text, int text_len, int index, char **R, char *data, int data_len) {
- if (index == -1) {
- buffer_pos = data;
- buffer_end = data + data_len;
- autocomplete_mode = 0;
- local_next_token ();
- struct paramed_type *P = autocomplete_function_any ();
- free_vars_to_be_freed ();
- if (P) { tgl_paramed_type_free (P); }
- }
- if (autocomplete_mode == 0) { return -1; }
- int len = strlen (text);
- if (autocomplete_mode == 1) {
- if (index >= 0) { return -1; }
- index = 0;
- if (!strncmp (text, autocomplete_string, len)) {
- *R = strdup (autocomplete_string);
- assert (*R);
- return index;
- } else {
- return -1;
- }
- } else {
- return autocomplete_fun (text, len, index, R);
- }
-}
diff --git a/protocols/Telegram/src/tgl/auto-static-fetch.c b/protocols/Telegram/src/tgl/auto-static-fetch.c
deleted file mode 100644
index db32029ff2..0000000000
--- a/protocols/Telegram/src/tgl/auto-static-fetch.c
+++ /dev/null
@@ -1,106 +0,0 @@
-static int multiline_output = 1;
-static int multiline_offset;
-static int multiline_offset_size = 2;
-
-static int disable_field_names;
-
-#define OUT_BUF_SIZE (1 << 25)
-static char out_buf[OUT_BUF_SIZE];
-static int out_buf_pos;
-
-#define eprintf(...) \
- do { \
- out_buf_pos += _snprintf (out_buf + out_buf_pos, OUT_BUF_SIZE - out_buf_pos, __VA_ARGS__);\
- assert (out_buf_pos < OUT_BUF_SIZE);\
- } while (0)\
-
-static int valid_utf8_char (const char *str) {
- unsigned char c = (unsigned char) *str;
- int n = 0;
-
- if ((c & 0x80) == 0x00) {
- n = 0;
- } else if ((c & 0xe0) == 0xc0) {
- n = 1;
- } else if ((c & 0xf0) == 0xe0) {
- n = 2;
- } else if ((c & 0xf8) == 0xf0) {
- n = 3;
- } else if ((c & 0xfc) == 0xf8) {
- n = 4;
- } else if ((c & 0xfe) == 0xfc) {
- n = 5;
- } else {
- return -1;
- }
-
- int i;
- for (i = 0; i < n; i ++) {
- if ((((unsigned char)(str[i + 1])) & 0xc0) != 0x80) {
- return -1;
- }
- }
- return n + 1;
-}
-
-static void print_escaped_string (const char *str, int len) {
- eprintf ("\"");
- const char *end = str + len;
- while (str < end) {
- int n = valid_utf8_char (str);
- if (n < 0) {
- eprintf ("\\x%02x", (int)(unsigned char)*str);
- str ++;
- } else if (n >= 2) {
- int i;
- for (i = 0; i < n; i++) {
- eprintf ("%c", *(str ++));
- }
- } else if (((unsigned char)*str) >= ' ' && *str != '"' && *str != '\\') {
- eprintf ("%c", *str);
- str ++;
- } else {
- switch (*str) {
- case '\n':
- eprintf("\\n");
- break;
- case '\r':
- eprintf("\\r");
- break;
- case '\t':
- eprintf("\\t");
- break;
- case '\b':
- eprintf("\\b");
- break;
- case '\a':
- eprintf("\\a");
- break;
- case '\\':
- eprintf ("\\\\");
- break;
- case '"':
- eprintf ("\\\"");
- break;
- default:
- eprintf ("\\x%02x", (int)(unsigned char)*str);
- break;
- }
- str ++;
- }
- }
- eprintf ("\"");
-}
-
-static void print_offset (void) {
- int i;
- for (i = 0; i < multiline_offset; i++) {
- eprintf (" ");
- }
-}
-
-char *tglf_extf_fetch (struct tgl_state *TLS, struct paramed_type *T) {
- out_buf_pos = 0;
- if (fetch_type_any (T) < 0) { return 0; }
- return out_buf;
-}
diff --git a/protocols/Telegram/src/tgl/auto-static-print-ds.c b/protocols/Telegram/src/tgl/auto-static-print-ds.c
deleted file mode 100644
index cb006728d9..0000000000
--- a/protocols/Telegram/src/tgl/auto-static-print-ds.c
+++ /dev/null
@@ -1,106 +0,0 @@
-static int multiline_output = 1;
-static int multiline_offset;
-static int multiline_offset_size = 2;
-
-static int disable_field_names;
-
-#define OUT_BUF_SIZE (1 << 25)
-static char out_buf[OUT_BUF_SIZE];
-static int out_buf_pos;
-
-#define eprintf(...) \
- do { \
- out_buf_pos += _snprintf (out_buf + out_buf_pos, OUT_BUF_SIZE - out_buf_pos, __VA_ARGS__);\
- assert (out_buf_pos < OUT_BUF_SIZE);\
- } while (0)\
-
-static int valid_utf8_char (const char *str) {
- unsigned char c = (unsigned char) *str;
- int n = 0;
-
- if ((c & 0x80) == 0x00) {
- n = 0;
- } else if ((c & 0xe0) == 0xc0) {
- n = 1;
- } else if ((c & 0xf0) == 0xe0) {
- n = 2;
- } else if ((c & 0xf8) == 0xf0) {
- n = 3;
- } else if ((c & 0xfc) == 0xf8) {
- n = 4;
- } else if ((c & 0xfe) == 0xfc) {
- n = 5;
- } else {
- return -1;
- }
-
- int i;
- for (i = 0; i < n; i ++) {
- if ((((unsigned char)(str[i + 1])) & 0xc0) != 0x80) {
- return -1;
- }
- }
- return n + 1;
-}
-
-static void print_escaped_string (const char *str, int len) {
- eprintf ("\"");
- const char *end = str + len;
- while (str < end) {
- int n = valid_utf8_char (str);
- if (n < 0) {
- eprintf ("\\x%02x", (int)(unsigned char)*str);
- str ++;
- } else if (n >= 2) {
- int i;
- for (i = 0; i < n; i++) {
- eprintf ("%c", *(str ++));
- }
- } else if (((unsigned char)*str) >= ' ' && *str != '"' && *str != '\\') {
- eprintf ("%c", *str);
- str ++;
- } else {
- switch (*str) {
- case '\n':
- eprintf("\\n");
- break;
- case '\r':
- eprintf("\\r");
- break;
- case '\t':
- eprintf("\\t");
- break;
- case '\b':
- eprintf("\\b");
- break;
- case '\a':
- eprintf("\\a");
- break;
- case '\\':
- eprintf ("\\\\");
- break;
- case '"':
- eprintf ("\\\"");
- break;
- default:
- eprintf ("\\x%02x", (int)(unsigned char)*str);
- break;
- }
- str ++;
- }
- }
- eprintf ("\"");
-}
-
-static void print_offset (void) {
- int i;
- for (i = 0; i < multiline_offset; i++) {
- eprintf (" ");
- }
-}
-
-char *tglf_extf_print_ds (struct tgl_state *TLS, void *DS, struct paramed_type *T) {
- out_buf_pos = 0;
- if (print_ds_type_any (DS, T) < 0) { return 0; }
- return out_buf;
-}
diff --git a/protocols/Telegram/src/tgl/auto-static-print.c b/protocols/Telegram/src/tgl/auto-static-print.c
deleted file mode 100644
index 3c4e810fad..0000000000
--- a/protocols/Telegram/src/tgl/auto-static-print.c
+++ /dev/null
@@ -1,461 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2014-2015
-*/
-
-#include <string.h>
-#include <stdlib.h>
-#include <stdio.h>
-
-static int cur_token_len;
-static char *cur_token;
-static int cur_token_real_len;
-static int cur_token_quoted;
-static int multiline_output = 1;
-static int multiline_offset;
-static int multiline_offset_size = 2;
-
-static int *in_ptr, *in_end;
-
-static inline int fetch_int (void) {
- return *(in_ptr ++);
-}
-
-static inline int fetch_long (void) {
- long long r = *(long long *)in_ptr;
- in_ptr += 2;
- return r;
-}
-
-static inline int fetch_long (void) {
- long long r = *(long long *)in_ptr;
- in_ptr += 2;
- return r;
-}
-
-static inline void out_int (int a) {}
-static inline void out_double (double a) {}
-static inline void out_string (char *s, int l) {}
-static inline void out_long (long long a) {}
-
-static int disable_field_names;
-
-#define expect_token(token,len) \
- if (len != cur_token_len || memcmp (cur_token, token, cur_token_len)) { return -1; } \
- local_next_token ();
-
-#define expect_token_ptr(token,len) \
- if (len != cur_token_len || memcmp (cur_token, token, cur_token_len)) { return 0; } \
- local_next_token ();
-
-#define expect_token_autocomplete(token,len) \
- if (cur_token_len == -3 && len >= cur_token_real_len && !memcmp (cur_token, token, cur_token_real_len)) { set_autocomplete_string (token); return -1; }\
- if (len != cur_token_len || memcmp (cur_token, token, cur_token_len)) { return -1; } \
- local_next_token ();
-
-#define expect_token_ptr_autocomplete(token,len) \
- if (cur_token_len == -3 && len >= cur_token_real_len && !memcmp (cur_token, token, cur_token_real_len)) { set_autocomplete_string (token); return 0; }\
- if (len != cur_token_len || memcmp (cur_token, token, cur_token_len)) { return 0; } \
- local_next_token ();
-
-
-static int autocomplete_mode;
-static char *autocomplete_string;
-static int (*autocomplete_fun)(const char *, int, int, char **);
-
-static void set_autocomplete_string (const char *s) {
- if (autocomplete_string) { free (autocomplete_string); }
- autocomplete_string = strdup (s);
- assert (autocomplete_string);
- autocomplete_mode = 1;
-}
-
-static void set_autocomplete_type (int (*f)(const char *, int, int, char **)) {
- autocomplete_fun = f;
- autocomplete_mode = 2;
-}
-
-static int is_int (void) {
- if (cur_token_len <= 0) { return 0; }
- char c = cur_token[cur_token_len];
- cur_token[cur_token_len] = 0;
- char *p = 0;
-
- if (strtoll (cur_token, &p, 10)) {}
- cur_token[cur_token_len] = c;
-
- return p == cur_token + cur_token_len;
-}
-
-static long long get_int (void) {
- if (cur_token_len <= 0) { return 0; }
- char c = cur_token[cur_token_len];
- cur_token[cur_token_len] = 0;
- char *p = 0;
-
- long long val = strtoll (cur_token, &p, 0);
- cur_token[cur_token_len] = c;
-
- return val;
-}
-
-static int is_double (void) {
- if (cur_token_len <= 0) { return 0; }
- char c = cur_token[cur_token_len];
- cur_token[cur_token_len] = 0;
- char *p = 0;
-
- if (strtod (cur_token, &p)) {}
- cur_token[cur_token_len] = c;
-
- return p == cur_token + cur_token_len;
-}
-
-static double get_double (void) {
- if (cur_token_len <= 0) { return 0; }
- char c = cur_token[cur_token_len];
- cur_token[cur_token_len] = 0;
- char *p = 0;
-
- double val = strtod (cur_token, &p);
- cur_token[cur_token_len] = c;
-
- return val;
-}
-
-static struct paramed_type *paramed_type_dup (struct paramed_type *P) {
- if (ODDP (P)) { return P; }
- struct paramed_type *R = malloc (sizeof (*R));
- assert (R);
- R->type = malloc (sizeof (*R->type));
- assert (R->type);
- memcpy (R->type, P->type, sizeof (*P->type));
- R->type->id = strdup (P->type->id);
- assert (R->type->id);
-
- if (P->type->params_num) {
- R->params = malloc (sizeof (void *) * P->type->params_num);
- assert (R->params);
- int i;
- for (i = 0; i < P->type->params_num; i++) {
- R->params[i] = paramed_type_dup (P->params[i]);
- }
- }
- return R;
-}
-
-void tgl_paramed_type_free (struct paramed_type *P) {
- if (ODDP (P)) { return; }
- if (P->type->params_num) {
- int i;
- for (i = 0; i < P->type->params_num; i++) {
- tgl_paramed_type_free (P->params[i]);
- }
- free (P->params);
- }
- free (P->type->id);
- free (P->type);
- free (P);
-}
-
-static char *buffer_pos, *buffer_end;
-
-static int is_wspc (char c) {
- return c <= 32 && c > 0;
-}
-
-static void skip_wspc (void) {
- while (buffer_pos < buffer_end && is_wspc (*buffer_pos)) {
- buffer_pos ++;
- }
-}
-
-static int is_letter (char c) {
- return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9') || c == '.' || c == '_' || c == '-';
-}
-
-
-static char exp_buffer[1 << 25];;
-static int exp_buffer_pos;
-
-static inline int is_hex (char c) {
- return (c >= '0' && c <= '9') || (c >= 'a' && c <= 'f');
-}
-
-static inline int hex2dec (char c) {
- if (c >= '0' && c <= '9') { return c - '0'; }
- else { return c - 'a' + 10; }
-}
-
-static void expand_backslashed (char *s, int len) {
- int backslashed = 0;
- exp_buffer_pos = 0;
- int i = 0;
- while (i < len) {
- assert (i + 3 <= (1 << 25));
- if (backslashed) {
- backslashed = 0;
- switch (s[i ++]) {
- case 'n':
- exp_buffer[exp_buffer_pos ++] = '\n';
- break;
- case 'r':
- exp_buffer[exp_buffer_pos ++] = '\r';
- break;
- case 't':
- exp_buffer[exp_buffer_pos ++] = '\t';
- break;
- case 'b':
- exp_buffer[exp_buffer_pos ++] = '\b';
- break;
- case 'a':
- exp_buffer[exp_buffer_pos ++] = '\a';
- break;
- case '\\':
- exp_buffer[exp_buffer_pos ++] = '\\';
- break;
- case 'x':
- if (i + 2 > len || !is_hex (s[i]) || !is_hex (s[i + 1])) {
- exp_buffer_pos = -1;
- return;
- }
- exp_buffer[exp_buffer_pos ++] = hex2dec (s[i]) * 16 + hex2dec (s[i + 1]);
- i += 2;
- break;
- default:
- break;
- }
- } else {
- if (s[i] == '\\') {
- backslashed = 1;
- i ++;
- } else {
- exp_buffer[exp_buffer_pos ++] = s[i ++];
- }
- }
- }
-}
-
-static void local_next_token (void) {
- skip_wspc ();
- cur_token_quoted = 0;
- if (buffer_pos >= buffer_end) {
- cur_token_len = -3;
- cur_token_real_len = 0;
- return;
- }
- char c = *buffer_pos;
- if (is_letter (c)) {
- cur_token = buffer_pos;
- while (buffer_pos < buffer_end && is_letter (*buffer_pos)) {
- buffer_pos ++;
- }
- if (buffer_pos < buffer_end) {
- cur_token_len = buffer_pos - cur_token;
- } else {
- cur_token_real_len = buffer_pos - cur_token;
- cur_token_len = -3;
- }
- return;
- } else if (c == '"') {
- cur_token_quoted = 1;
- cur_token = buffer_pos ++;
- int backslashed = 0;
- while (buffer_pos < buffer_end && (*buffer_pos != '"' || backslashed)) {
- if (*buffer_pos == '\\') {
- backslashed ^= 1;
- } else {
- backslashed = 0;
- }
- buffer_pos ++;
- }
- if (*buffer_pos == '"') {
- buffer_pos ++;
- expand_backslashed (cur_token + 1, buffer_pos - cur_token - 2);
- if (exp_buffer_pos < 0) {
- cur_token_len = -2;
- } else {
- cur_token_len = exp_buffer_pos;
- cur_token = exp_buffer;
- }
- } else {
- cur_token_len = -2;
- }
- return;
- } else {
- if (c) {
- cur_token = buffer_pos ++;
- cur_token_len = 1;
- } else {
- cur_token_len = -3;
- cur_token_real_len = 0;
- }
- }
-}
-
-#define MAX_FVARS 100
-static struct paramed_type *fvars[MAX_FVARS];
-static int fvars_pos;
-
-static void add_var_to_be_freed (struct paramed_type *P) {
- assert (fvars_pos < MAX_FVARS);
- fvars[fvars_pos ++] = P;
-}
-
-static void free_vars_to_be_freed (void) {
- int i;
- for (i = 0; i < fvars_pos; i++) {
- tgl_paramed_type_free (fvars[i]);
- }
- fvars_pos = 0;
-}
-
-int tglf_extf_autocomplete (const char *text, int text_len, int index, char **R, char *data, int data_len) {
- if (index == -1) {
- buffer_pos = data;
- buffer_end = data + data_len;
- autocomplete_mode = 0;
- local_next_token ();
- struct paramed_type *P = autocomplete_function_any ();
- free_vars_to_be_freed ();
- if (P) { tgl_paramed_type_free (P); }
- }
- if (autocomplete_mode == 0) { return -1; }
- int len = strlen (text);
- if (autocomplete_mode == 1) {
- if (index >= 0) { return -1; }
- index = 0;
- if (!strncmp (text, autocomplete_string, len)) {
- *R = strdup (autocomplete_string);
- assert (*R);
- return index;
- } else {
- return -1;
- }
- } else {
- return autocomplete_fun (text, len, index, R);
- }
-}
-
-struct paramed_type *tglf_extf_store (const char *data, int data_len) {
- buffer_pos = (char *)data;
- buffer_end = (char *)(data + data_len);
- local_next_token ();
- return store_function_any ();
-}
-
-#define OUT_BUF_SIZE (1 << 25)
-static char out_buf[OUT_BUF_SIZE];
-static int out_buf_pos;
-
-#define eprintf(...) \
- do { \
- out_buf_pos += snprintf (out_buf + out_buf_pos, OUT_BUF_SIZE - out_buf_pos, __VA_ARGS__);\
- assert (out_buf_pos < OUT_BUF_SIZE);\
- } while (0)\
-
-static int valid_utf8_char (const char *str) {
- unsigned char c = (unsigned char) *str;
- int n = 0;
-
- if ((c & 0x80) == 0x00) {
- n = 0;
- } else if ((c & 0xe0) == 0xc0) {
- n = 1;
- } else if ((c & 0xf0) == 0xe0) {
- n = 2;
- } else if ((c & 0xf8) == 0xf0) {
- n = 3;
- } else if ((c & 0xfc) == 0xf8) {
- n = 4;
- } else if ((c & 0xfe) == 0xfc) {
- n = 5;
- } else {
- return -1;
- }
-
- int i;
- for (i = 0; i < n; i ++) {
- if ((((unsigned char)(str[i + 1])) & 0xc0) != 0x80) {
- return -1;
- }
- }
- return n + 1;
-}
-
-static void print_escaped_string (const char *str, int len) {
- eprintf ("\"");
- const char *end = str + len;
- while (str < end) {
- int n = valid_utf8_char (str);
- if (n < 0) {
- eprintf ("\\x%02x", (int)(unsigned char)*str);
- str ++;
- } else if (n >= 2) {
- int i;
- for (i = 0; i < n; i++) {
- eprintf ("%c", *(str ++));
- }
- } else if (((unsigned char)*str) >= ' ' && *str != '"' && *str != '\\') {
- eprintf ("%c", *str);
- str ++;
- } else {
- switch (*str) {
- case '\n':
- eprintf("\\n");
- break;
- case '\r':
- eprintf("\\r");
- break;
- case '\t':
- eprintf("\\t");
- break;
- case '\b':
- eprintf("\\b");
- break;
- case '\a':
- eprintf("\\a");
- break;
- case '\\':
- eprintf ("\\\\");
- break;
- case '"':
- eprintf ("\\\"");
- break;
- default:
- eprintf ("\\x%02x", (int)(unsigned char)*str);
- break;
- }
- str ++;
- }
- }
- eprintf ("\"");
-}
-
-static void print_offset (void) {
- int i;
- for (i = 0; i < multiline_offset; i++) {
- eprintf (" ");
- }
-}
-
-char *tglf_extf_fetch (struct paramed_type *T) {
- out_buf_pos = 0;
- fetch_type_any (T);
- return out_buf;
-}
diff --git a/protocols/Telegram/src/tgl/auto-static-store.c b/protocols/Telegram/src/tgl/auto-static-store.c
deleted file mode 100644
index bff0cb5f84..0000000000
--- a/protocols/Telegram/src/tgl/auto-static-store.c
+++ /dev/null
@@ -1,262 +0,0 @@
-static int cur_token_len;
-static char *cur_token;
-static int cur_token_real_len;
-static int cur_token_quoted;
-
-#define expect_token(token,len) \
- if (len != cur_token_len || memcmp (cur_token, token, cur_token_len)) { return -1; } \
- local_next_token ();
-
-#define expect_token_ptr(token,len) \
- if (len != cur_token_len || memcmp (cur_token, token, cur_token_len)) { return 0; } \
- local_next_token ();
-
-#define expect_token_autocomplete(token,len) \
- if (cur_token_len == -3 && len >= cur_token_real_len && !memcmp (cur_token, token, cur_token_real_len)) { set_autocomplete_string (token); return -1; }\
- if (len != cur_token_len || memcmp (cur_token, token, cur_token_len)) { return -1; } \
- local_next_token ();
-
-#define expect_token_ptr_autocomplete(token,len) \
- if (cur_token_len == -3 && len >= cur_token_real_len && !memcmp (cur_token, token, cur_token_real_len)) { set_autocomplete_string (token); return 0; }\
- if (len != cur_token_len || memcmp (cur_token, token, cur_token_len)) { return 0; } \
- local_next_token ();
-
-static int is_int (void) {
- if (cur_token_len <= 0) { return 0; }
- char c = cur_token[cur_token_len];
- cur_token[cur_token_len] = 0;
- char *p = 0;
-
- if (strtoll (cur_token, &p, 10)) {}
- cur_token[cur_token_len] = c;
-
- return p == cur_token + cur_token_len;
-}
-
-static long long get_int (void) {
- if (cur_token_len <= 0) { return 0; }
- char c = cur_token[cur_token_len];
- cur_token[cur_token_len] = 0;
- char *p = 0;
-
- long long val = strtoll (cur_token, &p, 0);
- cur_token[cur_token_len] = c;
-
- return val;
-}
-
-static int is_double (void) {
- if (cur_token_len <= 0) { return 0; }
- char c = cur_token[cur_token_len];
- cur_token[cur_token_len] = 0;
- char *p = 0;
-
- if (strtod (cur_token, &p)) {}
- cur_token[cur_token_len] = c;
-
- return p == cur_token + cur_token_len;
-}
-
-#ifndef IN_AUTOCOMPLETE_H
-static double get_double (void) {
- if (cur_token_len <= 0) { return 0; }
- char c = cur_token[cur_token_len];
- cur_token[cur_token_len] = 0;
- char *p = 0;
-
- double val = strtod (cur_token, &p);
- cur_token[cur_token_len] = c;
-
- return val;
-}
-#endif
-
-static char *buffer_pos, *buffer_end;
-
-static int is_wspc (char c) {
- return c <= 32 && c > 0;
-}
-
-static void skip_wspc (void) {
- while (buffer_pos < buffer_end && is_wspc (*buffer_pos)) {
- buffer_pos ++;
- }
-}
-
-static int is_letter (char c) {
- return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9') || c == '.' || c == '_' || c == '-';
-}
-
-
-static char exp_buffer[1 << 25];;
-static int exp_buffer_pos;
-
-static inline int is_hex (char c) {
- return (c >= '0' && c <= '9') || (c >= 'a' && c <= 'f');
-}
-
-static inline int hex2dec (char c) {
- if (c >= '0' && c <= '9') { return c - '0'; }
- else { return c - 'a' + 10; }
-}
-
-static void expand_backslashed (char *s, int len) {
- int backslashed = 0;
- exp_buffer_pos = 0;
- int i = 0;
- while (i < len) {
- assert (i + 3 <= (1 << 25));
- if (backslashed) {
- backslashed = 0;
- switch (s[i ++]) {
- case 'n':
- exp_buffer[exp_buffer_pos ++] = '\n';
- break;
- case 'r':
- exp_buffer[exp_buffer_pos ++] = '\r';
- break;
- case 't':
- exp_buffer[exp_buffer_pos ++] = '\t';
- break;
- case 'b':
- exp_buffer[exp_buffer_pos ++] = '\b';
- break;
- case 'a':
- exp_buffer[exp_buffer_pos ++] = '\a';
- break;
- case '\\':
- exp_buffer[exp_buffer_pos ++] = '\\';
- break;
- case 'x':
- if (i + 2 > len || !is_hex (s[i]) || !is_hex (s[i + 1])) {
- exp_buffer_pos = -1;
- return;
- }
- exp_buffer[exp_buffer_pos ++] = hex2dec (s[i]) * 16 + hex2dec (s[i + 1]);
- i += 2;
- break;
- default:
- break;
- }
- } else {
- if (s[i] == '\\') {
- backslashed = 1;
- i ++;
- } else {
- exp_buffer[exp_buffer_pos ++] = s[i ++];
- }
- }
- }
-}
-
-static void local_next_token (void) {
- skip_wspc ();
- cur_token_quoted = 0;
- if (buffer_pos >= buffer_end) {
- cur_token_len = -3;
- cur_token_real_len = 0;
- return;
- }
- char c = *buffer_pos;
- if (is_letter (c)) {
- cur_token = buffer_pos;
- while (buffer_pos < buffer_end && is_letter (*buffer_pos)) {
- buffer_pos ++;
- }
- if (buffer_pos < buffer_end) {
- cur_token_len = buffer_pos - cur_token;
- } else {
- cur_token_real_len = buffer_pos - cur_token;
- cur_token_len = -3;
- }
- return;
- } else if (c == '"') {
- cur_token_quoted = 1;
- cur_token = buffer_pos ++;
- int backslashed = 0;
- while (buffer_pos < buffer_end && (*buffer_pos != '"' || backslashed)) {
- if (*buffer_pos == '\\') {
- backslashed ^= 1;
- } else {
- backslashed = 0;
- }
- buffer_pos ++;
- }
- if (*buffer_pos == '"') {
- buffer_pos ++;
- expand_backslashed (cur_token + 1, buffer_pos - cur_token - 2);
- if (exp_buffer_pos < 0) {
- cur_token_len = -2;
- } else {
- cur_token_len = exp_buffer_pos;
- cur_token = exp_buffer;
- }
- } else {
- cur_token_len = -2;
- }
- return;
- } else {
- if (c) {
- cur_token = buffer_pos ++;
- cur_token_len = 1;
- } else {
- cur_token_len = -3;
- cur_token_real_len = 0;
- }
- }
-}
-
-static struct paramed_type *paramed_type_dup (struct paramed_type *P) {
- if (ODDP (P)) { return P; }
- struct paramed_type *R = malloc (sizeof (*R));
- assert (R);
- R->type = malloc (sizeof (*R->type));
- assert (R->type);
- memcpy (R->type, P->type, sizeof (*P->type));
- R->type->id = strdup (P->type->id);
- assert (R->type->id);
-
- if (P->type->params_num) {
- R->params = malloc (sizeof (void *) * P->type->params_num);
- assert (R->params);
- int i;
- for (i = 0; i < P->type->params_num; i++) {
- R->params[i] = paramed_type_dup (P->params[i]);
- }
- }
- return R;
-}
-
-#ifndef IN_AUTOCOMPLETE_H
-void tgl_paramed_type_free (struct paramed_type *P) {
- if (ODDP (P)) { return; }
- if (P->type->params_num) {
- int i;
- for (i = 0; i < P->type->params_num; i++) {
- tgl_paramed_type_free (P->params[i]);
- }
- free (P->params);
- }
- free (P->type->id);
- free (P->type);
- free (P);
-}
-#else
-void tgl_paramed_type_free (struct paramed_type *P);
-#endif
-
-#ifndef IN_AUTOCOMPLETE_H
-struct paramed_type *tglf_extf_store (struct tgl_state *TLS, const char *data, int data_len) {
- buffer_pos = (char *)data;
- buffer_end = (char *)(data + data_len);
- local_next_token ();
- return store_function_any ();
-}
-
-int tglf_store_type (struct tgl_state *TLS, const char *data, int data_len, struct paramed_type *P) {
- buffer_pos = (char *)data;
- buffer_end = (char *)(data + data_len);
- local_next_token ();
- return store_type_any (P);
-}
-#endif
diff --git a/protocols/Telegram/src/tgl/auto.h b/protocols/Telegram/src/tgl/auto.h
deleted file mode 100644
index b2e216aff3..0000000000
--- a/protocols/Telegram/src/tgl/auto.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2014-2015
-*/
-#ifndef __AUTO_H__
-#define __AUTO_H__
-
-#include "tools.h"
-
-struct tl_type_descr {
- unsigned name;
- char *id;
- int params_num;
- long long params_types;
-};
-
-struct paramed_type {
- struct tl_type_descr *type;
- struct paramed_type **params;
-};
-
-#define NAME_ARRAY 0x89932ad9
-
-#define TYPE_TO_PARAM(NAME) (&(struct paramed_type) {.type = &tl_type_## NAME, .params=0})
-#define TYPE_TO_PARAM_1(NAME,PARAM1) (&(struct paramed_type) {.type = &tl_type_## NAME, .params=(struct paramed_type *[1]){PARAM1}})
-#define ODDP(x) (((long)(x)) & 1)
-#define EVENP(x) (!ODDP(x))
-#define INT2PTR(x) (void *)(long)(((long)x) * 2 + 1)
-#define PTR2INT(x) ((((long)x) - 1) / 2)
-
-static inline void *memdup (const void *d, int len) {
- assert (d || !len);
- if (!d) { return NULL; }
- void *r = talloc (len);
- memcpy (r, d, len);
- return r;
-}
-
-#define DS_LVAL(x) ((x) ? *(x) : 0)
-#define DS_STR(x) ((x) ? (x)->data : NULL), ((x) ? (x)->len : 0)
-#define DS_RSTR(x) ((x) ? (x)->len : 0), ((x) ? (x)->data : NULL)
-#define DS_STR_DUP(x) memdup(((x) ? (x)->data : NULL), ((x) ? (x)->len + 1: 0))
-#define DS_BVAL(x) ((x) && ((x)->magic == CODE_bool_true))
-
-void tgl_paramed_type_free (struct paramed_type *P);
-
-#endif
diff --git a/protocols/Telegram/src/tgl/auto/auto-autocomplete.c b/protocols/Telegram/src/tgl/auto/auto-autocomplete.c
deleted file mode 100644
index e0f5d4a990..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-autocomplete.c
+++ /dev/null
@@ -1,29968 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#include "..\mtproto-common.h"
-#include "auto-autocomplete.h"
-#include "..\auto-static-autocomplete.c"
-#else
-#include "auto.h"
-#include "mtproto-common.h"
-#include "auto/auto-autocomplete.h"
-#include "auto-static-autocomplete.c"
-#endif
-#include <assert.h>
-int autocomplete_constructor_account_days_t_t_l (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb8d0afdf && T->type->name != 0x472f5020)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_audio_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_real_len)) {
- set_autocomplete_string ("mime_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_real_len)) {
- set_autocomplete_string ("dc_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field8) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bf2e6f6 && T->type->name != 0x840d1909)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_real_len)) {
- set_autocomplete_string ("hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "device_model", cur_token_real_len)) {
- set_autocomplete_string ("device_model");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "device_model", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "platform", cur_token_real_len)) {
- set_autocomplete_string ("platform");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "platform", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "system_version", cur_token_real_len)) {
- set_autocomplete_string ("system_version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "system_version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "api_id", cur_token_real_len)) {
- set_autocomplete_string ("api_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "api_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "app_name", cur_token_real_len)) {
- set_autocomplete_string ("app_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "app_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "app_version", cur_token_real_len)) {
- set_autocomplete_string ("app_version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "app_version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field8) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "date_created", cur_token_real_len)) {
- set_autocomplete_string ("date_created");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "date_created", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field9) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "date_active", cur_token_real_len)) {
- set_autocomplete_string ("date_active");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "date_active", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field10) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "ip", cur_token_real_len)) {
- set_autocomplete_string ("ip");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "ip", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field11) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "country", cur_token_real_len)) {
- set_autocomplete_string ("country");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "country", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field12) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "region", cur_token_real_len)) {
- set_autocomplete_string ("region");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "region", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field13) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_bool_false (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_bool_true (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_bot_command (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "command", cur_token_real_len)) {
- set_autocomplete_string ("command");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "command", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "description", cur_token_real_len)) {
- set_autocomplete_string ("description");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "description", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_bot_command_old (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "command", cur_token_real_len)) {
- set_autocomplete_string ("command");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "command", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "params", cur_token_real_len)) {
- set_autocomplete_string ("params");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "params", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "description", cur_token_real_len)) {
- set_autocomplete_string ("description");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "description", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_bot_info_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_bot_info (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_real_len)) {
- set_autocomplete_string ("version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "share_text", cur_token_real_len)) {
- set_autocomplete_string ("share_text");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "share_text", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "description", cur_token_real_len)) {
- set_autocomplete_string ("description");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "description", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "commands", cur_token_real_len)) {
- set_autocomplete_string ("commands");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "commands", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x75e7ea6c, .id = "BotCommand", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_bytes (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0ee1379f && T->type->name != 0xf11ec860)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_chat_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_chat_photo (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 18 && !cur_token_quoted && !memcmp (cur_token, "participants_count", cur_token_real_len)) {
- set_autocomplete_string ("participants_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 18 && !memcmp (cur_token, "participants_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "left", cur_token_real_len)) {
- set_autocomplete_string ("left");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "left", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_real_len)) {
- set_autocomplete_string ("version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_chat_forbidden (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_geo_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "address", cur_token_real_len)) {
- set_autocomplete_string ("address");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "address", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "venue", cur_token_real_len)) {
- set_autocomplete_string ("venue");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "venue", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "geo", cur_token_real_len)) {
- set_autocomplete_string ("geo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "geo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_geo_point (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_chat_photo (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 18 && !cur_token_quoted && !memcmp (cur_token, "participants_count", cur_token_real_len)) {
- set_autocomplete_string ("participants_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 18 && !memcmp (cur_token, "participants_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field8) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field9) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "checked_in", cur_token_real_len)) {
- set_autocomplete_string ("checked_in");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "checked_in", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field10) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_real_len)) {
- set_autocomplete_string ("version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field11) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_chat_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02a614 && T->type->name != 0xd1fd59eb)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "participants", cur_token_real_len)) {
- set_autocomplete_string ("participants");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "participants", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_chat_participants (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "chat_photo", cur_token_real_len)) {
- set_autocomplete_string ("chat_photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "chat_photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "notify_settings", cur_token_real_len)) {
- set_autocomplete_string ("notify_settings");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "notify_settings", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_peer_notify_settings (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "exported_invite", cur_token_real_len)) {
- set_autocomplete_string ("exported_invite");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "exported_invite", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f132d5, .id = "ExportedChatInvite", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_exported_chat_invite (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "bot_info", cur_token_real_len)) {
- set_autocomplete_string ("bot_info");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "bot_info", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field6) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_chat_invite_already (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "chat", cur_token_real_len)) {
- set_autocomplete_string ("chat");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "chat", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_chat (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_chat_invite (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_chat_located (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3631cf4c && T->type->name != 0xc9ce30b3)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "distance", cur_token_real_len)) {
- set_autocomplete_string ("distance");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "distance", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_chat_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc8d7493e && T->type->name != 0x3728b6c1)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "inviter_id", cur_token_real_len)) {
- set_autocomplete_string ("inviter_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "inviter_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_chat_participants_forbidden (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_chat_participants (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "admin_id", cur_token_real_len)) {
- set_autocomplete_string ("admin_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "admin_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "participants", cur_token_real_len)) {
- set_autocomplete_string ("participants");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "participants", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_real_len)) {
- set_autocomplete_string ("version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_chat_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_chat_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "photo_small", cur_token_real_len)) {
- set_autocomplete_string ("photo_small");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "photo_small", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_file_location (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "photo_big", cur_token_real_len)) {
- set_autocomplete_string ("photo_big");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "photo_big", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_file_location (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_client_d_h_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6643b654 && T->type->name != 0x99bc49ab)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_real_len)) {
- set_autocomplete_string ("server_nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "retry_id", cur_token_real_len)) {
- set_autocomplete_string ("retry_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "retry_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "g_b", cur_token_real_len)) {
- set_autocomplete_string ("g_b");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "g_b", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_config (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e32b894 && T->type->name != 0xb1cd476b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "expires", cur_token_real_len)) {
- set_autocomplete_string ("expires");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "expires", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "test_mode", cur_token_real_len)) {
- set_autocomplete_string ("test_mode");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "test_mode", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "this_dc", cur_token_real_len)) {
- set_autocomplete_string ("this_dc");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "this_dc", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "dc_options", cur_token_real_len)) {
- set_autocomplete_string ("dc_options");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "dc_options", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 13 && !cur_token_quoted && !memcmp (cur_token, "chat_size_max", cur_token_real_len)) {
- set_autocomplete_string ("chat_size_max");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 13 && !memcmp (cur_token, "chat_size_max", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 18 && !cur_token_quoted && !memcmp (cur_token, "broadcast_size_max", cur_token_real_len)) {
- set_autocomplete_string ("broadcast_size_max");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 18 && !memcmp (cur_token, "broadcast_size_max", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 19 && !cur_token_quoted && !memcmp (cur_token, "forwarded_count_max", cur_token_real_len)) {
- set_autocomplete_string ("forwarded_count_max");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 19 && !memcmp (cur_token, "forwarded_count_max", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field8) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 23 && !cur_token_quoted && !memcmp (cur_token, "online_update_period_ms", cur_token_real_len)) {
- set_autocomplete_string ("online_update_period_ms");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 23 && !memcmp (cur_token, "online_update_period_ms", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field9) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 23 && !cur_token_quoted && !memcmp (cur_token, "offline_blur_timeout_ms", cur_token_real_len)) {
- set_autocomplete_string ("offline_blur_timeout_ms");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 23 && !memcmp (cur_token, "offline_blur_timeout_ms", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field10) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 23 && !cur_token_quoted && !memcmp (cur_token, "offline_idle_timeout_ms", cur_token_real_len)) {
- set_autocomplete_string ("offline_idle_timeout_ms");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 23 && !memcmp (cur_token, "offline_idle_timeout_ms", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field11) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 23 && !cur_token_quoted && !memcmp (cur_token, "online_cloud_timeout_ms", cur_token_real_len)) {
- set_autocomplete_string ("online_cloud_timeout_ms");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 23 && !memcmp (cur_token, "online_cloud_timeout_ms", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field12) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 21 && !cur_token_quoted && !memcmp (cur_token, "notify_cloud_delay_ms", cur_token_real_len)) {
- set_autocomplete_string ("notify_cloud_delay_ms");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 21 && !memcmp (cur_token, "notify_cloud_delay_ms", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field13) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 23 && !cur_token_quoted && !memcmp (cur_token, "notify_default_delay_ms", cur_token_real_len)) {
- set_autocomplete_string ("notify_default_delay_ms");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 23 && !memcmp (cur_token, "notify_default_delay_ms", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field14) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 13 && !cur_token_quoted && !memcmp (cur_token, "chat_big_size", cur_token_real_len)) {
- set_autocomplete_string ("chat_big_size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 13 && !memcmp (cur_token, "chat_big_size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field15) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 19 && !cur_token_quoted && !memcmp (cur_token, "push_chat_period_ms", cur_token_real_len)) {
- set_autocomplete_string ("push_chat_period_ms");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 19 && !memcmp (cur_token, "push_chat_period_ms", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field16 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field16) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "push_chat_limit", cur_token_real_len)) {
- set_autocomplete_string ("push_chat_limit");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "push_chat_limit", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field17 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field17) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 17 && !cur_token_quoted && !memcmp (cur_token, "disabled_features", cur_token_real_len)) {
- set_autocomplete_string ("disabled_features");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 17 && !memcmp (cur_token, "disabled_features", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field18 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae636f24, .id = "DisabledFeature", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field18) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf911c994 && T->type->name != 0x06ee366b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "mutual", cur_token_real_len)) {
- set_autocomplete_string ("mutual");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "mutual", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_contact_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x561bc879 && T->type->name != 0xa9e43786)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_contact_found (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xea879f95 && T->type->name != 0x1578606a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_contact_link_unknown (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_contact_link_none (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_contact_link_has_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_contact_link_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_contact_status (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd3680c61 && T->type->name != 0x2c97f39e)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "status", cur_token_real_len)) {
- set_autocomplete_string ("status");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "status", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_user_status (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_contact_suggested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3de191a1 && T->type->name != 0xc21e6e5e)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "mutual_contacts", cur_token_real_len)) {
- set_autocomplete_string ("mutual_contacts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "mutual_contacts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_dc_option_l28 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "hostname", cur_token_real_len)) {
- set_autocomplete_string ("hostname");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "hostname", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "ip_address", cur_token_real_len)) {
- set_autocomplete_string ("ip_address");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "ip_address", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "port", cur_token_real_len)) {
- set_autocomplete_string ("port");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "port", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_dc_option (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "ip_address", cur_token_real_len)) {
- set_autocomplete_string ("ip_address");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "ip_address", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "port", cur_token_real_len)) {
- set_autocomplete_string ("port");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "port", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "ttl", cur_token_real_len)) {
- set_autocomplete_string ("ttl");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "ttl", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_real_len)) {
- set_autocomplete_string ("media");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_decrypted_message_media (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_real_len)) {
- set_autocomplete_string ("action");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_decrypted_message_action (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_set_message_t_t_l (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "ttl_seconds", cur_token_real_len)) {
- set_autocomplete_string ("ttl_seconds");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "ttl_seconds", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_read_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "random_ids", cur_token_real_len)) {
- set_autocomplete_string ("random_ids");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "random_ids", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_delete_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "random_ids", cur_token_real_len)) {
- set_autocomplete_string ("random_ids");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "random_ids", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_screenshot_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "random_ids", cur_token_real_len)) {
- set_autocomplete_string ("random_ids");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "random_ids", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_flush_history (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_resend (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "start_seq_no", cur_token_real_len)) {
- set_autocomplete_string ("start_seq_no");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "start_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "end_seq_no", cur_token_real_len)) {
- set_autocomplete_string ("end_seq_no");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "end_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_notify_layer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "layer", cur_token_real_len)) {
- set_autocomplete_string ("layer");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "layer", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_real_len)) {
- set_autocomplete_string ("action");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_send_message_action (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_request_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "exchange_id", cur_token_real_len)) {
- set_autocomplete_string ("exchange_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "exchange_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "g_a", cur_token_real_len)) {
- set_autocomplete_string ("g_a");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "g_a", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_accept_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "exchange_id", cur_token_real_len)) {
- set_autocomplete_string ("exchange_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "exchange_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "g_b", cur_token_real_len)) {
- set_autocomplete_string ("g_b");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "g_b", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_real_len)) {
- set_autocomplete_string ("key_fingerprint");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_abort_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "exchange_id", cur_token_real_len)) {
- set_autocomplete_string ("exchange_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "exchange_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_commit_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "exchange_id", cur_token_real_len)) {
- set_autocomplete_string ("exchange_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "exchange_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_real_len)) {
- set_autocomplete_string ("key_fingerprint");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_action_noop (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_decrypted_message_layer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1be31789 && T->type->name != 0xe41ce876)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "random_bytes", cur_token_real_len)) {
- set_autocomplete_string ("random_bytes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "random_bytes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "layer", cur_token_real_len)) {
- set_autocomplete_string ("layer");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "layer", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "in_seq_no", cur_token_real_len)) {
- set_autocomplete_string ("in_seq_no");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "in_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "out_seq_no", cur_token_real_len)) {
- set_autocomplete_string ("out_seq_no");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "out_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x535b7918, .id = "DecryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_decrypted_message (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_decrypted_message_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "str_thumb", cur_token_real_len)) {
- set_autocomplete_string ("str_thumb");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "str_thumb", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_w", cur_token_real_len)) {
- set_autocomplete_string ("thumb_w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "thumb_w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_h", cur_token_real_len)) {
- set_autocomplete_string ("thumb_h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "thumb_h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_real_len)) {
- set_autocomplete_string ("w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_real_len)) {
- set_autocomplete_string ("h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_real_len)) {
- set_autocomplete_string ("key");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "iv", cur_token_real_len)) {
- set_autocomplete_string ("iv");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "iv", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field8) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_media_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "latitude", cur_token_real_len)) {
- set_autocomplete_string ("latitude");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "latitude", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_double (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "longitude", cur_token_real_len)) {
- set_autocomplete_string ("longitude");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "longitude", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_double (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_real_len)) {
- set_autocomplete_string ("phone_number");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_real_len)) {
- set_autocomplete_string ("first_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_real_len)) {
- set_autocomplete_string ("last_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "str_thumb", cur_token_real_len)) {
- set_autocomplete_string ("str_thumb");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "str_thumb", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_w", cur_token_real_len)) {
- set_autocomplete_string ("thumb_w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "thumb_w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_h", cur_token_real_len)) {
- set_autocomplete_string ("thumb_h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "thumb_h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "file_name", cur_token_real_len)) {
- set_autocomplete_string ("file_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "file_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_real_len)) {
- set_autocomplete_string ("mime_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_real_len)) {
- set_autocomplete_string ("key");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "iv", cur_token_real_len)) {
- set_autocomplete_string ("iv");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "iv", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field8) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "str_thumb", cur_token_real_len)) {
- set_autocomplete_string ("str_thumb");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "str_thumb", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_w", cur_token_real_len)) {
- set_autocomplete_string ("thumb_w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "thumb_w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_h", cur_token_real_len)) {
- set_autocomplete_string ("thumb_h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "thumb_h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_real_len)) {
- set_autocomplete_string ("mime_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_real_len)) {
- set_autocomplete_string ("w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_real_len)) {
- set_autocomplete_string ("h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field8) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_real_len)) {
- set_autocomplete_string ("key");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field9) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "iv", cur_token_real_len)) {
- set_autocomplete_string ("iv");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "iv", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field10) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_real_len)) {
- set_autocomplete_string ("mime_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_real_len)) {
- set_autocomplete_string ("key");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "iv", cur_token_real_len)) {
- set_autocomplete_string ("iv");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "iv", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_media_external_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_real_len)) {
- set_autocomplete_string ("mime_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_real_len)) {
- set_autocomplete_string ("thumb");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo_size (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_real_len)) {
- set_autocomplete_string ("dc_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "attributes", cur_token_real_len)) {
- set_autocomplete_string ("attributes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "attributes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field8) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_media_video_l12 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "str_thumb", cur_token_real_len)) {
- set_autocomplete_string ("str_thumb");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "str_thumb", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_w", cur_token_real_len)) {
- set_autocomplete_string ("thumb_w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "thumb_w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_h", cur_token_real_len)) {
- set_autocomplete_string ("thumb_h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "thumb_h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_real_len)) {
- set_autocomplete_string ("w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_real_len)) {
- set_autocomplete_string ("h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_real_len)) {
- set_autocomplete_string ("key");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field8) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "iv", cur_token_real_len)) {
- set_autocomplete_string ("iv");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "iv", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field9) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_decrypted_message_media_audio_l12 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_real_len)) {
- set_autocomplete_string ("key");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "iv", cur_token_real_len)) {
- set_autocomplete_string ("iv");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "iv", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_dialog (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc1dd804a && T->type->name != 0x3e227fb5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_peer (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "top_message", cur_token_real_len)) {
- set_autocomplete_string ("top_message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "top_message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 17 && !cur_token_quoted && !memcmp (cur_token, "read_inbox_max_id", cur_token_real_len)) {
- set_autocomplete_string ("read_inbox_max_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 17 && !memcmp (cur_token, "read_inbox_max_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "unread_count", cur_token_real_len)) {
- set_autocomplete_string ("unread_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "unread_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "notify_settings", cur_token_real_len)) {
- set_autocomplete_string ("notify_settings");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "notify_settings", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_peer_notify_settings (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_disabled_feature (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae636f24 && T->type->name != 0x519c90db)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "feature", cur_token_real_len)) {
- set_autocomplete_string ("feature");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "feature", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "description", cur_token_real_len)) {
- set_autocomplete_string ("description");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "description", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_document_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_real_len)) {
- set_autocomplete_string ("mime_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_real_len)) {
- set_autocomplete_string ("thumb");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo_size (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_real_len)) {
- set_autocomplete_string ("dc_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "attributes", cur_token_real_len)) {
- set_autocomplete_string ("attributes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "attributes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field8) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_document_l19 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "file_name", cur_token_real_len)) {
- set_autocomplete_string ("file_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "file_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_real_len)) {
- set_autocomplete_string ("mime_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_real_len)) {
- set_autocomplete_string ("thumb");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo_size (field8) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_real_len)) {
- set_autocomplete_string ("dc_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field9) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_document_attribute_image_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_real_len)) {
- set_autocomplete_string ("w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_real_len)) {
- set_autocomplete_string ("h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_document_attribute_animated (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_document_attribute_sticker_l28 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "alt", cur_token_real_len)) {
- set_autocomplete_string ("alt");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "alt", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_document_attribute_sticker (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "alt", cur_token_real_len)) {
- set_autocomplete_string ("alt");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "alt", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "stickerset", cur_token_real_len)) {
- set_autocomplete_string ("stickerset");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "stickerset", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_sticker_set (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_document_attribute_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_real_len)) {
- set_autocomplete_string ("w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_real_len)) {
- set_autocomplete_string ("h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_document_attribute_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_document_attribute_filename (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "file_name", cur_token_real_len)) {
- set_autocomplete_string ("file_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "file_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_double (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2210c154 && T->type->name != 0xddef3eab)) { return -1; }
- if (is_double ()) {
- local_next_token ();
- return 0;
- } else {
- return -1;
- }
-}
-int autocomplete_constructor_encrypted_chat_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_encrypted_chat_waiting (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "admin_id", cur_token_real_len)) {
- set_autocomplete_string ("admin_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "admin_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "participant_id", cur_token_real_len)) {
- set_autocomplete_string ("participant_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "participant_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_encrypted_chat_requested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "admin_id", cur_token_real_len)) {
- set_autocomplete_string ("admin_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "admin_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "participant_id", cur_token_real_len)) {
- set_autocomplete_string ("participant_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "participant_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "g_a", cur_token_real_len)) {
- set_autocomplete_string ("g_a");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "g_a", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field6) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_encrypted_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "admin_id", cur_token_real_len)) {
- set_autocomplete_string ("admin_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "admin_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "participant_id", cur_token_real_len)) {
- set_autocomplete_string ("participant_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "participant_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "g_a_or_b", cur_token_real_len)) {
- set_autocomplete_string ("g_a_or_b");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "g_a_or_b", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_real_len)) {
- set_autocomplete_string ("key_fingerprint");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field7) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_encrypted_chat_discarded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_encrypted_file_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_real_len)) {
- set_autocomplete_string ("dc_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_real_len)) {
- set_autocomplete_string ("key_fingerprint");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_real_len)) {
- set_autocomplete_string ("bytes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_real_len)) {
- set_autocomplete_string ("file");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_encrypted_file (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_encrypted_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_real_len)) {
- set_autocomplete_string ("bytes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_error (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc4b9f9bb && T->type->name != 0x3b460644)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "code", cur_token_real_len)) {
- set_autocomplete_string ("code");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "code", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "text", cur_token_real_len)) {
- set_autocomplete_string ("text");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "text", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_chat_invite_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_chat_invite_exported (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "link", cur_token_real_len)) {
- set_autocomplete_string ("link");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "link", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_file_location_unavailable (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "volume_id", cur_token_real_len)) {
- set_autocomplete_string ("volume_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "volume_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "local_id", cur_token_real_len)) {
- set_autocomplete_string ("local_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "local_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "secret", cur_token_real_len)) {
- set_autocomplete_string ("secret");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "secret", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_real_len)) {
- set_autocomplete_string ("dc_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "volume_id", cur_token_real_len)) {
- set_autocomplete_string ("volume_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "volume_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "local_id", cur_token_real_len)) {
- set_autocomplete_string ("local_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "local_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "secret", cur_token_real_len)) {
- set_autocomplete_string ("secret");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "secret", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_geo_chat_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_geo_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_real_len)) {
- set_autocomplete_string ("from_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_real_len)) {
- set_autocomplete_string ("media");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_message_media (field6) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_geo_chat_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_real_len)) {
- set_autocomplete_string ("from_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_real_len)) {
- set_autocomplete_string ("action");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_message_action (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_geo_point_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "longitude", cur_token_real_len)) {
- set_autocomplete_string ("longitude");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "longitude", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_double (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "latitude", cur_token_real_len)) {
- set_autocomplete_string ("latitude");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "latitude", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_double (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_imported_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd0028438 && T->type->name != 0x2ffd7bc7)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "client_id", cur_token_real_len)) {
- set_autocomplete_string ("client_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "client_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_app_event (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x770656a8 && T->type->name != 0x88f9a957)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "time", cur_token_real_len)) {
- set_autocomplete_string ("time");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "time", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_double (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_real_len)) {
- set_autocomplete_string ("type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "data", cur_token_real_len)) {
- set_autocomplete_string ("data");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "data", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_audio_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_chat_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_chat_uploaded_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_real_len)) {
- set_autocomplete_string ("file");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "crop", cur_token_real_len)) {
- set_autocomplete_string ("crop");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "crop", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_photo_crop (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_chat_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_photo (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "crop", cur_token_real_len)) {
- set_autocomplete_string ("crop");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "crop", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_photo_crop (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_phone_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf392b7f4 && T->type->name != 0x0c6d480b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "client_id", cur_token_real_len)) {
- set_autocomplete_string ("client_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "client_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "phone", cur_token_real_len)) {
- set_autocomplete_string ("phone");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "phone", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_real_len)) {
- set_autocomplete_string ("first_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_real_len)) {
- set_autocomplete_string ("last_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_document_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_encrypted_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf141b5e1 && T->type->name != 0x0ebe4a1e)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_encrypted_file_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_encrypted_file_uploaded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "parts", cur_token_real_len)) {
- set_autocomplete_string ("parts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "parts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "md5_checksum", cur_token_real_len)) {
- set_autocomplete_string ("md5_checksum");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "md5_checksum", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_real_len)) {
- set_autocomplete_string ("key_fingerprint");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_encrypted_file_big_uploaded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "parts", cur_token_real_len)) {
- set_autocomplete_string ("parts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "parts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_real_len)) {
- set_autocomplete_string ("key_fingerprint");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "parts", cur_token_real_len)) {
- set_autocomplete_string ("parts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "parts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "name", cur_token_real_len)) {
- set_autocomplete_string ("name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "md5_checksum", cur_token_real_len)) {
- set_autocomplete_string ("md5_checksum");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "md5_checksum", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_file_big (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "parts", cur_token_real_len)) {
- set_autocomplete_string ("parts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "parts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "name", cur_token_real_len)) {
- set_autocomplete_string ("name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "volume_id", cur_token_real_len)) {
- set_autocomplete_string ("volume_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "volume_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "local_id", cur_token_real_len)) {
- set_autocomplete_string ("local_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "local_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "secret", cur_token_real_len)) {
- set_autocomplete_string ("secret");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "secret", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_video_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_encrypted_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_audio_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_document_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_geo_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x74d456fa && T->type->name != 0x8b2ba905)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_geo_point_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "latitude", cur_token_real_len)) {
- set_autocomplete_string ("latitude");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "latitude", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_double (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "longitude", cur_token_real_len)) {
- set_autocomplete_string ("longitude");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "longitude", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_double (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_media_uploaded_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_real_len)) {
- set_autocomplete_string ("file");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_real_len)) {
- set_autocomplete_string ("caption");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_photo (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_real_len)) {
- set_autocomplete_string ("caption");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "geo_point", cur_token_real_len)) {
- set_autocomplete_string ("geo_point");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "geo_point", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_point (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_real_len)) {
- set_autocomplete_string ("phone_number");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_real_len)) {
- set_autocomplete_string ("first_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_real_len)) {
- set_autocomplete_string ("last_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_uploaded_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_real_len)) {
- set_autocomplete_string ("file");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_real_len)) {
- set_autocomplete_string ("w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_real_len)) {
- set_autocomplete_string ("h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_real_len)) {
- set_autocomplete_string ("caption");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_uploaded_thumb_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_real_len)) {
- set_autocomplete_string ("file");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_real_len)) {
- set_autocomplete_string ("thumb");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_file (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_real_len)) {
- set_autocomplete_string ("w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_real_len)) {
- set_autocomplete_string ("h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_real_len)) {
- set_autocomplete_string ("caption");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field6) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "video_id", cur_token_real_len)) {
- set_autocomplete_string ("video_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "video_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbb5f7a27, .id = "InputVideo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_video (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_real_len)) {
- set_autocomplete_string ("caption");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_uploaded_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_real_len)) {
- set_autocomplete_string ("file");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_real_len)) {
- set_autocomplete_string ("mime_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "audio_id", cur_token_real_len)) {
- set_autocomplete_string ("audio_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "audio_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae8e9c7b, .id = "InputAudio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_audio (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_uploaded_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_real_len)) {
- set_autocomplete_string ("file");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_real_len)) {
- set_autocomplete_string ("mime_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "attributes", cur_token_real_len)) {
- set_autocomplete_string ("attributes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "attributes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_uploaded_thumb_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_real_len)) {
- set_autocomplete_string ("file");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_real_len)) {
- set_autocomplete_string ("thumb");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_file (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_real_len)) {
- set_autocomplete_string ("mime_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "attributes", cur_token_real_len)) {
- set_autocomplete_string ("attributes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "attributes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "document_id", cur_token_real_len)) {
- set_autocomplete_string ("document_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "document_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6a8963fc, .id = "InputDocument", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_document (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_media_venue (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "geo_point", cur_token_real_len)) {
- set_autocomplete_string ("geo_point");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "geo_point", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_point (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "address", cur_token_real_len)) {
- set_autocomplete_string ("address");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "address", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "provider", cur_token_real_len)) {
- set_autocomplete_string ("provider");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "provider", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "venue_id", cur_token_real_len)) {
- set_autocomplete_string ("venue_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "venue_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_notify_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_peer (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_notify_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_notify_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_notify_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_notify_geo_chat_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "geo_peer", cur_token_real_len)) {
- set_autocomplete_string ("geo_peer");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "geo_peer", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_chat (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_peer_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_peer_self (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_peer_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_peer_foreign (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_peer_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_peer_notify_events_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_peer_notify_events_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_peer_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x46a2ce98 && T->type->name != 0xb95d3167)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "mute_until", cur_token_real_len)) {
- set_autocomplete_string ("mute_until");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "mute_until", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "sound", cur_token_real_len)) {
- set_autocomplete_string ("sound");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "sound", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 13 && !cur_token_quoted && !memcmp (cur_token, "show_previews", cur_token_real_len)) {
- set_autocomplete_string ("show_previews");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 13 && !memcmp (cur_token, "show_previews", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "events_mask", cur_token_real_len)) {
- set_autocomplete_string ("events_mask");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "events_mask", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_photo_crop_auto (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_photo_crop (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "crop_left", cur_token_real_len)) {
- set_autocomplete_string ("crop_left");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "crop_left", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_double (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "crop_top", cur_token_real_len)) {
- set_autocomplete_string ("crop_top");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "crop_top", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_double (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "crop_width", cur_token_real_len)) {
- set_autocomplete_string ("crop_width");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "crop_width", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_double (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_privacy_key_status_timestamp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4f96cb18 && T->type->name != 0xb06934e7)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_privacy_value_allow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_privacy_value_allow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_privacy_value_allow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_privacy_value_disallow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_privacy_value_disallow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_privacy_value_disallow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_sticker_set_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_sticker_set_i_d (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_sticker_set_short_name (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "short_name", cur_token_real_len)) {
- set_autocomplete_string ("short_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "short_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_user_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_user_self (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_user_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_user_foreign (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_video_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_int (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8509bda && T->type->name != 0x57af6425)) { return -1; }
- if (is_int ()) {
- local_next_token ();
- return 0;
- } else {
- return -1;
- }
-}
-int autocomplete_constructor_int128 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7d36c439 && T->type->name != 0x82c93bc6)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_int256 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf2c798b3 && T->type->name != 0x0d38674c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_keyboard_button (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa2fa4880 && T->type->name != 0x5d05b77f)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_keyboard_button_row (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77608b83 && T->type->name != 0x889f747c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa2fa4880, .id = "KeyboardButton", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_long (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22076cba && T->type->name != 0xddf89345)) { return -1; }
- if (is_int ()) {
- local_next_token ();
- return 0;
- } else {
- return -1;
- }
-}
-int autocomplete_constructor_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_real_len)) {
- set_autocomplete_string ("from_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "to_id", cur_token_real_len)) {
- set_autocomplete_string ("to_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "to_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_peer (field4) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "fwd_from_id", cur_token_real_len)) {
- set_autocomplete_string ("fwd_from_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "fwd_from_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "fwd_date", cur_token_real_len)) {
- set_autocomplete_string ("fwd_date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "fwd_date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "reply_to_msg_id", cur_token_real_len)) {
- set_autocomplete_string ("reply_to_msg_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "reply_to_msg_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field8) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field9) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_real_len)) {
- set_autocomplete_string ("media");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_message_media (field10) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 6)) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "reply_markup", cur_token_real_len)) {
- set_autocomplete_string ("reply_markup");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "reply_markup", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_reply_markup (field11) < 0) { return -1;}
- }
- return 0;
-}
-int autocomplete_constructor_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_real_len)) {
- set_autocomplete_string ("from_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "to_id", cur_token_real_len)) {
- set_autocomplete_string ("to_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "to_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_peer (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_real_len)) {
- set_autocomplete_string ("action");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_message_action (field6) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_action_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_message_action_chat_create (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_action_chat_edit_title (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_action_chat_edit_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_action_chat_delete_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_message_action_chat_add_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_action_chat_delete_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_action_geo_chat_create (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "address", cur_token_real_len)) {
- set_autocomplete_string ("address");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "address", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_action_geo_chat_checkin (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_message_action_chat_joined_by_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "inviter_id", cur_token_real_len)) {
- set_autocomplete_string ("inviter_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "inviter_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_message_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_real_len)) {
- set_autocomplete_string ("caption");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "video", cur_token_real_len)) {
- set_autocomplete_string ("video");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "video", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_video (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_real_len)) {
- set_autocomplete_string ("caption");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_media_geo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "geo", cur_token_real_len)) {
- set_autocomplete_string ("geo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "geo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_geo_point (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_real_len)) {
- set_autocomplete_string ("phone_number");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_real_len)) {
- set_autocomplete_string ("first_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_real_len)) {
- set_autocomplete_string ("last_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_media_unsupported (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_message_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "document", cur_token_real_len)) {
- set_autocomplete_string ("document");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "document", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_document (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "audio", cur_token_real_len)) {
- set_autocomplete_string ("audio");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "audio", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fc5ec4e, .id = "Audio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_audio (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_media_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "webpage", cur_token_real_len)) {
- set_autocomplete_string ("webpage");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "webpage", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_web_page (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_media_venue (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "geo", cur_token_real_len)) {
- set_autocomplete_string ("geo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "geo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_geo_point (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "address", cur_token_real_len)) {
- set_autocomplete_string ("address");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "address", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "provider", cur_token_real_len)) {
- set_autocomplete_string ("provider");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "provider", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "venue_id", cur_token_real_len)) {
- set_autocomplete_string ("venue_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "venue_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_media_photo_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_message_media_video_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "video", cur_token_real_len)) {
- set_autocomplete_string ("video");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "video", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_video (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_input_messages_filter_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_messages_filter_photos (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_messages_filter_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_messages_filter_photo_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_messages_filter_photo_video_documents (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_messages_filter_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_input_messages_filter_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_nearest_dc (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8e1a1775 && T->type->name != 0x71e5e88a)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "country", cur_token_real_len)) {
- set_autocomplete_string ("country");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "country", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "this_dc", cur_token_real_len)) {
- set_autocomplete_string ("this_dc");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "this_dc", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "nearest_dc", cur_token_real_len)) {
- set_autocomplete_string ("nearest_dc");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "nearest_dc", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_notify_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_peer (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_notify_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_notify_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_notify_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_null (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56730bcc && T->type->name != 0xa98cf433)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_p_q_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "pq", cur_token_real_len)) {
- set_autocomplete_string ("pq");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "pq", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "p", cur_token_real_len)) {
- set_autocomplete_string ("p");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "p", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "q", cur_token_real_len)) {
- set_autocomplete_string ("q");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "q", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_real_len)) {
- set_autocomplete_string ("server_nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "new_nonce", cur_token_real_len)) {
- set_autocomplete_string ("new_nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "new_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int256 (field6) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_p_q_inner_data_temp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "pq", cur_token_real_len)) {
- set_autocomplete_string ("pq");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "pq", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "p", cur_token_real_len)) {
- set_autocomplete_string ("p");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "p", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "q", cur_token_real_len)) {
- set_autocomplete_string ("q");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "q", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_real_len)) {
- set_autocomplete_string ("server_nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "new_nonce", cur_token_real_len)) {
- set_autocomplete_string ("new_nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "new_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int256 (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "expires_in", cur_token_real_len)) {
- set_autocomplete_string ("expires_in");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "expires_in", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_peer_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_peer_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_peer_notify_events_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_peer_notify_events_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_peer_notify_settings_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_peer_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "mute_until", cur_token_real_len)) {
- set_autocomplete_string ("mute_until");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "mute_until", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "sound", cur_token_real_len)) {
- set_autocomplete_string ("sound");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "sound", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 13 && !cur_token_quoted && !memcmp (cur_token, "show_previews", cur_token_real_len)) {
- set_autocomplete_string ("show_previews");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 13 && !memcmp (cur_token, "show_previews", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "events_mask", cur_token_real_len)) {
- set_autocomplete_string ("events_mask");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "events_mask", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "geo", cur_token_real_len)) {
- set_autocomplete_string ("geo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "geo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_geo_point (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "sizes", cur_token_real_len)) {
- set_autocomplete_string ("sizes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "sizes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field6) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_photo_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_real_len)) {
- set_autocomplete_string ("caption");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "geo", cur_token_real_len)) {
- set_autocomplete_string ("geo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "geo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_geo_point (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "sizes", cur_token_real_len)) {
- set_autocomplete_string ("sizes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "sizes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field7) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_photo_size_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_real_len)) {
- set_autocomplete_string ("type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_photo_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_real_len)) {
- set_autocomplete_string ("type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "location", cur_token_real_len)) {
- set_autocomplete_string ("location");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "location", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_file_location (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_real_len)) {
- set_autocomplete_string ("w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_real_len)) {
- set_autocomplete_string ("h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_photo_cached_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_real_len)) {
- set_autocomplete_string ("type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "location", cur_token_real_len)) {
- set_autocomplete_string ("location");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "location", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_file_location (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_real_len)) {
- set_autocomplete_string ("w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_real_len)) {
- set_autocomplete_string ("h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_real_len)) {
- set_autocomplete_string ("bytes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_privacy_key_status_timestamp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbc2eab30 && T->type->name != 0x43d154cf)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_privacy_value_allow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_privacy_value_allow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_privacy_value_allow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_privacy_value_disallow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_privacy_value_disallow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_privacy_value_disallow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_received_notify_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa384b779 && T->type->name != 0x5c7b4886)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_reply_keyboard_hide (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_reply_keyboard_force_reply (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_reply_keyboard_markup (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "rows", cur_token_real_len)) {
- set_autocomplete_string ("rows");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "rows", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77608b83, .id = "KeyboardButtonRow", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_res_p_q (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x05162463 && T->type->name != 0xfae9db9c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_real_len)) {
- set_autocomplete_string ("server_nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "pq", cur_token_real_len)) {
- set_autocomplete_string ("pq");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "pq", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 30 && !cur_token_quoted && !memcmp (cur_token, "server_public_key_fingerprints", cur_token_real_len)) {
- set_autocomplete_string ("server_public_key_fingerprints");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 30 && !memcmp (cur_token, "server_public_key_fingerprints", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_send_message_typing_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_send_message_cancel_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_send_message_record_video_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_send_message_upload_video_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_send_message_upload_video_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "progress", cur_token_real_len)) {
- set_autocomplete_string ("progress");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "progress", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_send_message_record_audio_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_send_message_upload_audio_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_send_message_upload_audio_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "progress", cur_token_real_len)) {
- set_autocomplete_string ("progress");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "progress", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_send_message_upload_photo_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "progress", cur_token_real_len)) {
- set_autocomplete_string ("progress");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "progress", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_send_message_upload_document_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_send_message_upload_document_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "progress", cur_token_real_len)) {
- set_autocomplete_string ("progress");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "progress", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_send_message_geo_location_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_send_message_choose_contact_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_server_d_h_params_fail (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_real_len)) {
- set_autocomplete_string ("server_nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "new_nonce_hash", cur_token_real_len)) {
- set_autocomplete_string ("new_nonce_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "new_nonce_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_server_d_h_params_ok (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_real_len)) {
- set_autocomplete_string ("server_nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 16 && !cur_token_quoted && !memcmp (cur_token, "encrypted_answer", cur_token_real_len)) {
- set_autocomplete_string ("encrypted_answer");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 16 && !memcmp (cur_token, "encrypted_answer", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_server_d_h_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5890dba && T->type->name != 0x4a76f245)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_real_len)) {
- set_autocomplete_string ("server_nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "g", cur_token_real_len)) {
- set_autocomplete_string ("g");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "g", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "dh_prime", cur_token_real_len)) {
- set_autocomplete_string ("dh_prime");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "dh_prime", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "g_a", cur_token_real_len)) {
- set_autocomplete_string ("g_a");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "g_a", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "server_time", cur_token_real_len)) {
- set_autocomplete_string ("server_time");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "server_time", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_dh_gen_ok (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_real_len)) {
- set_autocomplete_string ("server_nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "new_nonce_hash1", cur_token_real_len)) {
- set_autocomplete_string ("new_nonce_hash1");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "new_nonce_hash1", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_dh_gen_retry (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_real_len)) {
- set_autocomplete_string ("server_nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "new_nonce_hash2", cur_token_real_len)) {
- set_autocomplete_string ("new_nonce_hash2");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "new_nonce_hash2", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_dh_gen_fail (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_real_len)) {
- set_autocomplete_string ("server_nonce");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "new_nonce_hash3", cur_token_real_len)) {
- set_autocomplete_string ("new_nonce_hash3");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "new_nonce_hash3", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_sticker_pack (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x12b299d4 && T->type->name != 0xed4d662b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "emoticon", cur_token_real_len)) {
- set_autocomplete_string ("emoticon");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "emoticon", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "documents", cur_token_real_len)) {
- set_autocomplete_string ("documents");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "documents", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_sticker_set (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa7a43b17 && T->type->name != 0x585bc4e8)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "short_name", cur_token_real_len)) {
- set_autocomplete_string ("short_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "short_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_string (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5286e24 && T->type->name != 0x4ad791db)) { return -1; }
- if (cur_token_len >= 0) {
- local_next_token ();
- return 0;
- } else {
- return -1;
- }
-}
-int autocomplete_constructor_update_new_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_message (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_real_len)) {
- set_autocomplete_string ("pts_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_message_i_d (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_delete_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_real_len)) {
- set_autocomplete_string ("messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_real_len)) {
- set_autocomplete_string ("pts_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_user_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_real_len)) {
- set_autocomplete_string ("action");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_send_message_action (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_chat_user_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_real_len)) {
- set_autocomplete_string ("action");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_send_message_action (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_chat_participants (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "participants", cur_token_real_len)) {
- set_autocomplete_string ("participants");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "participants", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_chat_participants (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_user_status (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "status", cur_token_real_len)) {
- set_autocomplete_string ("status");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "status", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_user_status (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_user_name (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_real_len)) {
- set_autocomplete_string ("first_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_real_len)) {
- set_autocomplete_string ("last_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "username", cur_token_real_len)) {
- set_autocomplete_string ("username");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "username", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_user_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_user_profile_photo (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "previous", cur_token_real_len)) {
- set_autocomplete_string ("previous");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "previous", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_contact_registered (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_contact_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "my_link", cur_token_real_len)) {
- set_autocomplete_string ("my_link");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "my_link", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_contact_link (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "foreign_link", cur_token_real_len)) {
- set_autocomplete_string ("foreign_link");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "foreign_link", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_contact_link (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_new_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "auth_key_id", cur_token_real_len)) {
- set_autocomplete_string ("auth_key_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "auth_key_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "device", cur_token_real_len)) {
- set_autocomplete_string ("device");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "device", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "location", cur_token_real_len)) {
- set_autocomplete_string ("location");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "location", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_new_geo_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "geo_message", cur_token_real_len)) {
- set_autocomplete_string ("geo_message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "geo_message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_geo_chat_message (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_new_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "encr_message", cur_token_real_len)) {
- set_autocomplete_string ("encr_message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "encr_message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_encrypted_message (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "qts", cur_token_real_len)) {
- set_autocomplete_string ("qts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "qts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_encrypted_chat_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_encryption (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "encr_chat", cur_token_real_len)) {
- set_autocomplete_string ("encr_chat");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "encr_chat", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb1718213, .id = "EncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_encrypted_chat (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_encrypted_messages_read (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "max_date", cur_token_real_len)) {
- set_autocomplete_string ("max_date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "max_date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_chat_participant_add (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "inviter_id", cur_token_real_len)) {
- set_autocomplete_string ("inviter_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "inviter_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_real_len)) {
- set_autocomplete_string ("version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_chat_participant_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_real_len)) {
- set_autocomplete_string ("version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_dc_options (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "dc_options", cur_token_real_len)) {
- set_autocomplete_string ("dc_options");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "dc_options", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_user_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "blocked", cur_token_real_len)) {
- set_autocomplete_string ("blocked");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "blocked", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "notify_peer", cur_token_real_len)) {
- set_autocomplete_string ("notify_peer");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "notify_peer", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fcb8237, .id = "NotifyPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_notify_peer (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "notify_settings", cur_token_real_len)) {
- set_autocomplete_string ("notify_settings");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "notify_settings", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_peer_notify_settings (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_service_notification (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_real_len)) {
- set_autocomplete_string ("type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "message_text", cur_token_real_len)) {
- set_autocomplete_string ("message_text");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "message_text", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_real_len)) {
- set_autocomplete_string ("media");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_message_media (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "popup", cur_token_real_len)) {
- set_autocomplete_string ("popup");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "popup", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_privacy (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_real_len)) {
- set_autocomplete_string ("key");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbc2eab30, .id = "PrivacyKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_privacy_key (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "rules", cur_token_real_len)) {
- set_autocomplete_string ("rules");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "rules", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_user_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "phone", cur_token_real_len)) {
- set_autocomplete_string ("phone");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "phone", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_read_history_inbox (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_peer (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_real_len)) {
- set_autocomplete_string ("max_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_real_len)) {
- set_autocomplete_string ("pts_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_read_history_outbox (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_peer (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_real_len)) {
- set_autocomplete_string ("max_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_real_len)) {
- set_autocomplete_string ("pts_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "webpage", cur_token_real_len)) {
- set_autocomplete_string ("webpage");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "webpage", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_web_page (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_read_messages_contents (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_real_len)) {
- set_autocomplete_string ("messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_real_len)) {
- set_autocomplete_string ("pts_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_update_msg_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_real_len)) {
- set_autocomplete_string ("pts_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_updates_too_long (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_update_short_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_real_len)) {
- set_autocomplete_string ("pts_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "fwd_from_id", cur_token_real_len)) {
- set_autocomplete_string ("fwd_from_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "fwd_from_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "fwd_date", cur_token_real_len)) {
- set_autocomplete_string ("fwd_date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "fwd_date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "reply_to_msg_id", cur_token_real_len)) {
- set_autocomplete_string ("reply_to_msg_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "reply_to_msg_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field10) < 0) { return -1;}
- }
- return 0;
-}
-int autocomplete_constructor_update_short_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_real_len)) {
- set_autocomplete_string ("from_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_real_len)) {
- set_autocomplete_string ("pts_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field8) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "fwd_from_id", cur_token_real_len)) {
- set_autocomplete_string ("fwd_from_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "fwd_from_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "fwd_date", cur_token_real_len)) {
- set_autocomplete_string ("fwd_date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "fwd_date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "reply_to_msg_id", cur_token_real_len)) {
- set_autocomplete_string ("reply_to_msg_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "reply_to_msg_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field11) < 0) { return -1;}
- }
- return 0;
-}
-int autocomplete_constructor_update_short (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "update", cur_token_real_len)) {
- set_autocomplete_string ("update");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "update", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_update (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_updates_combined (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "updates", cur_token_real_len)) {
- set_autocomplete_string ("updates");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "updates", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "seq_start", cur_token_real_len)) {
- set_autocomplete_string ("seq_start");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "seq_start", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_real_len)) {
- set_autocomplete_string ("seq");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_updates (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "updates", cur_token_real_len)) {
- set_autocomplete_string ("updates");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "updates", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_real_len)) {
- set_autocomplete_string ("seq");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_user_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 1)) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_real_len)) {
- set_autocomplete_string ("first_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_real_len)) {
- set_autocomplete_string ("last_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "username", cur_token_real_len)) {
- set_autocomplete_string ("username");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "username", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 4)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "phone", cur_token_real_len)) {
- set_autocomplete_string ("phone");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "phone", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 5)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_user_profile_photo (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 6)) {
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "status", cur_token_real_len)) {
- set_autocomplete_string ("status");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "status", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_user_status (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 14)) {
- if (cur_token_len == -3 && cur_token_real_len <= 16 && !cur_token_quoted && !memcmp (cur_token, "bot_info_version", cur_token_real_len)) {
- set_autocomplete_string ("bot_info_version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 16 && !memcmp (cur_token, "bot_info_version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field10) < 0) { return -1;}
- }
- return 0;
-}
-int autocomplete_constructor_user_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5a89ac5b && T->type->name != 0xa57653a4)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "user", cur_token_real_len)) {
- set_autocomplete_string ("user");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "user", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_user (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "link", cur_token_real_len)) {
- set_autocomplete_string ("link");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "link", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_contacts_link (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 13 && !cur_token_quoted && !memcmp (cur_token, "profile_photo", cur_token_real_len)) {
- set_autocomplete_string ("profile_photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 13 && !memcmp (cur_token, "profile_photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "notify_settings", cur_token_real_len)) {
- set_autocomplete_string ("notify_settings");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "notify_settings", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_peer_notify_settings (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "blocked", cur_token_real_len)) {
- set_autocomplete_string ("blocked");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "blocked", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "bot_info", cur_token_real_len)) {
- set_autocomplete_string ("bot_info");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "bot_info", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bot_info (field6) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_user_profile_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_user_profile_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "photo_id", cur_token_real_len)) {
- set_autocomplete_string ("photo_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "photo_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "photo_small", cur_token_real_len)) {
- set_autocomplete_string ("photo_small");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "photo_small", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_file_location (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "photo_big", cur_token_real_len)) {
- set_autocomplete_string ("photo_big");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "photo_big", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_file_location (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_user_status_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_user_status_online (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "expires", cur_token_real_len)) {
- set_autocomplete_string ("expires");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "expires", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_user_status_offline (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "was_online", cur_token_real_len)) {
- set_autocomplete_string ("was_online");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "was_online", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_user_status_recently (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_user_status_last_week (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_user_status_last_month (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_vector (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1cb5c415 && T->type->name != 0xe34a3bea)) { return -1; }
- if (ODDP(T->params[0])) { return -1; }
- struct paramed_type *var0 = T->params[0]; assert (var0);
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var1 = INT2PTR (get_int ());
- assert (var1);
- local_next_token ();
- expect_token_autocomplete ("[", 1);
- int multiplicity3 = PTR2INT (
- ((void *)var1) + 0 );
- struct paramed_type *field3 =
- var0;
- while (multiplicity3 -- > 0) {
- if (autocomplete_type_any (field3) < 0) { return -1;}
- }
- expect_token_autocomplete ("]", 1);
- return 0;
-}
-int autocomplete_constructor_video_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_real_len)) {
- set_autocomplete_string ("thumb");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo_size (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_real_len)) {
- set_autocomplete_string ("dc_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field8) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_real_len)) {
- set_autocomplete_string ("w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field9) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_real_len)) {
- set_autocomplete_string ("h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field10) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_video_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_real_len)) {
- set_autocomplete_string ("caption");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_real_len)) {
- set_autocomplete_string ("mime_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field7) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_real_len)) {
- set_autocomplete_string ("size");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field8) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_real_len)) {
- set_autocomplete_string ("thumb");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo_size (field9) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_real_len)) {
- set_autocomplete_string ("dc_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field10) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_real_len)) {
- set_autocomplete_string ("w");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field11) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_real_len)) {
- set_autocomplete_string ("h");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field12) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_wall_paper (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "sizes", cur_token_real_len)) {
- set_autocomplete_string ("sizes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "sizes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "color", cur_token_real_len)) {
- set_autocomplete_string ("color");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "color", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_wall_paper_solid (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "bg_color", cur_token_real_len)) {
- set_autocomplete_string ("bg_color");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "bg_color", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "color", cur_token_real_len)) {
- set_autocomplete_string ("color");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "color", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_web_page_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_web_page_pending (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "url", cur_token_real_len)) {
- set_autocomplete_string ("url");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "url", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "display_url", cur_token_real_len)) {
- set_autocomplete_string ("display_url");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "display_url", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_real_len)) {
- set_autocomplete_string ("type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 1)) {
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "site_name", cur_token_real_len)) {
- set_autocomplete_string ("site_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "site_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "description", cur_token_real_len)) {
- set_autocomplete_string ("description");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "description", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 4)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 5)) {
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "embed_url", cur_token_real_len)) {
- set_autocomplete_string ("embed_url");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "embed_url", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 5)) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "embed_type", cur_token_real_len)) {
- set_autocomplete_string ("embed_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "embed_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 6)) {
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "embed_width", cur_token_real_len)) {
- set_autocomplete_string ("embed_width");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "embed_width", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field12) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 6)) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "embed_height", cur_token_real_len)) {
- set_autocomplete_string ("embed_height");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "embed_height", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field13) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 7)) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_real_len)) {
- set_autocomplete_string ("duration");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field14) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 8)) {
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "author", cur_token_real_len)) {
- set_autocomplete_string ("author");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "author", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field15) < 0) { return -1;}
- }
- return 0;
-}
-int autocomplete_constructor_account_authorizations (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1250abde && T->type->name != 0xedaf5421)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bf2e6f6, .id = "Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_account_no_password (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "new_salt", cur_token_real_len)) {
- set_autocomplete_string ("new_salt");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "new_salt", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 25 && !cur_token_quoted && !memcmp (cur_token, "email_unconfirmed_pattern", cur_token_real_len)) {
- set_autocomplete_string ("email_unconfirmed_pattern");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 25 && !memcmp (cur_token, "email_unconfirmed_pattern", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_account_password (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "current_salt", cur_token_real_len)) {
- set_autocomplete_string ("current_salt");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "current_salt", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "new_salt", cur_token_real_len)) {
- set_autocomplete_string ("new_salt");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "new_salt", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "hint", cur_token_real_len)) {
- set_autocomplete_string ("hint");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "hint", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "has_recovery", cur_token_real_len)) {
- set_autocomplete_string ("has_recovery");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "has_recovery", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 25 && !cur_token_quoted && !memcmp (cur_token, "email_unconfirmed_pattern", cur_token_real_len)) {
- set_autocomplete_string ("email_unconfirmed_pattern");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 25 && !memcmp (cur_token, "email_unconfirmed_pattern", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_account_password_input_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbcfc532c && T->type->name != 0x4303acd3)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "new_salt", cur_token_real_len)) {
- set_autocomplete_string ("new_salt");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "new_salt", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field2) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len == -3 && cur_token_real_len <= 17 && !cur_token_quoted && !memcmp (cur_token, "new_password_hash", cur_token_real_len)) {
- set_autocomplete_string ("new_password_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 17 && !memcmp (cur_token, "new_password_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "hint", cur_token_real_len)) {
- set_autocomplete_string ("hint");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "hint", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 1)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "email", cur_token_real_len)) {
- set_autocomplete_string ("email");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "email", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- }
- return 0;
-}
-int autocomplete_constructor_account_password_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb7b72ab3 && T->type->name != 0x4848d54c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_account_privacy_rules (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x554abb6f && T->type->name != 0xaab54490)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "rules", cur_token_real_len)) {
- set_autocomplete_string ("rules");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "rules", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_account_sent_change_phone_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa4f58c4c && T->type->name != 0x5b0a73b3)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_real_len)) {
- set_autocomplete_string ("phone_code_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 17 && !cur_token_quoted && !memcmp (cur_token, "send_call_timeout", cur_token_real_len)) {
- set_autocomplete_string ("send_call_timeout");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 17 && !memcmp (cur_token, "send_call_timeout", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_auth_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xff036af1 && T->type->name != 0x00fc950e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_user (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_auth_checked_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x811ea28e && T->type->name != 0x7ee15d71)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_auth_exported_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdf969c2d && T->type->name != 0x206963d2)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_real_len)) {
- set_autocomplete_string ("bytes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_auth_password_recovery (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x137948a5 && T->type->name != 0xec86b75a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_auth_sent_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 16 && !cur_token_quoted && !memcmp (cur_token, "phone_registered", cur_token_real_len)) {
- set_autocomplete_string ("phone_registered");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 16 && !memcmp (cur_token, "phone_registered", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_real_len)) {
- set_autocomplete_string ("phone_code_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 17 && !cur_token_quoted && !memcmp (cur_token, "send_call_timeout", cur_token_real_len)) {
- set_autocomplete_string ("send_call_timeout");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 17 && !memcmp (cur_token, "send_call_timeout", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "is_password", cur_token_real_len)) {
- set_autocomplete_string ("is_password");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "is_password", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_auth_sent_app_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 16 && !cur_token_quoted && !memcmp (cur_token, "phone_registered", cur_token_real_len)) {
- set_autocomplete_string ("phone_registered");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 16 && !memcmp (cur_token, "phone_registered", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_real_len)) {
- set_autocomplete_string ("phone_code_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 17 && !cur_token_quoted && !memcmp (cur_token, "send_call_timeout", cur_token_real_len)) {
- set_autocomplete_string ("send_call_timeout");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 17 && !memcmp (cur_token, "send_call_timeout", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "is_password", cur_token_real_len)) {
- set_autocomplete_string ("is_password");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "is_password", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_encr_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0377168f && T->type->name != 0xfc88e970)) { return -1; }
- expect_token_autocomplete ("[", 1);
- int multiplicity1 = PTR2INT (
- INT2PTR (64) );
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- while (multiplicity1 -- > 0) {
- if (autocomplete_type_any (field1) < 0) { return -1;}
- }
- expect_token_autocomplete ("]", 1);
- return 0;
-}
-int autocomplete_constructor_binlog_start (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_binlog_dc_option (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "dc", cur_token_real_len)) {
- set_autocomplete_string ("dc");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "dc", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "name", cur_token_real_len)) {
- set_autocomplete_string ("name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "ip", cur_token_real_len)) {
- set_autocomplete_string ("ip");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "ip", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "port", cur_token_real_len)) {
- set_autocomplete_string ("port");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "port", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_dc_option_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "dc", cur_token_real_len)) {
- set_autocomplete_string ("dc");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "dc", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "name", cur_token_real_len)) {
- set_autocomplete_string ("name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "ip", cur_token_real_len)) {
- set_autocomplete_string ("ip");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "ip", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "port", cur_token_real_len)) {
- set_autocomplete_string ("port");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "port", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_auth_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "dc", cur_token_real_len)) {
- set_autocomplete_string ("dc");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "dc", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_real_len)) {
- set_autocomplete_string ("key");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_binlog_encr_key (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_default_dc (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "dc", cur_token_real_len)) {
- set_autocomplete_string ("dc");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "dc", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_dc_signed (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "dc", cur_token_real_len)) {
- set_autocomplete_string ("dc");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "dc", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_our_id (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_set_dh_params (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "root", cur_token_real_len)) {
- set_autocomplete_string ("root");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "root", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "prime", cur_token_real_len)) {
- set_autocomplete_string ("prime");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "prime", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_binlog_encr_key (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_real_len)) {
- set_autocomplete_string ("version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_set_pts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_set_qts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "qts", cur_token_real_len)) {
- set_autocomplete_string ("qts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "qts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_set_date (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_set_seq (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_real_len)) {
- set_autocomplete_string ("seq");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_encr_chat_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_encr_chat_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "admin", cur_token_real_len)) {
- set_autocomplete_string ("admin");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "admin", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_real_len)) {
- set_autocomplete_string ("key");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_binlog_encr_key (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "g_key", cur_token_real_len)) {
- set_autocomplete_string ("g_key");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "g_key", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_binlog_encr_key (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "state", cur_token_real_len)) {
- set_autocomplete_string ("state");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "state", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "ttl", cur_token_real_len)) {
- set_autocomplete_string ("ttl");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "ttl", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 25)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "layer", cur_token_real_len)) {
- set_autocomplete_string ("layer");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "layer", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "in_seq_no", cur_token_real_len)) {
- set_autocomplete_string ("in_seq_no");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "in_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field12) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "last_in_seq_no", cur_token_real_len)) {
- set_autocomplete_string ("last_in_seq_no");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "last_in_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field13) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "out_seq_no", cur_token_real_len)) {
- set_autocomplete_string ("out_seq_no");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "out_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field14) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 27)) {
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_real_len)) {
- set_autocomplete_string ("key_fingerprint");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field15) < 0) { return -1;}
- }
- return 0;
-}
-int autocomplete_constructor_binlog_encr_chat_exchange_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "exchange_id", cur_token_real_len)) {
- set_autocomplete_string ("exchange_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "exchange_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_real_len)) {
- set_autocomplete_string ("key");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_binlog_encr_key (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "state", cur_token_real_len)) {
- set_autocomplete_string ("state");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "state", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- }
- return 0;
-}
-int autocomplete_constructor_binlog_user_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_user_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_real_len)) {
- set_autocomplete_string ("access_hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_real_len)) {
- set_autocomplete_string ("first_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_real_len)) {
- set_autocomplete_string ("last_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "phone", cur_token_real_len)) {
- set_autocomplete_string ("phone");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "phone", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "username", cur_token_real_len)) {
- set_autocomplete_string ("username");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "username", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "real_first_name", cur_token_real_len)) {
- set_autocomplete_string ("real_first_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "real_first_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "real_last_name", cur_token_real_len)) {
- set_autocomplete_string ("real_last_name");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "real_last_name", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "user_photo", cur_token_real_len)) {
- set_autocomplete_string ("user_photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "user_photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_user_profile_photo (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "last_read_in", cur_token_real_len)) {
- set_autocomplete_string ("last_read_in");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "last_read_in", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field12) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 25)) {
- if (cur_token_len == -3 && cur_token_real_len <= 13 && !cur_token_quoted && !memcmp (cur_token, "last_read_out", cur_token_real_len)) {
- set_autocomplete_string ("last_read_out");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 13 && !memcmp (cur_token, "last_read_out", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field13) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "bot_info", cur_token_real_len)) {
- set_autocomplete_string ("bot_info");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "bot_info", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bot_info (field14) < 0) { return -1;}
- }
- return 0;
-}
-int autocomplete_constructor_binlog_chat_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "user_num", cur_token_real_len)) {
- set_autocomplete_string ("user_num");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "user_num", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_real_len)) {
- set_autocomplete_string ("version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "participants", cur_token_real_len)) {
- set_autocomplete_string ("participants");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "participants", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "chat_photo", cur_token_real_len)) {
- set_autocomplete_string ("chat_photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "chat_photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_chat_photo (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "admin", cur_token_real_len)) {
- set_autocomplete_string ("admin");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "admin", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "last_read_in", cur_token_real_len)) {
- set_autocomplete_string ("last_read_in");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "last_read_in", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 25)) {
- if (cur_token_len == -3 && cur_token_real_len <= 13 && !cur_token_quoted && !memcmp (cur_token, "last_read_out", cur_token_real_len)) {
- set_autocomplete_string ("last_read_out");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 13 && !memcmp (cur_token, "last_read_out", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field12) < 0) { return -1;}
- }
- return 0;
-}
-int autocomplete_constructor_binlog_chat_add_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_real_len)) {
- set_autocomplete_string ("version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "inviter_id", cur_token_real_len)) {
- set_autocomplete_string ("inviter_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "inviter_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_chat_del_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_real_len)) {
- set_autocomplete_string ("version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_set_msg_id (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "old_id", cur_token_real_len)) {
- set_autocomplete_string ("old_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "old_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "new_id", cur_token_real_len)) {
- set_autocomplete_string ("new_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "new_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_message_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "lid", cur_token_real_len)) {
- set_autocomplete_string ("lid");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "lid", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_message_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "lid", cur_token_real_len)) {
- set_autocomplete_string ("lid");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "lid", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_real_len)) {
- set_autocomplete_string ("from_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "to_type", cur_token_real_len)) {
- set_autocomplete_string ("to_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "to_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "to_id", cur_token_real_len)) {
- set_autocomplete_string ("to_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "to_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "fwd_from_id", cur_token_real_len)) {
- set_autocomplete_string ("fwd_from_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "fwd_from_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "fwd_date", cur_token_real_len)) {
- set_autocomplete_string ("fwd_date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "fwd_date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_real_len)) {
- set_autocomplete_string ("media");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_message_media (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_real_len)) {
- set_autocomplete_string ("action");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_message_action (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "reply_id", cur_token_real_len)) {
- set_autocomplete_string ("reply_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "reply_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field12) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "reply_markup", cur_token_real_len)) {
- set_autocomplete_string ("reply_markup");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "reply_markup", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_reply_markup (field13) < 0) { return -1;}
- }
- return 0;
-}
-int autocomplete_constructor_binlog_message_encr_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "lid", cur_token_real_len)) {
- set_autocomplete_string ("lid");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "lid", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_real_len)) {
- set_autocomplete_string ("from_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "to_type", cur_token_real_len)) {
- set_autocomplete_string ("to_type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "to_type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "to_id", cur_token_real_len)) {
- set_autocomplete_string ("to_id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "to_id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "encr_media", cur_token_real_len)) {
- set_autocomplete_string ("encr_media");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "encr_media", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_decrypted_message_media (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "encr_action", cur_token_real_len)) {
- set_autocomplete_string ("encr_action");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "encr_action", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_decrypted_message_action (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_real_len)) {
- set_autocomplete_string ("file");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_encrypted_file (field10) < 0) { return -1;}
- }
- return 0;
-}
-int autocomplete_constructor_binlog_msg_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "lid", cur_token_real_len)) {
- set_autocomplete_string ("lid");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "lid", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_binlog_reset_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_contacts_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "blocked", cur_token_real_len)) {
- set_autocomplete_string ("blocked");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "blocked", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_contacts_blocked_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "count", cur_token_real_len)) {
- set_autocomplete_string ("count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "blocked", cur_token_real_len)) {
- set_autocomplete_string ("blocked");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "blocked", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_contacts_contacts_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_contacts_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "contacts", cur_token_real_len)) {
- set_autocomplete_string ("contacts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "contacts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf911c994, .id = "Contact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_contacts_found (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0566000e && T->type->name != 0xfa99fff1)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "results", cur_token_real_len)) {
- set_autocomplete_string ("results");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "results", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xea879f95, .id = "ContactFound", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_contacts_imported_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xad524315 && T->type->name != 0x52adbcea)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "imported", cur_token_real_len)) {
- set_autocomplete_string ("imported");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "imported", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xd0028438, .id = "ImportedContact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "retry_contacts", cur_token_real_len)) {
- set_autocomplete_string ("retry_contacts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "retry_contacts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_contacts_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3ace484c && T->type->name != 0xc531b7b3)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "my_link", cur_token_real_len)) {
- set_autocomplete_string ("my_link");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "my_link", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_contact_link (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "foreign_link", cur_token_real_len)) {
- set_autocomplete_string ("foreign_link");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "foreign_link", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_contact_link (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "user", cur_token_real_len)) {
- set_autocomplete_string ("user");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "user", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_user (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_contacts_suggested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5649dcc5 && T->type->name != 0xa9b6233a)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "results", cur_token_real_len)) {
- set_autocomplete_string ("results");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "results", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3de191a1, .id = "ContactSuggested", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_geochats_located (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x48feb267 && T->type->name != 0xb7014d98)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "results", cur_token_real_len)) {
- set_autocomplete_string ("results");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "results", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3631cf4c, .id = "ChatLocated", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_real_len)) {
- set_autocomplete_string ("messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_geochats_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_real_len)) {
- set_autocomplete_string ("messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_geochats_messages_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "count", cur_token_real_len)) {
- set_autocomplete_string ("count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_real_len)) {
- set_autocomplete_string ("messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_geochats_stated_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17b1578b && T->type->name != 0xe84ea874)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_geo_chat_message (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_real_len)) {
- set_autocomplete_string ("seq");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_help_app_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "critical", cur_token_real_len)) {
- set_autocomplete_string ("critical");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "critical", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "url", cur_token_real_len)) {
- set_autocomplete_string ("url");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "url", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "text", cur_token_real_len)) {
- set_autocomplete_string ("text");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "text", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_help_no_app_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_help_invite_text (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x18cb9f78 && T->type->name != 0xe7346087)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_help_support (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17c6b5f6 && T->type->name != 0xe8394a09)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_real_len)) {
- set_autocomplete_string ("phone_number");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "user", cur_token_real_len)) {
- set_autocomplete_string ("user");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "user", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_user (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_affected_history (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb45c69d1 && T->type->name != 0x4ba3962e)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_real_len)) {
- set_autocomplete_string ("pts_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_real_len)) {
- set_autocomplete_string ("offset");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_affected_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x84d19185 && T->type->name != 0x7b2e6e7a)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_real_len)) {
- set_autocomplete_string ("pts_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_all_stickers_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_messages_all_stickers (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_real_len)) {
- set_autocomplete_string ("hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "packs", cur_token_real_len)) {
- set_autocomplete_string ("packs");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "packs", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "sets", cur_token_real_len)) {
- set_autocomplete_string ("sets");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "sets", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "documents", cur_token_real_len)) {
- set_autocomplete_string ("documents");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "documents", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_chat_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe5d7d19c && T->type->name != 0x1a282e63)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "full_chat", cur_token_real_len)) {
- set_autocomplete_string ("full_chat");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "full_chat", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02a614, .id = "ChatFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_chat_full (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x64ff9fd5 && T->type->name != 0x9b00602a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_dh_config_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "random", cur_token_real_len)) {
- set_autocomplete_string ("random");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "random", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_dh_config (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "g", cur_token_real_len)) {
- set_autocomplete_string ("g");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "g", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "p", cur_token_real_len)) {
- set_autocomplete_string ("p");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "p", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_real_len)) {
- set_autocomplete_string ("version");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "random", cur_token_real_len)) {
- set_autocomplete_string ("random");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "random", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_dialogs (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "dialogs", cur_token_real_len)) {
- set_autocomplete_string ("dialogs");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "dialogs", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_real_len)) {
- set_autocomplete_string ("messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_dialogs_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "count", cur_token_real_len)) {
- set_autocomplete_string ("count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "dialogs", cur_token_real_len)) {
- set_autocomplete_string ("dialogs");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "dialogs", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_real_len)) {
- set_autocomplete_string ("messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3f4e0648 && T->type->name != 0xc0b1f9b7)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_messages_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_real_len)) {
- set_autocomplete_string ("messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_messages_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "count", cur_token_real_len)) {
- set_autocomplete_string ("count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_real_len)) {
- set_autocomplete_string ("messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_sent_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_sent_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_real_len)) {
- set_autocomplete_string ("file");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_encrypted_file (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_sent_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_real_len)) {
- set_autocomplete_string ("media");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_message_media (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_real_len)) {
- set_autocomplete_string ("pts_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_sent_message_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_real_len)) {
- set_autocomplete_string ("media");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_message_media (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_real_len)) {
- set_autocomplete_string ("pts_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "links", cur_token_real_len)) {
- set_autocomplete_string ("links");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "links", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field6) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_real_len)) {
- set_autocomplete_string ("seq");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_sticker_set (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb60a24a6 && T->type->name != 0x49f5db59)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "set", cur_token_real_len)) {
- set_autocomplete_string ("set");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "set", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_sticker_set (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "packs", cur_token_real_len)) {
- set_autocomplete_string ("packs");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "packs", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "documents", cur_token_real_len)) {
- set_autocomplete_string ("documents");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "documents", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_messages_stickers_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_messages_stickers (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_real_len)) {
- set_autocomplete_string ("hash");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "stickers", cur_token_real_len)) {
- set_autocomplete_string ("stickers");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "stickers", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_photos_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x20212ca8 && T->type->name != 0xdfded357)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_photo (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_photos_photos (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "photos", cur_token_real_len)) {
- set_autocomplete_string ("photos");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "photos", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_photos_photos_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "count", cur_token_real_len)) {
- set_autocomplete_string ("count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "photos", cur_token_real_len)) {
- set_autocomplete_string ("photos");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "photos", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_storage_file_unknown (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_storage_file_jpeg (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_storage_file_gif (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_storage_file_png (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_storage_file_pdf (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_storage_file_mp3 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_storage_file_mov (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_storage_file_partial (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_storage_file_mp4 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_storage_file_webp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int autocomplete_constructor_updates_difference_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_real_len)) {
- set_autocomplete_string ("seq");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_updates_difference (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "new_messages", cur_token_real_len)) {
- set_autocomplete_string ("new_messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "new_messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 22 && !cur_token_quoted && !memcmp (cur_token, "new_encrypted_messages", cur_token_real_len)) {
- set_autocomplete_string ("new_encrypted_messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 22 && !memcmp (cur_token, "new_encrypted_messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 13 && !cur_token_quoted && !memcmp (cur_token, "other_updates", cur_token_real_len)) {
- set_autocomplete_string ("other_updates");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 13 && !memcmp (cur_token, "other_updates", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "state", cur_token_real_len)) {
- set_autocomplete_string ("state");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "state", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_updates_state (field6) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_updates_difference_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "new_messages", cur_token_real_len)) {
- set_autocomplete_string ("new_messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "new_messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 22 && !cur_token_quoted && !memcmp (cur_token, "new_encrypted_messages", cur_token_real_len)) {
- set_autocomplete_string ("new_encrypted_messages");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 22 && !memcmp (cur_token, "new_encrypted_messages", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 13 && !cur_token_quoted && !memcmp (cur_token, "other_updates", cur_token_real_len)) {
- set_autocomplete_string ("other_updates");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 13 && !memcmp (cur_token, "other_updates", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_real_len)) {
- set_autocomplete_string ("chats");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field5) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 18 && !cur_token_quoted && !memcmp (cur_token, "intermediate_state", cur_token_real_len)) {
- set_autocomplete_string ("intermediate_state");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 18 && !memcmp (cur_token, "intermediate_state", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_updates_state (field6) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_updates_state (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa56c2a3e && T->type->name != 0x5a93d5c1)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "qts", cur_token_real_len)) {
- set_autocomplete_string ("qts");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "qts", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_real_len)) {
- set_autocomplete_string ("seq");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "unread_count", cur_token_real_len)) {
- set_autocomplete_string ("unread_count");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "unread_count", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int autocomplete_constructor_upload_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x096a18d5 && T->type->name != 0xf695e72a)) { return -1; }
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_real_len)) {
- set_autocomplete_string ("type");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3e2838a8, .id = "storage.FileType", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_storage_file_type (field1) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "mtime", cur_token_real_len)) {
- set_autocomplete_string ("mtime");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "mtime", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_real_len)) {
- set_autocomplete_string ("bytes");
- return -1;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field3) < 0) { return -1;}
- return 0;
-}
-int autocomplete_type_account_days_t_t_l (struct paramed_type *T) {
- if (autocomplete_constructor_account_days_t_t_l (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_account_days_t_t_l (struct paramed_type *T) {
- if (autocomplete_constructor_account_days_t_t_l (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_account_days_t_t_l (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "accountDaysTTL", text_len)) { *R = tstrdup ("accountDaysTTL"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_audio (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_audio); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "audioEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_audio_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 5 && !memcmp (cur_token, "audio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_audio (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_audio); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "audioEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_audio_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 5 && !memcmp (cur_token, "audio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_audio (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "audioEmpty", text_len)) { *R = tstrdup ("audioEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "audio", text_len)) { *R = tstrdup ("audio"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_authorization (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_authorization); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "authorization", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_authorization (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_authorization (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_authorization); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "authorization", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_authorization (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_authorization (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "authorization", text_len)) { *R = tstrdup ("authorization"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_bool (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_bool); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "boolFalse", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_bool_false (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "boolTrue", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_bool_true (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_bool (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_bool); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "boolFalse", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_bool_false (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "boolTrue", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_bool_true (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_bool (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "boolFalse", text_len)) { *R = tstrdup ("boolFalse"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "boolTrue", text_len)) { *R = tstrdup ("boolTrue"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_bot_command (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_bot_command); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "botCommand", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_bot_command (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "botCommandOld", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_bot_command_old (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_bot_command (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_bot_command); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "botCommand", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_bot_command (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "botCommandOld", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_bot_command_old (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_bot_command (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "botCommand", text_len)) { *R = tstrdup ("botCommand"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "botCommandOld", text_len)) { *R = tstrdup ("botCommandOld"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_bot_info (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_bot_info); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "botInfoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_bot_info_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "botInfo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_bot_info (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_bot_info (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_bot_info); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "botInfoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_bot_info_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "botInfo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_bot_info (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_bot_info (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "botInfoEmpty", text_len)) { *R = tstrdup ("botInfoEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "botInfo", text_len)) { *R = tstrdup ("botInfo"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_bytes (struct paramed_type *T) {
- if (autocomplete_constructor_bytes (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_bytes (struct paramed_type *T) {
- if (autocomplete_constructor_bytes (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_bytes (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "bytes", text_len)) { *R = tstrdup ("bytes"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_chat (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "chatEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 4 && !memcmp (cur_token, "chat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "chatForbidden", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_forbidden (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "geoChat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geo_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_chat (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "chatEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 4 && !memcmp (cur_token, "chat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "chatForbidden", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_forbidden (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "geoChat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geo_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_chat (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "chatEmpty", text_len)) { *R = tstrdup ("chatEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "chat", text_len)) { *R = tstrdup ("chat"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "chatForbidden", text_len)) { *R = tstrdup ("chatForbidden"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "geoChat", text_len)) { *R = tstrdup ("geoChat"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_chat_full (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat_full); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 8 && !memcmp (cur_token, "chatFull", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_full (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_chat_full (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat_full); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 8 && !memcmp (cur_token, "chatFull", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_full (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_chat_full (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "chatFull", text_len)) { *R = tstrdup ("chatFull"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_chat_invite (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat_invite); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "chatInviteAlready", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_invite_already (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "chatInvite", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_invite (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_chat_invite (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat_invite); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "chatInviteAlready", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_invite_already (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "chatInvite", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_invite (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_chat_invite (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "chatInviteAlready", text_len)) { *R = tstrdup ("chatInviteAlready"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "chatInvite", text_len)) { *R = tstrdup ("chatInvite"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_chat_located (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat_located); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "chatLocated", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_located (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_chat_located (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat_located); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "chatLocated", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_located (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_chat_located (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "chatLocated", text_len)) { *R = tstrdup ("chatLocated"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_chat_participant (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat_participant); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "chatParticipant", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_participant (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_chat_participant (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat_participant); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "chatParticipant", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_participant (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_chat_participant (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "chatParticipant", text_len)) { *R = tstrdup ("chatParticipant"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_chat_participants (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat_participants); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "chatParticipantsForbidden", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_participants_forbidden (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "chatParticipants", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_participants (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_chat_participants (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat_participants); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "chatParticipantsForbidden", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_participants_forbidden (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "chatParticipants", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_participants (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_chat_participants (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "chatParticipantsForbidden", text_len)) { *R = tstrdup ("chatParticipantsForbidden"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "chatParticipants", text_len)) { *R = tstrdup ("chatParticipants"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_chat_photo (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat_photo); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "chatPhotoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_photo_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 9 && !memcmp (cur_token, "chatPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_chat_photo (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_chat_photo); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "chatPhotoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_photo_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 9 && !memcmp (cur_token, "chatPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_chat_photo (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "chatPhotoEmpty", text_len)) { *R = tstrdup ("chatPhotoEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "chatPhoto", text_len)) { *R = tstrdup ("chatPhoto"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_client_d_h_inner_data (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_client_d_h_inner_data); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "client_DH_inner_data", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_client_d_h_inner_data (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_client_d_h_inner_data (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_client_d_h_inner_data); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "client_DH_inner_data", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_client_d_h_inner_data (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_client_d_h_inner_data (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "client_DH_inner_data", text_len)) { *R = tstrdup ("client_DH_inner_data"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_config (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_config); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "config", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_config (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_config (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_config); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "config", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_config (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_config (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "config", text_len)) { *R = tstrdup ("config"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_contact (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contact); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 7 && !memcmp (cur_token, "contact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_contact (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contact); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 7 && !memcmp (cur_token, "contact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_contact (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "contact", text_len)) { *R = tstrdup ("contact"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_contact_blocked (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contact_blocked); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "contactBlocked", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_blocked (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_contact_blocked (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contact_blocked); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "contactBlocked", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_blocked (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_contact_blocked (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "contactBlocked", text_len)) { *R = tstrdup ("contactBlocked"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_contact_found (struct paramed_type *T) {
- if (autocomplete_constructor_contact_found (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_contact_found (struct paramed_type *T) {
- if (autocomplete_constructor_contact_found (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_contact_found (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "contactFound", text_len)) { *R = tstrdup ("contactFound"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_contact_link (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contact_link); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "contactLinkUnknown", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_link_unknown (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "contactLinkNone", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_link_none (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "contactLinkHasPhone", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_link_has_phone (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "contactLinkContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_link_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_contact_link (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contact_link); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "contactLinkUnknown", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_link_unknown (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "contactLinkNone", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_link_none (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "contactLinkHasPhone", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_link_has_phone (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "contactLinkContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_link_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_contact_link (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "contactLinkUnknown", text_len)) { *R = tstrdup ("contactLinkUnknown"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "contactLinkNone", text_len)) { *R = tstrdup ("contactLinkNone"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "contactLinkHasPhone", text_len)) { *R = tstrdup ("contactLinkHasPhone"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "contactLinkContact", text_len)) { *R = tstrdup ("contactLinkContact"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_contact_status (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contact_status); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "contactStatus", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_status (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_contact_status (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contact_status); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "contactStatus", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_status (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_contact_status (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "contactStatus", text_len)) { *R = tstrdup ("contactStatus"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_contact_suggested (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contact_suggested); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "contactSuggested", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_suggested (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_contact_suggested (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contact_suggested); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "contactSuggested", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contact_suggested (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_contact_suggested (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "contactSuggested", text_len)) { *R = tstrdup ("contactSuggested"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_dc_option (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_dc_option); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "dcOptionL28", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_dc_option_l28 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "dcOption", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_dc_option (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_dc_option (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_dc_option); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "dcOptionL28", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_dc_option_l28 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "dcOption", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_dc_option (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_dc_option (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "dcOptionL28", text_len)) { *R = tstrdup ("dcOptionL28"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "dcOption", text_len)) { *R = tstrdup ("dcOption"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_decrypted_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_decrypted_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "decryptedMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "decryptedMessageService", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_service (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_decrypted_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_decrypted_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "decryptedMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "decryptedMessageService", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_service (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_decrypted_message (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "decryptedMessage", text_len)) { *R = tstrdup ("decryptedMessage"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "decryptedMessageService", text_len)) { *R = tstrdup ("decryptedMessageService"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_decrypted_message_action (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_decrypted_message_action); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 35 && !memcmp (cur_token, "decryptedMessageActionSetMessageTTL", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_set_message_t_t_l (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 34 && !memcmp (cur_token, "decryptedMessageActionReadMessages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_read_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 36 && !memcmp (cur_token, "decryptedMessageActionDeleteMessages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_delete_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 40 && !memcmp (cur_token, "decryptedMessageActionScreenshotMessages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_screenshot_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 34 && !memcmp (cur_token, "decryptedMessageActionFlushHistory", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_flush_history (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "decryptedMessageActionResend", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_resend (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 33 && !memcmp (cur_token, "decryptedMessageActionNotifyLayer", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_notify_layer (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "decryptedMessageActionTyping", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_typing (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 32 && !memcmp (cur_token, "decryptedMessageActionRequestKey", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_request_key (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "decryptedMessageActionAcceptKey", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_accept_key (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "decryptedMessageActionAbortKey", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_abort_key (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "decryptedMessageActionCommitKey", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_commit_key (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageActionNoop", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_noop (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_decrypted_message_action (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_decrypted_message_action); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 35 && !memcmp (cur_token, "decryptedMessageActionSetMessageTTL", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_set_message_t_t_l (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 34 && !memcmp (cur_token, "decryptedMessageActionReadMessages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_read_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 36 && !memcmp (cur_token, "decryptedMessageActionDeleteMessages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_delete_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 40 && !memcmp (cur_token, "decryptedMessageActionScreenshotMessages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_screenshot_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 34 && !memcmp (cur_token, "decryptedMessageActionFlushHistory", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_flush_history (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "decryptedMessageActionResend", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_resend (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 33 && !memcmp (cur_token, "decryptedMessageActionNotifyLayer", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_notify_layer (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "decryptedMessageActionTyping", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_typing (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 32 && !memcmp (cur_token, "decryptedMessageActionRequestKey", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_request_key (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "decryptedMessageActionAcceptKey", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_accept_key (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "decryptedMessageActionAbortKey", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_abort_key (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "decryptedMessageActionCommitKey", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_commit_key (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageActionNoop", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_action_noop (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_decrypted_message_action (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "decryptedMessageActionSetMessageTTL", text_len)) { *R = tstrdup ("decryptedMessageActionSetMessageTTL"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "decryptedMessageActionReadMessages", text_len)) { *R = tstrdup ("decryptedMessageActionReadMessages"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "decryptedMessageActionDeleteMessages", text_len)) { *R = tstrdup ("decryptedMessageActionDeleteMessages"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "decryptedMessageActionScreenshotMessages", text_len)) { *R = tstrdup ("decryptedMessageActionScreenshotMessages"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "decryptedMessageActionFlushHistory", text_len)) { *R = tstrdup ("decryptedMessageActionFlushHistory"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "decryptedMessageActionResend", text_len)) { *R = tstrdup ("decryptedMessageActionResend"); return index; } else { index ++; }}
- if (index == 6) { if (!strncmp (text, "decryptedMessageActionNotifyLayer", text_len)) { *R = tstrdup ("decryptedMessageActionNotifyLayer"); return index; } else { index ++; }}
- if (index == 7) { if (!strncmp (text, "decryptedMessageActionTyping", text_len)) { *R = tstrdup ("decryptedMessageActionTyping"); return index; } else { index ++; }}
- if (index == 8) { if (!strncmp (text, "decryptedMessageActionRequestKey", text_len)) { *R = tstrdup ("decryptedMessageActionRequestKey"); return index; } else { index ++; }}
- if (index == 9) { if (!strncmp (text, "decryptedMessageActionAcceptKey", text_len)) { *R = tstrdup ("decryptedMessageActionAcceptKey"); return index; } else { index ++; }}
- if (index == 10) { if (!strncmp (text, "decryptedMessageActionAbortKey", text_len)) { *R = tstrdup ("decryptedMessageActionAbortKey"); return index; } else { index ++; }}
- if (index == 11) { if (!strncmp (text, "decryptedMessageActionCommitKey", text_len)) { *R = tstrdup ("decryptedMessageActionCommitKey"); return index; } else { index ++; }}
- if (index == 12) { if (!strncmp (text, "decryptedMessageActionNoop", text_len)) { *R = tstrdup ("decryptedMessageActionNoop"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_decrypted_message_layer (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_decrypted_message_layer); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "decryptedMessageLayer", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_layer (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_decrypted_message_layer (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_decrypted_message_layer); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "decryptedMessageLayer", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_layer (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_decrypted_message_layer (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "decryptedMessageLayer", text_len)) { *R = tstrdup ("decryptedMessageLayer"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_decrypted_message_media (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_decrypted_message_media); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaGeoPoint", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_geo_point (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "decryptedMessageMediaContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 37 && !memcmp (cur_token, "decryptedMessageMediaExternalDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_external_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaVideoL12", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_video_l12 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaAudioL12", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_audio_l12 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_decrypted_message_media (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_decrypted_message_media); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaGeoPoint", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_geo_point (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "decryptedMessageMediaContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 37 && !memcmp (cur_token, "decryptedMessageMediaExternalDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_external_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaVideoL12", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_video_l12 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaAudioL12", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_decrypted_message_media_audio_l12 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_decrypted_message_media (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "decryptedMessageMediaEmpty", text_len)) { *R = tstrdup ("decryptedMessageMediaEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "decryptedMessageMediaPhoto", text_len)) { *R = tstrdup ("decryptedMessageMediaPhoto"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "decryptedMessageMediaGeoPoint", text_len)) { *R = tstrdup ("decryptedMessageMediaGeoPoint"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "decryptedMessageMediaContact", text_len)) { *R = tstrdup ("decryptedMessageMediaContact"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "decryptedMessageMediaDocument", text_len)) { *R = tstrdup ("decryptedMessageMediaDocument"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "decryptedMessageMediaVideo", text_len)) { *R = tstrdup ("decryptedMessageMediaVideo"); return index; } else { index ++; }}
- if (index == 6) { if (!strncmp (text, "decryptedMessageMediaAudio", text_len)) { *R = tstrdup ("decryptedMessageMediaAudio"); return index; } else { index ++; }}
- if (index == 7) { if (!strncmp (text, "decryptedMessageMediaExternalDocument", text_len)) { *R = tstrdup ("decryptedMessageMediaExternalDocument"); return index; } else { index ++; }}
- if (index == 8) { if (!strncmp (text, "decryptedMessageMediaVideoL12", text_len)) { *R = tstrdup ("decryptedMessageMediaVideoL12"); return index; } else { index ++; }}
- if (index == 9) { if (!strncmp (text, "decryptedMessageMediaAudioL12", text_len)) { *R = tstrdup ("decryptedMessageMediaAudioL12"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_dialog (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_dialog); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "dialog", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_dialog (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_dialog (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_dialog); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "dialog", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_dialog (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_dialog (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "dialog", text_len)) { *R = tstrdup ("dialog"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_disabled_feature (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_disabled_feature); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "disabledFeature", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_disabled_feature (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_disabled_feature (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_disabled_feature); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "disabledFeature", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_disabled_feature (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_disabled_feature (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "disabledFeature", text_len)) { *R = tstrdup ("disabledFeature"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_document (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_document); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "documentEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "document", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "document_l19", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_l19 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_document (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_document); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "documentEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "document", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "document_l19", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_l19 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_document (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "documentEmpty", text_len)) { *R = tstrdup ("documentEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "document", text_len)) { *R = tstrdup ("document"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "document_l19", text_len)) { *R = tstrdup ("document_l19"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_document_attribute (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_document_attribute); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "documentAttributeImageSize", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_image_size (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "documentAttributeAnimated", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_animated (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "documentAttributeStickerL28", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_sticker_l28 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "documentAttributeSticker", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_sticker (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "documentAttributeVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "documentAttributeAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "documentAttributeFilename", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_filename (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_document_attribute (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_document_attribute); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "documentAttributeImageSize", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_image_size (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "documentAttributeAnimated", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_animated (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "documentAttributeStickerL28", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_sticker_l28 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "documentAttributeSticker", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_sticker (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "documentAttributeVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "documentAttributeAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "documentAttributeFilename", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_document_attribute_filename (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_document_attribute (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "documentAttributeImageSize", text_len)) { *R = tstrdup ("documentAttributeImageSize"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "documentAttributeAnimated", text_len)) { *R = tstrdup ("documentAttributeAnimated"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "documentAttributeStickerL28", text_len)) { *R = tstrdup ("documentAttributeStickerL28"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "documentAttributeSticker", text_len)) { *R = tstrdup ("documentAttributeSticker"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "documentAttributeVideo", text_len)) { *R = tstrdup ("documentAttributeVideo"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "documentAttributeAudio", text_len)) { *R = tstrdup ("documentAttributeAudio"); return index; } else { index ++; }}
- if (index == 6) { if (!strncmp (text, "documentAttributeFilename", text_len)) { *R = tstrdup ("documentAttributeFilename"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_double (struct paramed_type *T) {
- if (autocomplete_constructor_double (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_double (struct paramed_type *T) {
- if (autocomplete_constructor_double (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_double (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "double", text_len)) { *R = tstrdup ("double"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_encrypted_chat (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_encrypted_chat); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "encryptedChatEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_chat_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "encryptedChatWaiting", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_chat_waiting (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "encryptedChatRequested", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_chat_requested (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "encryptedChat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "encryptedChatDiscarded", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_chat_discarded (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_encrypted_chat (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_encrypted_chat); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "encryptedChatEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_chat_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "encryptedChatWaiting", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_chat_waiting (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "encryptedChatRequested", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_chat_requested (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "encryptedChat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "encryptedChatDiscarded", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_chat_discarded (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_encrypted_chat (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "encryptedChatEmpty", text_len)) { *R = tstrdup ("encryptedChatEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "encryptedChatWaiting", text_len)) { *R = tstrdup ("encryptedChatWaiting"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "encryptedChatRequested", text_len)) { *R = tstrdup ("encryptedChatRequested"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "encryptedChat", text_len)) { *R = tstrdup ("encryptedChat"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "encryptedChatDiscarded", text_len)) { *R = tstrdup ("encryptedChatDiscarded"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_encrypted_file (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_encrypted_file); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "encryptedFileEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_file_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "encryptedFile", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_file (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_encrypted_file (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_encrypted_file); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "encryptedFileEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_file_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "encryptedFile", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_file (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_encrypted_file (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "encryptedFileEmpty", text_len)) { *R = tstrdup ("encryptedFileEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "encryptedFile", text_len)) { *R = tstrdup ("encryptedFile"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_encrypted_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_encrypted_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "encryptedMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "encryptedMessageService", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_message_service (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_encrypted_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_encrypted_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "encryptedMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "encryptedMessageService", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_encrypted_message_service (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_encrypted_message (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "encryptedMessage", text_len)) { *R = tstrdup ("encryptedMessage"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "encryptedMessageService", text_len)) { *R = tstrdup ("encryptedMessageService"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_error (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_error); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 5 && !memcmp (cur_token, "error", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_error (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_error (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_error); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 5 && !memcmp (cur_token, "error", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_error (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_error (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "error", text_len)) { *R = tstrdup ("error"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_exported_chat_invite (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_exported_chat_invite); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "chatInviteEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_invite_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "chatInviteExported", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_invite_exported (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_exported_chat_invite (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_exported_chat_invite); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "chatInviteEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_invite_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "chatInviteExported", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_chat_invite_exported (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_exported_chat_invite (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "chatInviteEmpty", text_len)) { *R = tstrdup ("chatInviteEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "chatInviteExported", text_len)) { *R = tstrdup ("chatInviteExported"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_file_location (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_file_location); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "fileLocationUnavailable", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_file_location_unavailable (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "fileLocation", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_file_location (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_file_location (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_file_location); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "fileLocationUnavailable", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_file_location_unavailable (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "fileLocation", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_file_location (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_file_location (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "fileLocationUnavailable", text_len)) { *R = tstrdup ("fileLocationUnavailable"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "fileLocation", text_len)) { *R = tstrdup ("fileLocation"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_geo_chat_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_geo_chat_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "geoChatMessageEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geo_chat_message_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "geoChatMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geo_chat_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "geoChatMessageService", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geo_chat_message_service (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_geo_chat_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_geo_chat_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "geoChatMessageEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geo_chat_message_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "geoChatMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geo_chat_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "geoChatMessageService", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geo_chat_message_service (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_geo_chat_message (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "geoChatMessageEmpty", text_len)) { *R = tstrdup ("geoChatMessageEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "geoChatMessage", text_len)) { *R = tstrdup ("geoChatMessage"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "geoChatMessageService", text_len)) { *R = tstrdup ("geoChatMessageService"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_geo_point (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_geo_point); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "geoPointEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geo_point_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "geoPoint", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geo_point (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_geo_point (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_geo_point); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "geoPointEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geo_point_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "geoPoint", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geo_point (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_geo_point (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "geoPointEmpty", text_len)) { *R = tstrdup ("geoPointEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "geoPoint", text_len)) { *R = tstrdup ("geoPoint"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_imported_contact (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_imported_contact); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "importedContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_imported_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_imported_contact (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_imported_contact); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "importedContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_imported_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_imported_contact (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "importedContact", text_len)) { *R = tstrdup ("importedContact"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_app_event (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_app_event); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputAppEvent", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_app_event (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_app_event (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_app_event); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputAppEvent", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_app_event (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_app_event (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputAppEvent", text_len)) { *R = tstrdup ("inputAppEvent"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_audio (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_audio); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputAudioEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_audio_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "inputAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_audio (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_audio); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputAudioEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_audio_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "inputAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_audio (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputAudioEmpty", text_len)) { *R = tstrdup ("inputAudioEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputAudio", text_len)) { *R = tstrdup ("inputAudio"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_chat_photo (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_chat_photo); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "inputChatPhotoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_chat_photo_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputChatUploadedPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_chat_uploaded_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputChatPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_chat_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_chat_photo (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_chat_photo); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "inputChatPhotoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_chat_photo_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputChatUploadedPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_chat_uploaded_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputChatPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_chat_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_chat_photo (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputChatPhotoEmpty", text_len)) { *R = tstrdup ("inputChatPhotoEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputChatUploadedPhoto", text_len)) { *R = tstrdup ("inputChatUploadedPhoto"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "inputChatPhoto", text_len)) { *R = tstrdup ("inputChatPhoto"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_contact (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_contact); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputPhoneContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_phone_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_contact (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_contact); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputPhoneContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_phone_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_contact (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputPhoneContact", text_len)) { *R = tstrdup ("inputPhoneContact"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_document (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_document); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputDocumentEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_document_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_document (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_document); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputDocumentEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_document_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_document (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputDocumentEmpty", text_len)) { *R = tstrdup ("inputDocumentEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputDocument", text_len)) { *R = tstrdup ("inputDocument"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_encrypted_chat (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_encrypted_chat); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputEncryptedChat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_encrypted_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_encrypted_chat (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_encrypted_chat); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputEncryptedChat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_encrypted_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_encrypted_chat (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputEncryptedChat", text_len)) { *R = tstrdup ("inputEncryptedChat"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_encrypted_file (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_encrypted_file); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputEncryptedFileEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_encrypted_file_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputEncryptedFileUploaded", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_encrypted_file_uploaded (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputEncryptedFile", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_encrypted_file (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "inputEncryptedFileBigUploaded", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_encrypted_file_big_uploaded (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_encrypted_file (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_encrypted_file); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputEncryptedFileEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_encrypted_file_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputEncryptedFileUploaded", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_encrypted_file_uploaded (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputEncryptedFile", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_encrypted_file (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "inputEncryptedFileBigUploaded", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_encrypted_file_big_uploaded (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_encrypted_file (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputEncryptedFileEmpty", text_len)) { *R = tstrdup ("inputEncryptedFileEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputEncryptedFileUploaded", text_len)) { *R = tstrdup ("inputEncryptedFileUploaded"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "inputEncryptedFile", text_len)) { *R = tstrdup ("inputEncryptedFile"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "inputEncryptedFileBigUploaded", text_len)) { *R = tstrdup ("inputEncryptedFileBigUploaded"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_file (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_file); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "inputFile", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_file (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "inputFileBig", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_file_big (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_file (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_file); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "inputFile", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_file (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "inputFileBig", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_file_big (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_file (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputFile", text_len)) { *R = tstrdup ("inputFile"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputFileBig", text_len)) { *R = tstrdup ("inputFileBig"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_file_location (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_file_location); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputFileLocation", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_file_location (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputVideoFileLocation", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_video_file_location (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputEncryptedFileLocation", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_encrypted_file_location (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputAudioFileLocation", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_audio_file_location (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "inputDocumentFileLocation", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_document_file_location (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_file_location (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_file_location); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputFileLocation", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_file_location (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputVideoFileLocation", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_video_file_location (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputEncryptedFileLocation", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_encrypted_file_location (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputAudioFileLocation", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_audio_file_location (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "inputDocumentFileLocation", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_document_file_location (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_file_location (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputFileLocation", text_len)) { *R = tstrdup ("inputFileLocation"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputVideoFileLocation", text_len)) { *R = tstrdup ("inputVideoFileLocation"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "inputEncryptedFileLocation", text_len)) { *R = tstrdup ("inputEncryptedFileLocation"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "inputAudioFileLocation", text_len)) { *R = tstrdup ("inputAudioFileLocation"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "inputDocumentFileLocation", text_len)) { *R = tstrdup ("inputDocumentFileLocation"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_geo_chat (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_geo_chat); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "inputGeoChat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_geo_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_geo_chat (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_geo_chat); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "inputGeoChat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_geo_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_geo_chat (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputGeoChat", text_len)) { *R = tstrdup ("inputGeoChat"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_geo_point (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_geo_point); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputGeoPointEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_geo_point_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputGeoPoint", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_geo_point (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_geo_point (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_geo_point); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputGeoPointEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_geo_point_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputGeoPoint", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_geo_point (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_geo_point (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputGeoPointEmpty", text_len)) { *R = tstrdup ("inputGeoPointEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputGeoPoint", text_len)) { *R = tstrdup ("inputGeoPoint"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_media (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_media); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputMediaUploadedPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_uploaded_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputMediaGeoPoint", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_geo_point (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputMediaContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputMediaUploadedVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_uploaded_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "inputMediaUploadedThumbVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_uploaded_thumb_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputMediaUploadedAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_uploaded_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputMediaUploadedDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_uploaded_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "inputMediaUploadedThumbDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_uploaded_thumb_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputMediaDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaVenue", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_venue (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_media (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_media); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputMediaUploadedPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_uploaded_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputMediaGeoPoint", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_geo_point (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputMediaContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputMediaUploadedVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_uploaded_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "inputMediaUploadedThumbVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_uploaded_thumb_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputMediaUploadedAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_uploaded_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputMediaUploadedDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_uploaded_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "inputMediaUploadedThumbDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_uploaded_thumb_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputMediaDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaVenue", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_media_venue (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_media (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputMediaEmpty", text_len)) { *R = tstrdup ("inputMediaEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputMediaUploadedPhoto", text_len)) { *R = tstrdup ("inputMediaUploadedPhoto"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "inputMediaPhoto", text_len)) { *R = tstrdup ("inputMediaPhoto"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "inputMediaGeoPoint", text_len)) { *R = tstrdup ("inputMediaGeoPoint"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "inputMediaContact", text_len)) { *R = tstrdup ("inputMediaContact"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "inputMediaUploadedVideo", text_len)) { *R = tstrdup ("inputMediaUploadedVideo"); return index; } else { index ++; }}
- if (index == 6) { if (!strncmp (text, "inputMediaUploadedThumbVideo", text_len)) { *R = tstrdup ("inputMediaUploadedThumbVideo"); return index; } else { index ++; }}
- if (index == 7) { if (!strncmp (text, "inputMediaVideo", text_len)) { *R = tstrdup ("inputMediaVideo"); return index; } else { index ++; }}
- if (index == 8) { if (!strncmp (text, "inputMediaUploadedAudio", text_len)) { *R = tstrdup ("inputMediaUploadedAudio"); return index; } else { index ++; }}
- if (index == 9) { if (!strncmp (text, "inputMediaAudio", text_len)) { *R = tstrdup ("inputMediaAudio"); return index; } else { index ++; }}
- if (index == 10) { if (!strncmp (text, "inputMediaUploadedDocument", text_len)) { *R = tstrdup ("inputMediaUploadedDocument"); return index; } else { index ++; }}
- if (index == 11) { if (!strncmp (text, "inputMediaUploadedThumbDocument", text_len)) { *R = tstrdup ("inputMediaUploadedThumbDocument"); return index; } else { index ++; }}
- if (index == 12) { if (!strncmp (text, "inputMediaDocument", text_len)) { *R = tstrdup ("inputMediaDocument"); return index; } else { index ++; }}
- if (index == 13) { if (!strncmp (text, "inputMediaVenue", text_len)) { *R = tstrdup ("inputMediaVenue"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_notify_peer (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_notify_peer); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputNotifyPeer", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_notify_peer (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputNotifyUsers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_notify_users (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputNotifyChats", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_notify_chats (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputNotifyAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_notify_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputNotifyGeoChatPeer", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_notify_geo_chat_peer (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_notify_peer (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_notify_peer); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputNotifyPeer", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_notify_peer (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputNotifyUsers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_notify_users (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputNotifyChats", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_notify_chats (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputNotifyAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_notify_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputNotifyGeoChatPeer", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_notify_geo_chat_peer (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_notify_peer (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputNotifyPeer", text_len)) { *R = tstrdup ("inputNotifyPeer"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputNotifyUsers", text_len)) { *R = tstrdup ("inputNotifyUsers"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "inputNotifyChats", text_len)) { *R = tstrdup ("inputNotifyChats"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "inputNotifyAll", text_len)) { *R = tstrdup ("inputNotifyAll"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "inputNotifyGeoChatPeer", text_len)) { *R = tstrdup ("inputNotifyGeoChatPeer"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_peer (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_peer); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputPeerEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputPeerSelf", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_self (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputPeerContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputPeerForeign", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_foreign (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputPeerChat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_peer (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_peer); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputPeerEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputPeerSelf", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_self (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputPeerContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputPeerForeign", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_foreign (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputPeerChat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_peer (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputPeerEmpty", text_len)) { *R = tstrdup ("inputPeerEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputPeerSelf", text_len)) { *R = tstrdup ("inputPeerSelf"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "inputPeerContact", text_len)) { *R = tstrdup ("inputPeerContact"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "inputPeerForeign", text_len)) { *R = tstrdup ("inputPeerForeign"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "inputPeerChat", text_len)) { *R = tstrdup ("inputPeerChat"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_peer_notify_events (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_peer_notify_events); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputPeerNotifyEventsEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_notify_events_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputPeerNotifyEventsAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_notify_events_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_peer_notify_events (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_peer_notify_events); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputPeerNotifyEventsEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_notify_events_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputPeerNotifyEventsAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_notify_events_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_peer_notify_events (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputPeerNotifyEventsEmpty", text_len)) { *R = tstrdup ("inputPeerNotifyEventsEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputPeerNotifyEventsAll", text_len)) { *R = tstrdup ("inputPeerNotifyEventsAll"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_peer_notify_settings (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_peer_notify_settings); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputPeerNotifySettings", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_notify_settings (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_peer_notify_settings (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_peer_notify_settings); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputPeerNotifySettings", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_peer_notify_settings (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_peer_notify_settings (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputPeerNotifySettings", text_len)) { *R = tstrdup ("inputPeerNotifySettings"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_photo (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_photo); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputPhotoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_photo_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "inputPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_photo (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_photo); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputPhotoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_photo_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "inputPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_photo (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputPhotoEmpty", text_len)) { *R = tstrdup ("inputPhotoEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputPhoto", text_len)) { *R = tstrdup ("inputPhoto"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_photo_crop (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_photo_crop); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputPhotoCropAuto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_photo_crop_auto (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputPhotoCrop", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_photo_crop (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_photo_crop (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_photo_crop); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputPhotoCropAuto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_photo_crop_auto (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputPhotoCrop", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_photo_crop (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_photo_crop (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputPhotoCropAuto", text_len)) { *R = tstrdup ("inputPhotoCropAuto"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputPhotoCrop", text_len)) { *R = tstrdup ("inputPhotoCrop"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_privacy_key (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_privacy_key); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 30 && !memcmp (cur_token, "inputPrivacyKeyStatusTimestamp", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_key_status_timestamp (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_privacy_key (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_privacy_key); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 30 && !memcmp (cur_token, "inputPrivacyKeyStatusTimestamp", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_key_status_timestamp (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_privacy_key (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputPrivacyKeyStatusTimestamp", text_len)) { *R = tstrdup ("inputPrivacyKeyStatusTimestamp"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_privacy_rule (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_privacy_rule); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 30 && !memcmp (cur_token, "inputPrivacyValueAllowContacts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_value_allow_contacts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "inputPrivacyValueAllowAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_value_allow_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "inputPrivacyValueAllowUsers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_value_allow_users (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 33 && !memcmp (cur_token, "inputPrivacyValueDisallowContacts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_value_disallow_contacts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "inputPrivacyValueDisallowAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_value_disallow_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "inputPrivacyValueDisallowUsers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_value_disallow_users (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_privacy_rule (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_privacy_rule); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 30 && !memcmp (cur_token, "inputPrivacyValueAllowContacts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_value_allow_contacts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "inputPrivacyValueAllowAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_value_allow_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "inputPrivacyValueAllowUsers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_value_allow_users (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 33 && !memcmp (cur_token, "inputPrivacyValueDisallowContacts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_value_disallow_contacts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "inputPrivacyValueDisallowAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_value_disallow_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "inputPrivacyValueDisallowUsers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_privacy_value_disallow_users (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_privacy_rule (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputPrivacyValueAllowContacts", text_len)) { *R = tstrdup ("inputPrivacyValueAllowContacts"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputPrivacyValueAllowAll", text_len)) { *R = tstrdup ("inputPrivacyValueAllowAll"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "inputPrivacyValueAllowUsers", text_len)) { *R = tstrdup ("inputPrivacyValueAllowUsers"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "inputPrivacyValueDisallowContacts", text_len)) { *R = tstrdup ("inputPrivacyValueDisallowContacts"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "inputPrivacyValueDisallowAll", text_len)) { *R = tstrdup ("inputPrivacyValueDisallowAll"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "inputPrivacyValueDisallowUsers", text_len)) { *R = tstrdup ("inputPrivacyValueDisallowUsers"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_sticker_set (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_sticker_set); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "inputStickerSetEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_sticker_set_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputStickerSetID", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_sticker_set_i_d (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputStickerSetShortName", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_sticker_set_short_name (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_sticker_set (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_sticker_set); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "inputStickerSetEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_sticker_set_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputStickerSetID", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_sticker_set_i_d (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputStickerSetShortName", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_sticker_set_short_name (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_sticker_set (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputStickerSetEmpty", text_len)) { *R = tstrdup ("inputStickerSetEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputStickerSetID", text_len)) { *R = tstrdup ("inputStickerSetID"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "inputStickerSetShortName", text_len)) { *R = tstrdup ("inputStickerSetShortName"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_user (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_user); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputUserEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_user_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputUserSelf", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_user_self (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputUserContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_user_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputUserForeign", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_user_foreign (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_user (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_user); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputUserEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_user_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputUserSelf", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_user_self (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputUserContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_user_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputUserForeign", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_user_foreign (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_user (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputUserEmpty", text_len)) { *R = tstrdup ("inputUserEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputUserSelf", text_len)) { *R = tstrdup ("inputUserSelf"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "inputUserContact", text_len)) { *R = tstrdup ("inputUserContact"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "inputUserForeign", text_len)) { *R = tstrdup ("inputUserForeign"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_input_video (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_video); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputVideoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_video_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "inputVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_input_video (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_input_video); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputVideoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_video_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "inputVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_input_video (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputVideoEmpty", text_len)) { *R = tstrdup ("inputVideoEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputVideo", text_len)) { *R = tstrdup ("inputVideo"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_int (struct paramed_type *T) {
- if (autocomplete_constructor_int (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_int (struct paramed_type *T) {
- if (autocomplete_constructor_int (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_int (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "int", text_len)) { *R = tstrdup ("int"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_int128 (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_int128); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "int128", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_int128 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_int128 (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_int128); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "int128", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_int128 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_int128 (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "int128", text_len)) { *R = tstrdup ("int128"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_int256 (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_int256); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "int256", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_int256 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_int256 (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_int256); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "int256", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_int256 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_int256 (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "int256", text_len)) { *R = tstrdup ("int256"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_keyboard_button (struct paramed_type *T) {
- if (autocomplete_constructor_keyboard_button (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_keyboard_button (struct paramed_type *T) {
- if (autocomplete_constructor_keyboard_button (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_keyboard_button (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "keyboardButton", text_len)) { *R = tstrdup ("keyboardButton"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_keyboard_button_row (struct paramed_type *T) {
- if (autocomplete_constructor_keyboard_button_row (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_keyboard_button_row (struct paramed_type *T) {
- if (autocomplete_constructor_keyboard_button_row (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_keyboard_button_row (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "keyboardButtonRow", text_len)) { *R = tstrdup ("keyboardButtonRow"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_long (struct paramed_type *T) {
- if (autocomplete_constructor_long (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_long (struct paramed_type *T) {
- if (autocomplete_constructor_long (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_long (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "long", text_len)) { *R = tstrdup ("long"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "messageEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "messageService", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_service (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "messageEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "messageService", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_service (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_message (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messageEmpty", text_len)) { *R = tstrdup ("messageEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "message", text_len)) { *R = tstrdup ("message"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "messageService", text_len)) { *R = tstrdup ("messageService"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_message_action (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_message_action); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "messageActionEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messageActionChatCreate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_create (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messageActionChatEditTitle", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_edit_title (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messageActionChatEditPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_edit_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "messageActionChatDeletePhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_delete_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "messageActionChatAddUser", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_add_user (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "messageActionChatDeleteUser", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_delete_user (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messageActionGeoChatCreate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_geo_chat_create (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "messageActionGeoChatCheckin", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_geo_chat_checkin (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "messageActionChatJoinedByLink", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_joined_by_link (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_message_action (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_message_action); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "messageActionEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messageActionChatCreate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_create (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messageActionChatEditTitle", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_edit_title (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messageActionChatEditPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_edit_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "messageActionChatDeletePhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_delete_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "messageActionChatAddUser", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_add_user (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "messageActionChatDeleteUser", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_delete_user (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messageActionGeoChatCreate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_geo_chat_create (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "messageActionGeoChatCheckin", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_geo_chat_checkin (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "messageActionChatJoinedByLink", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_action_chat_joined_by_link (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_message_action (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messageActionEmpty", text_len)) { *R = tstrdup ("messageActionEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "messageActionChatCreate", text_len)) { *R = tstrdup ("messageActionChatCreate"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "messageActionChatEditTitle", text_len)) { *R = tstrdup ("messageActionChatEditTitle"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "messageActionChatEditPhoto", text_len)) { *R = tstrdup ("messageActionChatEditPhoto"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "messageActionChatDeletePhoto", text_len)) { *R = tstrdup ("messageActionChatDeletePhoto"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "messageActionChatAddUser", text_len)) { *R = tstrdup ("messageActionChatAddUser"); return index; } else { index ++; }}
- if (index == 6) { if (!strncmp (text, "messageActionChatDeleteUser", text_len)) { *R = tstrdup ("messageActionChatDeleteUser"); return index; } else { index ++; }}
- if (index == 7) { if (!strncmp (text, "messageActionGeoChatCreate", text_len)) { *R = tstrdup ("messageActionGeoChatCreate"); return index; } else { index ++; }}
- if (index == 8) { if (!strncmp (text, "messageActionGeoChatCheckin", text_len)) { *R = tstrdup ("messageActionGeoChatCheckin"); return index; } else { index ++; }}
- if (index == 9) { if (!strncmp (text, "messageActionChatJoinedByLink", text_len)) { *R = tstrdup ("messageActionChatJoinedByLink"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_message_media (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_message_media); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "messageMediaGeo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_geo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messageMediaContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messageMediaUnsupported", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_unsupported (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messageMediaDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messageMediaWebPage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_web_page (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaVenue", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_venue (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messageMediaPhotoL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_photo_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messageMediaVideoL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_video_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_message_media (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_message_media); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "messageMediaGeo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_geo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messageMediaContact", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_contact (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messageMediaUnsupported", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_unsupported (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messageMediaDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messageMediaWebPage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_web_page (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaVenue", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_venue (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messageMediaPhotoL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_photo_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messageMediaVideoL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_message_media_video_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_message_media (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messageMediaEmpty", text_len)) { *R = tstrdup ("messageMediaEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "messageMediaPhoto", text_len)) { *R = tstrdup ("messageMediaPhoto"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "messageMediaVideo", text_len)) { *R = tstrdup ("messageMediaVideo"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "messageMediaGeo", text_len)) { *R = tstrdup ("messageMediaGeo"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "messageMediaContact", text_len)) { *R = tstrdup ("messageMediaContact"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "messageMediaUnsupported", text_len)) { *R = tstrdup ("messageMediaUnsupported"); return index; } else { index ++; }}
- if (index == 6) { if (!strncmp (text, "messageMediaDocument", text_len)) { *R = tstrdup ("messageMediaDocument"); return index; } else { index ++; }}
- if (index == 7) { if (!strncmp (text, "messageMediaAudio", text_len)) { *R = tstrdup ("messageMediaAudio"); return index; } else { index ++; }}
- if (index == 8) { if (!strncmp (text, "messageMediaWebPage", text_len)) { *R = tstrdup ("messageMediaWebPage"); return index; } else { index ++; }}
- if (index == 9) { if (!strncmp (text, "messageMediaVenue", text_len)) { *R = tstrdup ("messageMediaVenue"); return index; } else { index ++; }}
- if (index == 10) { if (!strncmp (text, "messageMediaPhotoL27", text_len)) { *R = tstrdup ("messageMediaPhotoL27"); return index; } else { index ++; }}
- if (index == 11) { if (!strncmp (text, "messageMediaVideoL27", text_len)) { *R = tstrdup ("messageMediaVideoL27"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_filter (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_filter); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputMessagesFilterEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "inputMessagesFilterPhotos", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_photos (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputMessagesFilterVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "inputMessagesFilterPhotoVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_photo_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 38 && !memcmp (cur_token, "inputMessagesFilterPhotoVideoDocuments", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_photo_video_documents (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "inputMessagesFilterDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputMessagesFilterAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_filter (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_filter); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputMessagesFilterEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "inputMessagesFilterPhotos", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_photos (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputMessagesFilterVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "inputMessagesFilterPhotoVideo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_photo_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 38 && !memcmp (cur_token, "inputMessagesFilterPhotoVideoDocuments", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_photo_video_documents (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "inputMessagesFilterDocument", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_document (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputMessagesFilterAudio", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_input_messages_filter_audio (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_filter (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "inputMessagesFilterEmpty", text_len)) { *R = tstrdup ("inputMessagesFilterEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "inputMessagesFilterPhotos", text_len)) { *R = tstrdup ("inputMessagesFilterPhotos"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "inputMessagesFilterVideo", text_len)) { *R = tstrdup ("inputMessagesFilterVideo"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "inputMessagesFilterPhotoVideo", text_len)) { *R = tstrdup ("inputMessagesFilterPhotoVideo"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "inputMessagesFilterPhotoVideoDocuments", text_len)) { *R = tstrdup ("inputMessagesFilterPhotoVideoDocuments"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "inputMessagesFilterDocument", text_len)) { *R = tstrdup ("inputMessagesFilterDocument"); return index; } else { index ++; }}
- if (index == 6) { if (!strncmp (text, "inputMessagesFilterAudio", text_len)) { *R = tstrdup ("inputMessagesFilterAudio"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_nearest_dc (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_nearest_dc); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "nearestDc", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_nearest_dc (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_nearest_dc (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_nearest_dc); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "nearestDc", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_nearest_dc (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_nearest_dc (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "nearestDc", text_len)) { *R = tstrdup ("nearestDc"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_notify_peer (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_notify_peer); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "notifyPeer", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_notify_peer (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "notifyUsers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_notify_users (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "notifyChats", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_notify_chats (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 9 && !memcmp (cur_token, "notifyAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_notify_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_notify_peer (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_notify_peer); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "notifyPeer", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_notify_peer (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "notifyUsers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_notify_users (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "notifyChats", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_notify_chats (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 9 && !memcmp (cur_token, "notifyAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_notify_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_notify_peer (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "notifyPeer", text_len)) { *R = tstrdup ("notifyPeer"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "notifyUsers", text_len)) { *R = tstrdup ("notifyUsers"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "notifyChats", text_len)) { *R = tstrdup ("notifyChats"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "notifyAll", text_len)) { *R = tstrdup ("notifyAll"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_null (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_null); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 4 && !memcmp (cur_token, "null", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_null (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_null (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_null); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 4 && !memcmp (cur_token, "null", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_null (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_null (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "null", text_len)) { *R = tstrdup ("null"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_p_q_inner_data (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_p_q_inner_data); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "p_q_inner_data", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_p_q_inner_data (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "p_q_inner_data_temp", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_p_q_inner_data_temp (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_p_q_inner_data (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_p_q_inner_data); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "p_q_inner_data", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_p_q_inner_data (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "p_q_inner_data_temp", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_p_q_inner_data_temp (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_p_q_inner_data (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "p_q_inner_data", text_len)) { *R = tstrdup ("p_q_inner_data"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "p_q_inner_data_temp", text_len)) { *R = tstrdup ("p_q_inner_data_temp"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_peer (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_peer); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 8 && !memcmp (cur_token, "peerUser", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_peer_user (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "peerChat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_peer_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_peer (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_peer); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 8 && !memcmp (cur_token, "peerUser", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_peer_user (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "peerChat", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_peer_chat (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_peer (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "peerUser", text_len)) { *R = tstrdup ("peerUser"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "peerChat", text_len)) { *R = tstrdup ("peerChat"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_peer_notify_events (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_peer_notify_events); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "peerNotifyEventsEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_peer_notify_events_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "peerNotifyEventsAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_peer_notify_events_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_peer_notify_events (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_peer_notify_events); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "peerNotifyEventsEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_peer_notify_events_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "peerNotifyEventsAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_peer_notify_events_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_peer_notify_events (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "peerNotifyEventsEmpty", text_len)) { *R = tstrdup ("peerNotifyEventsEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "peerNotifyEventsAll", text_len)) { *R = tstrdup ("peerNotifyEventsAll"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_peer_notify_settings (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_peer_notify_settings); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "peerNotifySettingsEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_peer_notify_settings_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "peerNotifySettings", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_peer_notify_settings (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_peer_notify_settings (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_peer_notify_settings); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "peerNotifySettingsEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_peer_notify_settings_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "peerNotifySettings", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_peer_notify_settings (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_peer_notify_settings (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "peerNotifySettingsEmpty", text_len)) { *R = tstrdup ("peerNotifySettingsEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "peerNotifySettings", text_len)) { *R = tstrdup ("peerNotifySettings"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_photo (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_photo); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "photoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photo_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "photoL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photo_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_photo (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_photo); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "photoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photo_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "photoL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photo_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_photo (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "photoEmpty", text_len)) { *R = tstrdup ("photoEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "photo", text_len)) { *R = tstrdup ("photo"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "photoL27", text_len)) { *R = tstrdup ("photoL27"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_photo_size (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_photo_size); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "photoSizeEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photo_size_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 9 && !memcmp (cur_token, "photoSize", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photo_size (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "photoCachedSize", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photo_cached_size (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_photo_size (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_photo_size); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "photoSizeEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photo_size_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 9 && !memcmp (cur_token, "photoSize", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photo_size (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "photoCachedSize", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photo_cached_size (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_photo_size (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "photoSizeEmpty", text_len)) { *R = tstrdup ("photoSizeEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "photoSize", text_len)) { *R = tstrdup ("photoSize"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "photoCachedSize", text_len)) { *R = tstrdup ("photoCachedSize"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_privacy_key (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_privacy_key); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "privacyKeyStatusTimestamp", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_key_status_timestamp (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_privacy_key (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_privacy_key); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "privacyKeyStatusTimestamp", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_key_status_timestamp (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_privacy_key (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "privacyKeyStatusTimestamp", text_len)) { *R = tstrdup ("privacyKeyStatusTimestamp"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_privacy_rule (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_privacy_rule); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "privacyValueAllowContacts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_value_allow_contacts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "privacyValueAllowAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_value_allow_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "privacyValueAllowUsers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_value_allow_users (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "privacyValueDisallowContacts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_value_disallow_contacts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "privacyValueDisallowAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_value_disallow_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "privacyValueDisallowUsers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_value_disallow_users (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_privacy_rule (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_privacy_rule); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "privacyValueAllowContacts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_value_allow_contacts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "privacyValueAllowAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_value_allow_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "privacyValueAllowUsers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_value_allow_users (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "privacyValueDisallowContacts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_value_disallow_contacts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "privacyValueDisallowAll", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_value_disallow_all (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "privacyValueDisallowUsers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_privacy_value_disallow_users (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_privacy_rule (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "privacyValueAllowContacts", text_len)) { *R = tstrdup ("privacyValueAllowContacts"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "privacyValueAllowAll", text_len)) { *R = tstrdup ("privacyValueAllowAll"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "privacyValueAllowUsers", text_len)) { *R = tstrdup ("privacyValueAllowUsers"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "privacyValueDisallowContacts", text_len)) { *R = tstrdup ("privacyValueDisallowContacts"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "privacyValueDisallowAll", text_len)) { *R = tstrdup ("privacyValueDisallowAll"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "privacyValueDisallowUsers", text_len)) { *R = tstrdup ("privacyValueDisallowUsers"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_received_notify_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_received_notify_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "receivedNotifyMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_received_notify_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_received_notify_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_received_notify_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "receivedNotifyMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_received_notify_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_received_notify_message (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "receivedNotifyMessage", text_len)) { *R = tstrdup ("receivedNotifyMessage"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_reply_markup (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_reply_markup); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "replyKeyboardHide", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_reply_keyboard_hide (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "replyKeyboardForceReply", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_reply_keyboard_force_reply (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "replyKeyboardMarkup", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_reply_keyboard_markup (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_reply_markup (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_reply_markup); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "replyKeyboardHide", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_reply_keyboard_hide (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "replyKeyboardForceReply", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_reply_keyboard_force_reply (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "replyKeyboardMarkup", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_reply_keyboard_markup (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_reply_markup (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "replyKeyboardHide", text_len)) { *R = tstrdup ("replyKeyboardHide"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "replyKeyboardForceReply", text_len)) { *R = tstrdup ("replyKeyboardForceReply"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "replyKeyboardMarkup", text_len)) { *R = tstrdup ("replyKeyboardMarkup"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_res_p_q (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_res_p_q); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 5 && !memcmp (cur_token, "resPQ", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_res_p_q (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_res_p_q (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_res_p_q); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 5 && !memcmp (cur_token, "resPQ", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_res_p_q (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_res_p_q (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "resPQ", text_len)) { *R = tstrdup ("resPQ"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_send_message_action (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_send_message_action); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "sendMessageTypingAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_typing_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "sendMessageCancelAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_cancel_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageRecordVideoAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_record_video_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "sendMessageUploadVideoActionL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_video_action_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageUploadVideoAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_video_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageRecordAudioAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_record_audio_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "sendMessageUploadAudioActionL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_audio_action_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageUploadAudioAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_audio_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageUploadPhotoAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_photo_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 34 && !memcmp (cur_token, "sendMessageUploadDocumentActionL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_document_action_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "sendMessageUploadDocumentAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_document_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageGeoLocationAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_geo_location_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "sendMessageChooseContactAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_choose_contact_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_send_message_action (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_send_message_action); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "sendMessageTypingAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_typing_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "sendMessageCancelAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_cancel_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageRecordVideoAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_record_video_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "sendMessageUploadVideoActionL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_video_action_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageUploadVideoAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_video_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageRecordAudioAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_record_audio_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "sendMessageUploadAudioActionL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_audio_action_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageUploadAudioAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_audio_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageUploadPhotoAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_photo_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 34 && !memcmp (cur_token, "sendMessageUploadDocumentActionL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_document_action_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "sendMessageUploadDocumentAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_upload_document_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageGeoLocationAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_geo_location_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "sendMessageChooseContactAction", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_send_message_choose_contact_action (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_send_message_action (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "sendMessageTypingAction", text_len)) { *R = tstrdup ("sendMessageTypingAction"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "sendMessageCancelAction", text_len)) { *R = tstrdup ("sendMessageCancelAction"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "sendMessageRecordVideoAction", text_len)) { *R = tstrdup ("sendMessageRecordVideoAction"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "sendMessageUploadVideoActionL27", text_len)) { *R = tstrdup ("sendMessageUploadVideoActionL27"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "sendMessageUploadVideoAction", text_len)) { *R = tstrdup ("sendMessageUploadVideoAction"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "sendMessageRecordAudioAction", text_len)) { *R = tstrdup ("sendMessageRecordAudioAction"); return index; } else { index ++; }}
- if (index == 6) { if (!strncmp (text, "sendMessageUploadAudioActionL27", text_len)) { *R = tstrdup ("sendMessageUploadAudioActionL27"); return index; } else { index ++; }}
- if (index == 7) { if (!strncmp (text, "sendMessageUploadAudioAction", text_len)) { *R = tstrdup ("sendMessageUploadAudioAction"); return index; } else { index ++; }}
- if (index == 8) { if (!strncmp (text, "sendMessageUploadPhotoAction", text_len)) { *R = tstrdup ("sendMessageUploadPhotoAction"); return index; } else { index ++; }}
- if (index == 9) { if (!strncmp (text, "sendMessageUploadDocumentActionL27", text_len)) { *R = tstrdup ("sendMessageUploadDocumentActionL27"); return index; } else { index ++; }}
- if (index == 10) { if (!strncmp (text, "sendMessageUploadDocumentAction", text_len)) { *R = tstrdup ("sendMessageUploadDocumentAction"); return index; } else { index ++; }}
- if (index == 11) { if (!strncmp (text, "sendMessageGeoLocationAction", text_len)) { *R = tstrdup ("sendMessageGeoLocationAction"); return index; } else { index ++; }}
- if (index == 12) { if (!strncmp (text, "sendMessageChooseContactAction", text_len)) { *R = tstrdup ("sendMessageChooseContactAction"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_server_d_h_params (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_server_d_h_params); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "server_DH_params_fail", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_server_d_h_params_fail (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "server_DH_params_ok", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_server_d_h_params_ok (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_server_d_h_params (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_server_d_h_params); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "server_DH_params_fail", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_server_d_h_params_fail (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "server_DH_params_ok", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_server_d_h_params_ok (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_server_d_h_params (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "server_DH_params_fail", text_len)) { *R = tstrdup ("server_DH_params_fail"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "server_DH_params_ok", text_len)) { *R = tstrdup ("server_DH_params_ok"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_server_d_h_inner_data (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_server_d_h_inner_data); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "server_DH_inner_data", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_server_d_h_inner_data (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_server_d_h_inner_data (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_server_d_h_inner_data); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "server_DH_inner_data", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_server_d_h_inner_data (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_server_d_h_inner_data (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "server_DH_inner_data", text_len)) { *R = tstrdup ("server_DH_inner_data"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_set_client_d_h_params_answer (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_set_client_d_h_params_answer); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "dh_gen_ok", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_dh_gen_ok (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "dh_gen_retry", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_dh_gen_retry (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "dh_gen_fail", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_dh_gen_fail (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_set_client_d_h_params_answer (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_set_client_d_h_params_answer); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "dh_gen_ok", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_dh_gen_ok (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "dh_gen_retry", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_dh_gen_retry (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "dh_gen_fail", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_dh_gen_fail (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_set_client_d_h_params_answer (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "dh_gen_ok", text_len)) { *R = tstrdup ("dh_gen_ok"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "dh_gen_retry", text_len)) { *R = tstrdup ("dh_gen_retry"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "dh_gen_fail", text_len)) { *R = tstrdup ("dh_gen_fail"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_sticker_pack (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_sticker_pack); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "stickerPack", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_sticker_pack (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_sticker_pack (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_sticker_pack); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "stickerPack", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_sticker_pack (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_sticker_pack (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "stickerPack", text_len)) { *R = tstrdup ("stickerPack"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_sticker_set (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_sticker_set); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "stickerSet", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_sticker_set (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_sticker_set (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_sticker_set); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "stickerSet", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_sticker_set (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_sticker_set (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "stickerSet", text_len)) { *R = tstrdup ("stickerSet"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_string (struct paramed_type *T) {
- if (autocomplete_constructor_string (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_string (struct paramed_type *T) {
- if (autocomplete_constructor_string (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_string (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "string", text_len)) { *R = tstrdup ("string"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_update (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_update); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateNewMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_new_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateMessageID", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_message_i_d (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "updateDeleteMessages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_delete_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateUserTyping", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_user_typing (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "updateChatUserTyping", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_chat_user_typing (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateChatParticipants", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_chat_participants (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateUserStatus", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_user_status (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "updateUserName", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_user_name (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateUserPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_user_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updateContactRegistered", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_contact_registered (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "updateContactLink", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_contact_link (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateNewAuthorization", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_new_authorization (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updateNewGeoChatMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_new_geo_chat_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "updateNewEncryptedMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_new_encrypted_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "updateEncryptedChatTyping", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_encrypted_chat_typing (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateEncryption", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_encryption (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "updateEncryptedMessagesRead", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_encrypted_messages_read (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "updateChatParticipantAdd", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_chat_participant_add (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "updateChatParticipantDelete", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_chat_participant_delete (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateDcOptions", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_dc_options (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "updateUserBlocked", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_user_blocked (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "updateNotifySettings", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_notify_settings (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "updateServiceNotification", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_service_notification (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "updatePrivacy", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_privacy (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateUserPhone", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_user_phone (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateReadHistoryInbox", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_read_history_inbox (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updateReadHistoryOutbox", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_read_history_outbox (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "updateWebPage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_web_page (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "updateReadMessagesContents", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_read_messages_contents (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateMsgUpdate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_msg_update (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_update (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_update); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateNewMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_new_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateMessageID", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_message_i_d (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "updateDeleteMessages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_delete_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateUserTyping", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_user_typing (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "updateChatUserTyping", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_chat_user_typing (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateChatParticipants", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_chat_participants (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateUserStatus", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_user_status (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "updateUserName", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_user_name (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateUserPhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_user_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updateContactRegistered", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_contact_registered (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "updateContactLink", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_contact_link (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateNewAuthorization", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_new_authorization (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updateNewGeoChatMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_new_geo_chat_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "updateNewEncryptedMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_new_encrypted_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "updateEncryptedChatTyping", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_encrypted_chat_typing (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateEncryption", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_encryption (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "updateEncryptedMessagesRead", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_encrypted_messages_read (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "updateChatParticipantAdd", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_chat_participant_add (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "updateChatParticipantDelete", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_chat_participant_delete (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateDcOptions", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_dc_options (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "updateUserBlocked", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_user_blocked (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "updateNotifySettings", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_notify_settings (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "updateServiceNotification", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_service_notification (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "updatePrivacy", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_privacy (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateUserPhone", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_user_phone (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateReadHistoryInbox", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_read_history_inbox (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updateReadHistoryOutbox", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_read_history_outbox (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "updateWebPage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_web_page (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "updateReadMessagesContents", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_read_messages_contents (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateMsgUpdate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_msg_update (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_update (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "updateNewMessage", text_len)) { *R = tstrdup ("updateNewMessage"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "updateMessageID", text_len)) { *R = tstrdup ("updateMessageID"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "updateDeleteMessages", text_len)) { *R = tstrdup ("updateDeleteMessages"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "updateUserTyping", text_len)) { *R = tstrdup ("updateUserTyping"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "updateChatUserTyping", text_len)) { *R = tstrdup ("updateChatUserTyping"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "updateChatParticipants", text_len)) { *R = tstrdup ("updateChatParticipants"); return index; } else { index ++; }}
- if (index == 6) { if (!strncmp (text, "updateUserStatus", text_len)) { *R = tstrdup ("updateUserStatus"); return index; } else { index ++; }}
- if (index == 7) { if (!strncmp (text, "updateUserName", text_len)) { *R = tstrdup ("updateUserName"); return index; } else { index ++; }}
- if (index == 8) { if (!strncmp (text, "updateUserPhoto", text_len)) { *R = tstrdup ("updateUserPhoto"); return index; } else { index ++; }}
- if (index == 9) { if (!strncmp (text, "updateContactRegistered", text_len)) { *R = tstrdup ("updateContactRegistered"); return index; } else { index ++; }}
- if (index == 10) { if (!strncmp (text, "updateContactLink", text_len)) { *R = tstrdup ("updateContactLink"); return index; } else { index ++; }}
- if (index == 11) { if (!strncmp (text, "updateNewAuthorization", text_len)) { *R = tstrdup ("updateNewAuthorization"); return index; } else { index ++; }}
- if (index == 12) { if (!strncmp (text, "updateNewGeoChatMessage", text_len)) { *R = tstrdup ("updateNewGeoChatMessage"); return index; } else { index ++; }}
- if (index == 13) { if (!strncmp (text, "updateNewEncryptedMessage", text_len)) { *R = tstrdup ("updateNewEncryptedMessage"); return index; } else { index ++; }}
- if (index == 14) { if (!strncmp (text, "updateEncryptedChatTyping", text_len)) { *R = tstrdup ("updateEncryptedChatTyping"); return index; } else { index ++; }}
- if (index == 15) { if (!strncmp (text, "updateEncryption", text_len)) { *R = tstrdup ("updateEncryption"); return index; } else { index ++; }}
- if (index == 16) { if (!strncmp (text, "updateEncryptedMessagesRead", text_len)) { *R = tstrdup ("updateEncryptedMessagesRead"); return index; } else { index ++; }}
- if (index == 17) { if (!strncmp (text, "updateChatParticipantAdd", text_len)) { *R = tstrdup ("updateChatParticipantAdd"); return index; } else { index ++; }}
- if (index == 18) { if (!strncmp (text, "updateChatParticipantDelete", text_len)) { *R = tstrdup ("updateChatParticipantDelete"); return index; } else { index ++; }}
- if (index == 19) { if (!strncmp (text, "updateDcOptions", text_len)) { *R = tstrdup ("updateDcOptions"); return index; } else { index ++; }}
- if (index == 20) { if (!strncmp (text, "updateUserBlocked", text_len)) { *R = tstrdup ("updateUserBlocked"); return index; } else { index ++; }}
- if (index == 21) { if (!strncmp (text, "updateNotifySettings", text_len)) { *R = tstrdup ("updateNotifySettings"); return index; } else { index ++; }}
- if (index == 22) { if (!strncmp (text, "updateServiceNotification", text_len)) { *R = tstrdup ("updateServiceNotification"); return index; } else { index ++; }}
- if (index == 23) { if (!strncmp (text, "updatePrivacy", text_len)) { *R = tstrdup ("updatePrivacy"); return index; } else { index ++; }}
- if (index == 24) { if (!strncmp (text, "updateUserPhone", text_len)) { *R = tstrdup ("updateUserPhone"); return index; } else { index ++; }}
- if (index == 25) { if (!strncmp (text, "updateReadHistoryInbox", text_len)) { *R = tstrdup ("updateReadHistoryInbox"); return index; } else { index ++; }}
- if (index == 26) { if (!strncmp (text, "updateReadHistoryOutbox", text_len)) { *R = tstrdup ("updateReadHistoryOutbox"); return index; } else { index ++; }}
- if (index == 27) { if (!strncmp (text, "updateWebPage", text_len)) { *R = tstrdup ("updateWebPage"); return index; } else { index ++; }}
- if (index == 28) { if (!strncmp (text, "updateReadMessagesContents", text_len)) { *R = tstrdup ("updateReadMessagesContents"); return index; } else { index ++; }}
- if (index == 29) { if (!strncmp (text, "updateMsgUpdate", text_len)) { *R = tstrdup ("updateMsgUpdate"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_updates (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_updates); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "updatesTooLong", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates_too_long (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "updateShortMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_short_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateShortChatMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_short_chat_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "updateShort", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_short (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updatesCombined", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates_combined (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "updates", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_updates (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_updates); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "updatesTooLong", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates_too_long (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "updateShortMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_short_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateShortChatMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_short_chat_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "updateShort", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_update_short (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updatesCombined", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates_combined (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "updates", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_updates (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "updatesTooLong", text_len)) { *R = tstrdup ("updatesTooLong"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "updateShortMessage", text_len)) { *R = tstrdup ("updateShortMessage"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "updateShortChatMessage", text_len)) { *R = tstrdup ("updateShortChatMessage"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "updateShort", text_len)) { *R = tstrdup ("updateShort"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "updatesCombined", text_len)) { *R = tstrdup ("updatesCombined"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "updates", text_len)) { *R = tstrdup ("updates"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_user (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_user); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "userEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 4 && !memcmp (cur_token, "user", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_user (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_user); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "userEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 4 && !memcmp (cur_token, "user", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_user (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "userEmpty", text_len)) { *R = tstrdup ("userEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "user", text_len)) { *R = tstrdup ("user"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_user_full (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_user_full); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 8 && !memcmp (cur_token, "userFull", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_full (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_user_full (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_user_full); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 8 && !memcmp (cur_token, "userFull", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_full (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_user_full (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "userFull", text_len)) { *R = tstrdup ("userFull"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_user_profile_photo (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_user_profile_photo); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "userProfilePhotoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_profile_photo_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "userProfilePhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_profile_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_user_profile_photo (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_user_profile_photo); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "userProfilePhotoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_profile_photo_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "userProfilePhoto", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_profile_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_user_profile_photo (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "userProfilePhotoEmpty", text_len)) { *R = tstrdup ("userProfilePhotoEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "userProfilePhoto", text_len)) { *R = tstrdup ("userProfilePhoto"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_user_status (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_user_status); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "userStatusEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_status_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "userStatusOnline", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_status_online (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "userStatusOffline", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_status_offline (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "userStatusRecently", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_status_recently (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "userStatusLastWeek", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_status_last_week (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "userStatusLastMonth", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_status_last_month (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_user_status (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_user_status); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "userStatusEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_status_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "userStatusOnline", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_status_online (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "userStatusOffline", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_status_offline (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "userStatusRecently", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_status_recently (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "userStatusLastWeek", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_status_last_week (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "userStatusLastMonth", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_user_status_last_month (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_user_status (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "userStatusEmpty", text_len)) { *R = tstrdup ("userStatusEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "userStatusOnline", text_len)) { *R = tstrdup ("userStatusOnline"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "userStatusOffline", text_len)) { *R = tstrdup ("userStatusOffline"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "userStatusRecently", text_len)) { *R = tstrdup ("userStatusRecently"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "userStatusLastWeek", text_len)) { *R = tstrdup ("userStatusLastWeek"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "userStatusLastMonth", text_len)) { *R = tstrdup ("userStatusLastMonth"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_vector (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_vector); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "vector", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_vector (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_vector (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_vector); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "vector", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_vector (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_vector (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "vector", text_len)) { *R = tstrdup ("vector"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_video (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_video); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "videoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_video_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 5 && !memcmp (cur_token, "video", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "videoL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_video_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_video (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_video); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "videoEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_video_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 5 && !memcmp (cur_token, "video", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_video (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "videoL27", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_video_l27 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_video (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "videoEmpty", text_len)) { *R = tstrdup ("videoEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "video", text_len)) { *R = tstrdup ("video"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "videoL27", text_len)) { *R = tstrdup ("videoL27"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_wall_paper (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_wall_paper); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "wallPaper", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_wall_paper (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "wallPaperSolid", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_wall_paper_solid (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_wall_paper (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_wall_paper); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "wallPaper", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_wall_paper (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "wallPaperSolid", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_wall_paper_solid (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_wall_paper (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "wallPaper", text_len)) { *R = tstrdup ("wallPaper"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "wallPaperSolid", text_len)) { *R = tstrdup ("wallPaperSolid"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_web_page (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_web_page); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "webPageEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_web_page_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "webPagePending", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_web_page_pending (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "webPage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_web_page (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_web_page (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_web_page); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "webPageEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_web_page_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "webPagePending", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_web_page_pending (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "webPage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_web_page (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_web_page (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "webPageEmpty", text_len)) { *R = tstrdup ("webPageEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "webPagePending", text_len)) { *R = tstrdup ("webPagePending"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "webPage", text_len)) { *R = tstrdup ("webPage"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_account_authorizations (struct paramed_type *T) {
- if (autocomplete_constructor_account_authorizations (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_account_authorizations (struct paramed_type *T) {
- if (autocomplete_constructor_account_authorizations (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_account_authorizations (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "account.authorizations", text_len)) { *R = tstrdup ("account.authorizations"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_account_password (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_account_password); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "account.noPassword", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_account_no_password (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "account.password", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_account_password (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_account_password (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_account_password); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "account.noPassword", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_account_no_password (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "account.password", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_account_password (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_account_password (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "account.noPassword", text_len)) { *R = tstrdup ("account.noPassword"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "account.password", text_len)) { *R = tstrdup ("account.password"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_account_password_input_settings (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_account_password_input_settings); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 29 && !memcmp (cur_token, "account.passwordInputSettings", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_account_password_input_settings (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_account_password_input_settings (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_account_password_input_settings); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 29 && !memcmp (cur_token, "account.passwordInputSettings", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_account_password_input_settings (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_account_password_input_settings (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "account.passwordInputSettings", text_len)) { *R = tstrdup ("account.passwordInputSettings"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_account_password_settings (struct paramed_type *T) {
- if (autocomplete_constructor_account_password_settings (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_account_password_settings (struct paramed_type *T) {
- if (autocomplete_constructor_account_password_settings (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_account_password_settings (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "account.passwordSettings", text_len)) { *R = tstrdup ("account.passwordSettings"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_account_privacy_rules (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_account_privacy_rules); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "account.privacyRules", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_account_privacy_rules (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_account_privacy_rules (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_account_privacy_rules); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "account.privacyRules", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_account_privacy_rules (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_account_privacy_rules (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "account.privacyRules", text_len)) { *R = tstrdup ("account.privacyRules"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_account_sent_change_phone_code (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_account_sent_change_phone_code); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 27 && !memcmp (cur_token, "account.sentChangePhoneCode", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_account_sent_change_phone_code (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_account_sent_change_phone_code (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_account_sent_change_phone_code); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 27 && !memcmp (cur_token, "account.sentChangePhoneCode", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_account_sent_change_phone_code (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_account_sent_change_phone_code (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "account.sentChangePhoneCode", text_len)) { *R = tstrdup ("account.sentChangePhoneCode"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_auth_authorization (struct paramed_type *T) {
- if (autocomplete_constructor_auth_authorization (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_auth_authorization (struct paramed_type *T) {
- if (autocomplete_constructor_auth_authorization (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_auth_authorization (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "auth.authorization", text_len)) { *R = tstrdup ("auth.authorization"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_auth_checked_phone (struct paramed_type *T) {
- if (autocomplete_constructor_auth_checked_phone (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_auth_checked_phone (struct paramed_type *T) {
- if (autocomplete_constructor_auth_checked_phone (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_auth_checked_phone (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "auth.checkedPhone", text_len)) { *R = tstrdup ("auth.checkedPhone"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_auth_exported_authorization (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_auth_exported_authorization); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "auth.exportedAuthorization", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_auth_exported_authorization (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_auth_exported_authorization (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_auth_exported_authorization); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "auth.exportedAuthorization", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_auth_exported_authorization (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_auth_exported_authorization (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "auth.exportedAuthorization", text_len)) { *R = tstrdup ("auth.exportedAuthorization"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_auth_password_recovery (struct paramed_type *T) {
- if (autocomplete_constructor_auth_password_recovery (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_auth_password_recovery (struct paramed_type *T) {
- if (autocomplete_constructor_auth_password_recovery (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_auth_password_recovery (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "auth.passwordRecovery", text_len)) { *R = tstrdup ("auth.passwordRecovery"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_auth_sent_code (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_auth_sent_code); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "auth.sentCode", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_auth_sent_code (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "auth.sentAppCode", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_auth_sent_app_code (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_auth_sent_code (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_auth_sent_code); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "auth.sentCode", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_auth_sent_code (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "auth.sentAppCode", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_auth_sent_app_code (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_auth_sent_code (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "auth.sentCode", text_len)) { *R = tstrdup ("auth.sentCode"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "auth.sentAppCode", text_len)) { *R = tstrdup ("auth.sentAppCode"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_binlog_encr_key (struct paramed_type *T) {
- if (autocomplete_constructor_binlog_encr_key (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_binlog_encr_key (struct paramed_type *T) {
- if (autocomplete_constructor_binlog_encr_key (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_binlog_encr_key (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "binlog.encrKey", text_len)) { *R = tstrdup ("binlog.encrKey"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_binlog_update (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_binlog_update); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "binlog.start", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_start (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "binlog.dcOption", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_dc_option (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "binlog.dcOptionNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_dc_option_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.authKey", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_auth_key (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "binlog.defaultDc", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_default_dc (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "binlog.dcSigned", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_dc_signed (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "binlog.ourId", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_our_id (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "binlog.setDhParams", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_set_dh_params (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "binlog.setPts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_set_pts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "binlog.setQts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_set_qts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.setDate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_set_date (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "binlog.setSeq", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_set_seq (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "binlog.encrChatDelete", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_encr_chat_delete (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "binlog.encrChatNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_encr_chat_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "binlog.encrChatExchangeNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_encr_chat_exchange_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "binlog.userDelete", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_user_delete (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.userNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_user_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.chatNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_chat_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "binlog.chatAddParticipant", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_chat_add_participant (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "binlog.chatDelParticipant", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_chat_del_participant (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "binlog.setMsgId", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_set_msg_id (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "binlog.messageDelete", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_message_delete (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "binlog.messageNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_message_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "binlog.messageEncrNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_message_encr_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "binlog.msgUpdate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_msg_update (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "binlog.resetAuthorization", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_reset_authorization (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_binlog_update (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_binlog_update); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "binlog.start", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_start (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "binlog.dcOption", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_dc_option (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "binlog.dcOptionNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_dc_option_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.authKey", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_auth_key (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "binlog.defaultDc", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_default_dc (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "binlog.dcSigned", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_dc_signed (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "binlog.ourId", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_our_id (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "binlog.setDhParams", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_set_dh_params (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "binlog.setPts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_set_pts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "binlog.setQts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_set_qts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.setDate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_set_date (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "binlog.setSeq", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_set_seq (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "binlog.encrChatDelete", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_encr_chat_delete (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "binlog.encrChatNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_encr_chat_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "binlog.encrChatExchangeNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_encr_chat_exchange_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "binlog.userDelete", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_user_delete (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.userNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_user_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.chatNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_chat_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "binlog.chatAddParticipant", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_chat_add_participant (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "binlog.chatDelParticipant", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_chat_del_participant (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "binlog.setMsgId", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_set_msg_id (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "binlog.messageDelete", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_message_delete (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "binlog.messageNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_message_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "binlog.messageEncrNew", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_message_encr_new (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "binlog.msgUpdate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_msg_update (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "binlog.resetAuthorization", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_binlog_reset_authorization (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_binlog_update (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "binlog.start", text_len)) { *R = tstrdup ("binlog.start"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "binlog.dcOption", text_len)) { *R = tstrdup ("binlog.dcOption"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "binlog.dcOptionNew", text_len)) { *R = tstrdup ("binlog.dcOptionNew"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "binlog.authKey", text_len)) { *R = tstrdup ("binlog.authKey"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "binlog.defaultDc", text_len)) { *R = tstrdup ("binlog.defaultDc"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "binlog.dcSigned", text_len)) { *R = tstrdup ("binlog.dcSigned"); return index; } else { index ++; }}
- if (index == 6) { if (!strncmp (text, "binlog.ourId", text_len)) { *R = tstrdup ("binlog.ourId"); return index; } else { index ++; }}
- if (index == 7) { if (!strncmp (text, "binlog.setDhParams", text_len)) { *R = tstrdup ("binlog.setDhParams"); return index; } else { index ++; }}
- if (index == 8) { if (!strncmp (text, "binlog.setPts", text_len)) { *R = tstrdup ("binlog.setPts"); return index; } else { index ++; }}
- if (index == 9) { if (!strncmp (text, "binlog.setQts", text_len)) { *R = tstrdup ("binlog.setQts"); return index; } else { index ++; }}
- if (index == 10) { if (!strncmp (text, "binlog.setDate", text_len)) { *R = tstrdup ("binlog.setDate"); return index; } else { index ++; }}
- if (index == 11) { if (!strncmp (text, "binlog.setSeq", text_len)) { *R = tstrdup ("binlog.setSeq"); return index; } else { index ++; }}
- if (index == 12) { if (!strncmp (text, "binlog.encrChatDelete", text_len)) { *R = tstrdup ("binlog.encrChatDelete"); return index; } else { index ++; }}
- if (index == 13) { if (!strncmp (text, "binlog.encrChatNew", text_len)) { *R = tstrdup ("binlog.encrChatNew"); return index; } else { index ++; }}
- if (index == 14) { if (!strncmp (text, "binlog.encrChatExchangeNew", text_len)) { *R = tstrdup ("binlog.encrChatExchangeNew"); return index; } else { index ++; }}
- if (index == 15) { if (!strncmp (text, "binlog.userDelete", text_len)) { *R = tstrdup ("binlog.userDelete"); return index; } else { index ++; }}
- if (index == 16) { if (!strncmp (text, "binlog.userNew", text_len)) { *R = tstrdup ("binlog.userNew"); return index; } else { index ++; }}
- if (index == 17) { if (!strncmp (text, "binlog.chatNew", text_len)) { *R = tstrdup ("binlog.chatNew"); return index; } else { index ++; }}
- if (index == 18) { if (!strncmp (text, "binlog.chatAddParticipant", text_len)) { *R = tstrdup ("binlog.chatAddParticipant"); return index; } else { index ++; }}
- if (index == 19) { if (!strncmp (text, "binlog.chatDelParticipant", text_len)) { *R = tstrdup ("binlog.chatDelParticipant"); return index; } else { index ++; }}
- if (index == 20) { if (!strncmp (text, "binlog.setMsgId", text_len)) { *R = tstrdup ("binlog.setMsgId"); return index; } else { index ++; }}
- if (index == 21) { if (!strncmp (text, "binlog.messageDelete", text_len)) { *R = tstrdup ("binlog.messageDelete"); return index; } else { index ++; }}
- if (index == 22) { if (!strncmp (text, "binlog.messageNew", text_len)) { *R = tstrdup ("binlog.messageNew"); return index; } else { index ++; }}
- if (index == 23) { if (!strncmp (text, "binlog.messageEncrNew", text_len)) { *R = tstrdup ("binlog.messageEncrNew"); return index; } else { index ++; }}
- if (index == 24) { if (!strncmp (text, "binlog.msgUpdate", text_len)) { *R = tstrdup ("binlog.msgUpdate"); return index; } else { index ++; }}
- if (index == 25) { if (!strncmp (text, "binlog.resetAuthorization", text_len)) { *R = tstrdup ("binlog.resetAuthorization"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_contacts_blocked (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contacts_blocked); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "contacts.blocked", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_blocked (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "contacts.blockedSlice", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_blocked_slice (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_contacts_blocked (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contacts_blocked); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "contacts.blocked", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_blocked (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "contacts.blockedSlice", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_blocked_slice (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_contacts_blocked (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "contacts.blocked", text_len)) { *R = tstrdup ("contacts.blocked"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "contacts.blockedSlice", text_len)) { *R = tstrdup ("contacts.blockedSlice"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_contacts_contacts (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contacts_contacts); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 28 && !memcmp (cur_token, "contacts.contactsNotModified", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_contacts_not_modified (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "contacts.contacts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_contacts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_contacts_contacts (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contacts_contacts); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 28 && !memcmp (cur_token, "contacts.contactsNotModified", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_contacts_not_modified (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "contacts.contacts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_contacts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_contacts_contacts (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "contacts.contactsNotModified", text_len)) { *R = tstrdup ("contacts.contactsNotModified"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "contacts.contacts", text_len)) { *R = tstrdup ("contacts.contacts"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_contacts_found (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contacts_found); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "contacts.found", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_found (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_contacts_found (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contacts_found); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "contacts.found", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_found (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_contacts_found (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "contacts.found", text_len)) { *R = tstrdup ("contacts.found"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_contacts_imported_contacts (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contacts_imported_contacts); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "contacts.importedContacts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_imported_contacts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_contacts_imported_contacts (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contacts_imported_contacts); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "contacts.importedContacts", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_imported_contacts (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_contacts_imported_contacts (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "contacts.importedContacts", text_len)) { *R = tstrdup ("contacts.importedContacts"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_contacts_link (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contacts_link); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "contacts.link", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_link (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_contacts_link (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contacts_link); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "contacts.link", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_link (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_contacts_link (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "contacts.link", text_len)) { *R = tstrdup ("contacts.link"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_contacts_suggested (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contacts_suggested); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "contacts.suggested", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_suggested (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_contacts_suggested (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_contacts_suggested); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "contacts.suggested", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_contacts_suggested (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_contacts_suggested (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "contacts.suggested", text_len)) { *R = tstrdup ("contacts.suggested"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_geochats_located (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_geochats_located); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "geochats.located", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geochats_located (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_geochats_located (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_geochats_located); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "geochats.located", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geochats_located (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_geochats_located (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "geochats.located", text_len)) { *R = tstrdup ("geochats.located"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_geochats_messages (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_geochats_messages); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "geochats.messages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geochats_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.messagesSlice", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geochats_messages_slice (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_geochats_messages (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_geochats_messages); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "geochats.messages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geochats_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.messagesSlice", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geochats_messages_slice (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_geochats_messages (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "geochats.messages", text_len)) { *R = tstrdup ("geochats.messages"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "geochats.messagesSlice", text_len)) { *R = tstrdup ("geochats.messagesSlice"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_geochats_stated_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_geochats_stated_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.statedMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geochats_stated_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_geochats_stated_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_geochats_stated_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.statedMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_geochats_stated_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_geochats_stated_message (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "geochats.statedMessage", text_len)) { *R = tstrdup ("geochats.statedMessage"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_help_app_update (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_help_app_update); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "help.appUpdate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_help_app_update (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "help.noAppUpdate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_help_no_app_update (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_help_app_update (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_help_app_update); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "help.appUpdate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_help_app_update (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "help.noAppUpdate", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_help_no_app_update (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_help_app_update (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "help.appUpdate", text_len)) { *R = tstrdup ("help.appUpdate"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "help.noAppUpdate", text_len)) { *R = tstrdup ("help.noAppUpdate"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_help_invite_text (struct paramed_type *T) {
- if (autocomplete_constructor_help_invite_text (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_help_invite_text (struct paramed_type *T) {
- if (autocomplete_constructor_help_invite_text (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_help_invite_text (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "help.inviteText", text_len)) { *R = tstrdup ("help.inviteText"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_help_support (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_help_support); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "help.support", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_help_support (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_help_support (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_help_support); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "help.support", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_help_support (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_help_support (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "help.support", text_len)) { *R = tstrdup ("help.support"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_affected_history (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_affected_history); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 24 && !memcmp (cur_token, "messages.affectedHistory", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_affected_history (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_affected_history (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_affected_history); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 24 && !memcmp (cur_token, "messages.affectedHistory", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_affected_history (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_affected_history (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.affectedHistory", text_len)) { *R = tstrdup ("messages.affectedHistory"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_affected_messages (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_affected_messages); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "messages.affectedMessages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_affected_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_affected_messages (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_affected_messages); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "messages.affectedMessages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_affected_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_affected_messages (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.affectedMessages", text_len)) { *R = tstrdup ("messages.affectedMessages"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_all_stickers (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_all_stickers); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 31 && !memcmp (cur_token, "messages.allStickersNotModified", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_all_stickers_not_modified (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.allStickers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_all_stickers (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_all_stickers (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_all_stickers); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 31 && !memcmp (cur_token, "messages.allStickersNotModified", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_all_stickers_not_modified (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.allStickers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_all_stickers (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_all_stickers (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.allStickersNotModified", text_len)) { *R = tstrdup ("messages.allStickersNotModified"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "messages.allStickers", text_len)) { *R = tstrdup ("messages.allStickers"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_chat_full (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_chat_full); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.chatFull", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_chat_full (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_chat_full (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_chat_full); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.chatFull", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_chat_full (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_chat_full (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.chatFull", text_len)) { *R = tstrdup ("messages.chatFull"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_chats (struct paramed_type *T) {
- if (autocomplete_constructor_messages_chats (T) < 0) { return -1; }
- return 0;
-}
-int autocomplete_type_bare_messages_chats (struct paramed_type *T) {
- if (autocomplete_constructor_messages_chats (T) < 0) { return -1; }
- return 0;
-}
-int do_autocomplete_type_messages_chats (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.chats", text_len)) { *R = tstrdup ("messages.chats"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_dh_config (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_dh_config); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 28 && !memcmp (cur_token, "messages.dhConfigNotModified", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_dh_config_not_modified (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.dhConfig", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_dh_config (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_dh_config (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_dh_config); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 28 && !memcmp (cur_token, "messages.dhConfigNotModified", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_dh_config_not_modified (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.dhConfig", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_dh_config (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_dh_config (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.dhConfigNotModified", text_len)) { *R = tstrdup ("messages.dhConfigNotModified"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "messages.dhConfig", text_len)) { *R = tstrdup ("messages.dhConfig"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_dialogs (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_dialogs); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "messages.dialogs", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_dialogs (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "messages.dialogsSlice", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_dialogs_slice (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_dialogs (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_dialogs); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "messages.dialogs", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_dialogs (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "messages.dialogsSlice", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_dialogs_slice (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_dialogs (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.dialogs", text_len)) { *R = tstrdup ("messages.dialogs"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "messages.dialogsSlice", text_len)) { *R = tstrdup ("messages.dialogsSlice"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "messages.messageEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_message_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "messages.messageEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_message_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_message (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.messageEmpty", text_len)) { *R = tstrdup ("messages.messageEmpty"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_messages (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_messages); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.messages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.messagesSlice", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_messages_slice (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_messages (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_messages); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.messages", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_messages (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.messagesSlice", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_messages_slice (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_messages (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.messages", text_len)) { *R = tstrdup ("messages.messages"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "messages.messagesSlice", text_len)) { *R = tstrdup ("messages.messagesSlice"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_sent_encrypted_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_sent_encrypted_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 29 && !memcmp (cur_token, "messages.sentEncryptedMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_sent_encrypted_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.sentEncryptedFile", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_sent_encrypted_file (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_sent_encrypted_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_sent_encrypted_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 29 && !memcmp (cur_token, "messages.sentEncryptedMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_sent_encrypted_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.sentEncryptedFile", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_sent_encrypted_file (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_sent_encrypted_message (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.sentEncryptedMessage", text_len)) { *R = tstrdup ("messages.sentEncryptedMessage"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "messages.sentEncryptedFile", text_len)) { *R = tstrdup ("messages.sentEncryptedFile"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_sent_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_sent_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.sentMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_sent_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "messages.sentMessageLink", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_sent_message_link (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_sent_message (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_sent_message); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.sentMessage", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_sent_message (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "messages.sentMessageLink", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_sent_message_link (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_sent_message (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.sentMessage", text_len)) { *R = tstrdup ("messages.sentMessage"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "messages.sentMessageLink", text_len)) { *R = tstrdup ("messages.sentMessageLink"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_sticker_set (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_sticker_set); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "messages.stickerSet", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_sticker_set (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_sticker_set (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_sticker_set); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "messages.stickerSet", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_sticker_set (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_sticker_set (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.stickerSet", text_len)) { *R = tstrdup ("messages.stickerSet"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_messages_stickers (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_stickers); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 28 && !memcmp (cur_token, "messages.stickersNotModified", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_stickers_not_modified (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.stickers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_stickers (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_messages_stickers (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_messages_stickers); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 28 && !memcmp (cur_token, "messages.stickersNotModified", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_stickers_not_modified (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.stickers", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_messages_stickers (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_messages_stickers (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "messages.stickersNotModified", text_len)) { *R = tstrdup ("messages.stickersNotModified"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "messages.stickers", text_len)) { *R = tstrdup ("messages.stickers"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_photos_photo (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_photos_photo); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "photos.photo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photos_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_photos_photo (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_photos_photo); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "photos.photo", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photos_photo (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_photos_photo (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "photos.photo", text_len)) { *R = tstrdup ("photos.photo"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_photos_photos (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_photos_photos); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "photos.photos", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photos_photos (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "photos.photosSlice", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photos_photos_slice (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_photos_photos (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_photos_photos); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "photos.photos", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photos_photos (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "photos.photosSlice", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_photos_photos_slice (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_photos_photos (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "photos.photos", text_len)) { *R = tstrdup ("photos.photos"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "photos.photosSlice", text_len)) { *R = tstrdup ("photos.photosSlice"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_storage_file_type (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_storage_file_type); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "storage.fileUnknown", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_unknown (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "storage.fileJpeg", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_jpeg (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileGif", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_gif (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.filePng", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_png (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.filePdf", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_pdf (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileMp3", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_mp3 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileMov", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_mov (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "storage.filePartial", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_partial (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileMp4", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_mp4 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "storage.fileWebp", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_webp (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_storage_file_type (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_storage_file_type); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "storage.fileUnknown", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_unknown (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "storage.fileJpeg", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_jpeg (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileGif", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_gif (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.filePng", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_png (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.filePdf", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_pdf (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileMp3", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_mp3 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileMov", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_mov (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "storage.filePartial", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_partial (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileMp4", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_mp4 (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "storage.fileWebp", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_storage_file_webp (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_storage_file_type (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "storage.fileUnknown", text_len)) { *R = tstrdup ("storage.fileUnknown"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "storage.fileJpeg", text_len)) { *R = tstrdup ("storage.fileJpeg"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "storage.fileGif", text_len)) { *R = tstrdup ("storage.fileGif"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "storage.filePng", text_len)) { *R = tstrdup ("storage.filePng"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "storage.filePdf", text_len)) { *R = tstrdup ("storage.filePdf"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "storage.fileMp3", text_len)) { *R = tstrdup ("storage.fileMp3"); return index; } else { index ++; }}
- if (index == 6) { if (!strncmp (text, "storage.fileMov", text_len)) { *R = tstrdup ("storage.fileMov"); return index; } else { index ++; }}
- if (index == 7) { if (!strncmp (text, "storage.filePartial", text_len)) { *R = tstrdup ("storage.filePartial"); return index; } else { index ++; }}
- if (index == 8) { if (!strncmp (text, "storage.fileMp4", text_len)) { *R = tstrdup ("storage.fileMp4"); return index; } else { index ++; }}
- if (index == 9) { if (!strncmp (text, "storage.fileWebp", text_len)) { *R = tstrdup ("storage.fileWebp"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_updates_difference (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_updates_difference); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "updates.differenceEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates_difference_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "updates.difference", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates_difference (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updates.differenceSlice", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates_difference_slice (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_updates_difference (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_updates_difference); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "updates.differenceEmpty", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates_difference_empty (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "updates.difference", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates_difference (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updates.differenceSlice", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates_difference_slice (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_updates_difference (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "updates.differenceEmpty", text_len)) { *R = tstrdup ("updates.differenceEmpty"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "updates.difference", text_len)) { *R = tstrdup ("updates.difference"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "updates.differenceSlice", text_len)) { *R = tstrdup ("updates.differenceSlice"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_updates_state (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_updates_state); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "updates.state", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates_state (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_updates_state (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_updates_state); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "updates.state", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_updates_state (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_updates_state (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "updates.state", text_len)) { *R = tstrdup ("updates.state"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-int autocomplete_type_upload_file (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_upload_file); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "upload.file", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_upload_file (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int autocomplete_type_bare_upload_file (struct paramed_type *T) {
- expect_token_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_type_upload_file); return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "upload.file", cur_token_len)) {
- local_next_token ();
- if (autocomplete_constructor_upload_file (T) < 0) { return -1; }
- expect_token_autocomplete (")", 1);
- return 0;
- }
- return -1;
-}
-int do_autocomplete_type_upload_file (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "upload.file", text_len)) { *R = tstrdup ("upload.file"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-struct paramed_type *autocomplete_function_account_change_phone (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_real_len)) {
- set_autocomplete_string ("phone_number");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_real_len)) {
- set_autocomplete_string ("phone_code_hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "phone_code", cur_token_real_len)) {
- set_autocomplete_string ("phone_code");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "phone_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_check_username (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "username", cur_token_real_len)) {
- set_autocomplete_string ("username");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "username", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_delete_account (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "reason", cur_token_real_len)) {
- set_autocomplete_string ("reason");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "reason", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_get_account_t_t_l (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb8d0afdf, .id = "AccountDaysTTL", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_get_authorizations (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1250abde, .id = "account.Authorizations", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_get_notify_settings (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02b6911b, .id = "InputNotifyPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_notify_peer (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_get_password (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xeac2a804, .id = "account.Password", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_get_password_settings (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 21 && !cur_token_quoted && !memcmp (cur_token, "current_password_hash", cur_token_real_len)) {
- set_autocomplete_string ("current_password_hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 21 && !memcmp (cur_token, "current_password_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb7b72ab3, .id = "account.PasswordSettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_get_privacy (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_real_len)) {
- set_autocomplete_string ("key");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4f96cb18, .id = "InputPrivacyKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_privacy_key (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x554abb6f, .id = "account.PrivacyRules", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_get_wall_papers (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xafa14973, .id = "WallPaper", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_register_device (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "token_type", cur_token_real_len)) {
- set_autocomplete_string ("token_type");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "token_type", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "token", cur_token_real_len)) {
- set_autocomplete_string ("token");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "token", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "device_model", cur_token_real_len)) {
- set_autocomplete_string ("device_model");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "device_model", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "system_version", cur_token_real_len)) {
- set_autocomplete_string ("system_version");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "system_version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "app_version", cur_token_real_len)) {
- set_autocomplete_string ("app_version");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "app_version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "app_sandbox", cur_token_real_len)) {
- set_autocomplete_string ("app_sandbox");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "app_sandbox", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field6) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "lang_code", cur_token_real_len)) {
- set_autocomplete_string ("lang_code");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "lang_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field7) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_reset_authorization (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_real_len)) {
- set_autocomplete_string ("hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_reset_notify_settings (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_send_change_phone_code (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_real_len)) {
- set_autocomplete_string ("phone_number");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa4f58c4c, .id = "account.SentChangePhoneCode", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_set_account_t_t_l (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "ttl", cur_token_real_len)) {
- set_autocomplete_string ("ttl");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "ttl", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb8d0afdf, .id = "AccountDaysTTL", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_account_days_t_t_l (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_set_privacy (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_real_len)) {
- set_autocomplete_string ("key");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4f96cb18, .id = "InputPrivacyKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_privacy_key (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "rules", cur_token_real_len)) {
- set_autocomplete_string ("rules");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "rules", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4b815163, .id = "InputPrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x554abb6f, .id = "account.PrivacyRules", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_unregister_device (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "token_type", cur_token_real_len)) {
- set_autocomplete_string ("token_type");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "token_type", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "token", cur_token_real_len)) {
- set_autocomplete_string ("token");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "token", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_update_device_locked (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "period", cur_token_real_len)) {
- set_autocomplete_string ("period");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "period", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_update_notify_settings (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02b6911b, .id = "InputNotifyPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_notify_peer (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "settings", cur_token_real_len)) {
- set_autocomplete_string ("settings");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "settings", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x46a2ce98, .id = "InputPeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_peer_notify_settings (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_update_password_settings (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 21 && !cur_token_quoted && !memcmp (cur_token, "current_password_hash", cur_token_real_len)) {
- set_autocomplete_string ("current_password_hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 21 && !memcmp (cur_token, "current_password_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "new_settings", cur_token_real_len)) {
- set_autocomplete_string ("new_settings");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "new_settings", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbcfc532c, .id = "account.PasswordInputSettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_account_password_input_settings (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_update_profile (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_real_len)) {
- set_autocomplete_string ("first_name");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_real_len)) {
- set_autocomplete_string ("last_name");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_update_status (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "offline", cur_token_real_len)) {
- set_autocomplete_string ("offline");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "offline", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_account_update_username (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "username", cur_token_real_len)) {
- set_autocomplete_string ("username");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "username", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_bind_temp_auth_key (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 16 && !cur_token_quoted && !memcmp (cur_token, "perm_auth_key_id", cur_token_real_len)) {
- set_autocomplete_string ("perm_auth_key_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 16 && !memcmp (cur_token, "perm_auth_key_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "expires_at", cur_token_real_len)) {
- set_autocomplete_string ("expires_at");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "expires_at", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 17 && !cur_token_quoted && !memcmp (cur_token, "encrypted_message", cur_token_real_len)) {
- set_autocomplete_string ("encrypted_message");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 17 && !memcmp (cur_token, "encrypted_message", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_check_password (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 13 && !cur_token_quoted && !memcmp (cur_token, "password_hash", cur_token_real_len)) {
- set_autocomplete_string ("password_hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 13 && !memcmp (cur_token, "password_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xff036af1, .id = "auth.Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_check_phone (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_real_len)) {
- set_autocomplete_string ("phone_number");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x811ea28e, .id = "auth.CheckedPhone", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_export_authorization (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_real_len)) {
- set_autocomplete_string ("dc_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xdf969c2d, .id = "auth.ExportedAuthorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_import_authorization (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_real_len)) {
- set_autocomplete_string ("bytes");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xff036af1, .id = "auth.Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_import_bot_authorization (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "api_id", cur_token_real_len)) {
- set_autocomplete_string ("api_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "api_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "api_hash", cur_token_real_len)) {
- set_autocomplete_string ("api_hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "api_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "bot_auth_token", cur_token_real_len)) {
- set_autocomplete_string ("bot_auth_token");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "bot_auth_token", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xff036af1, .id = "auth.Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_log_out (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_recover_password (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "code", cur_token_real_len)) {
- set_autocomplete_string ("code");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xff036af1, .id = "auth.Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_request_password_recovery (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x137948a5, .id = "auth.PasswordRecovery", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_reset_authorizations (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_send_call (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_real_len)) {
- set_autocomplete_string ("phone_number");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_real_len)) {
- set_autocomplete_string ("phone_code_hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_send_code (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_real_len)) {
- set_autocomplete_string ("phone_number");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "sms_type", cur_token_real_len)) {
- set_autocomplete_string ("sms_type");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "sms_type", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "api_id", cur_token_real_len)) {
- set_autocomplete_string ("api_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "api_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "api_hash", cur_token_real_len)) {
- set_autocomplete_string ("api_hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "api_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "lang_code", cur_token_real_len)) {
- set_autocomplete_string ("lang_code");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "lang_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0cc8bc16, .id = "auth.SentCode", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_send_invites (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 13 && !cur_token_quoted && !memcmp (cur_token, "phone_numbers", cur_token_real_len)) {
- set_autocomplete_string ("phone_numbers");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 13 && !memcmp (cur_token, "phone_numbers", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_send_sms (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_real_len)) {
- set_autocomplete_string ("phone_number");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_real_len)) {
- set_autocomplete_string ("phone_code_hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_sign_in (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_real_len)) {
- set_autocomplete_string ("phone_number");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_real_len)) {
- set_autocomplete_string ("phone_code_hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "phone_code", cur_token_real_len)) {
- set_autocomplete_string ("phone_code");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "phone_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xff036af1, .id = "auth.Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_auth_sign_up (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_real_len)) {
- set_autocomplete_string ("phone_number");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_real_len)) {
- set_autocomplete_string ("phone_code_hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "phone_code", cur_token_real_len)) {
- set_autocomplete_string ("phone_code");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "phone_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_real_len)) {
- set_autocomplete_string ("first_name");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_real_len)) {
- set_autocomplete_string ("last_name");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xff036af1, .id = "auth.Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_block (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_user (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_delete_contact (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_user (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_delete_contacts (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_export_card (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_get_blocked (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_real_len)) {
- set_autocomplete_string ("offset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_real_len)) {
- set_autocomplete_string ("limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8c1b8fb4, .id = "contacts.Blocked", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_get_contacts (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_real_len)) {
- set_autocomplete_string ("hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xd8c02560, .id = "contacts.Contacts", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_get_statuses (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xd3680c61, .id = "ContactStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_get_suggested (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_real_len)) {
- set_autocomplete_string ("limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5649dcc5, .id = "contacts.Suggested", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_import_card (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "export_card", cur_token_real_len)) {
- set_autocomplete_string ("export_card");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "export_card", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_import_contacts (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "contacts", cur_token_real_len)) {
- set_autocomplete_string ("contacts");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "contacts", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf392b7f4, .id = "InputContact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "replace", cur_token_real_len)) {
- set_autocomplete_string ("replace");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "replace", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xad524315, .id = "contacts.ImportedContacts", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_resolve_username (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "username", cur_token_real_len)) {
- set_autocomplete_string ("username");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "username", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_search (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "q", cur_token_real_len)) {
- set_autocomplete_string ("q");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "q", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_real_len)) {
- set_autocomplete_string ("limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0566000e, .id = "contacts.Found", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_contacts_unblock (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_user (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_geochats_checkin (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_chat (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17b1578b, .id = "geochats.StatedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_geochats_create_geo_chat (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "geo_point", cur_token_real_len)) {
- set_autocomplete_string ("geo_point");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "geo_point", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_point (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "address", cur_token_real_len)) {
- set_autocomplete_string ("address");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "address", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "venue", cur_token_real_len)) {
- set_autocomplete_string ("venue");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "venue", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17b1578b, .id = "geochats.StatedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_geochats_edit_chat_photo (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3a60776d, .id = "InputChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_chat_photo (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17b1578b, .id = "geochats.StatedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_geochats_edit_chat_title (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "address", cur_token_real_len)) {
- set_autocomplete_string ("address");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "address", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17b1578b, .id = "geochats.StatedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_geochats_get_full_chat (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_chat (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe5d7d19c, .id = "messages.ChatFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_geochats_get_history (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_real_len)) {
- set_autocomplete_string ("offset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_real_len)) {
- set_autocomplete_string ("max_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_real_len)) {
- set_autocomplete_string ("limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6d0a0e59, .id = "geochats.Messages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_geochats_get_located (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "geo_point", cur_token_real_len)) {
- set_autocomplete_string ("geo_point");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "geo_point", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_point (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "radius", cur_token_real_len)) {
- set_autocomplete_string ("radius");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "radius", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_real_len)) {
- set_autocomplete_string ("limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x48feb267, .id = "geochats.Located", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_geochats_get_recents (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_real_len)) {
- set_autocomplete_string ("offset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_real_len)) {
- set_autocomplete_string ("limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6d0a0e59, .id = "geochats.Messages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_geochats_search (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "q", cur_token_real_len)) {
- set_autocomplete_string ("q");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "q", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "filter", cur_token_real_len)) {
- set_autocomplete_string ("filter");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "filter", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x80895ae0, .id = "MessagesFilter", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_messages_filter (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "min_date", cur_token_real_len)) {
- set_autocomplete_string ("min_date");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "min_date", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "max_date", cur_token_real_len)) {
- set_autocomplete_string ("max_date");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "max_date", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_real_len)) {
- set_autocomplete_string ("offset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_real_len)) {
- set_autocomplete_string ("max_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_real_len)) {
- set_autocomplete_string ("limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field8) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6d0a0e59, .id = "geochats.Messages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_geochats_send_media (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_real_len)) {
- set_autocomplete_string ("media");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb32c91dd, .id = "InputMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_media (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17b1578b, .id = "geochats.StatedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_geochats_send_message (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17b1578b, .id = "geochats.StatedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_geochats_set_typing (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "typing", cur_token_real_len)) {
- set_autocomplete_string ("typing");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "typing", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_help_get_app_update (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "device_model", cur_token_real_len)) {
- set_autocomplete_string ("device_model");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "device_model", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "system_version", cur_token_real_len)) {
- set_autocomplete_string ("system_version");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "system_version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "app_version", cur_token_real_len)) {
- set_autocomplete_string ("app_version");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "app_version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "lang_code", cur_token_real_len)) {
- set_autocomplete_string ("lang_code");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "lang_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ddd9627, .id = "help.AppUpdate", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_help_get_config (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e32b894, .id = "Config", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_help_get_invite_text (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "lang_code", cur_token_real_len)) {
- set_autocomplete_string ("lang_code");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "lang_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x18cb9f78, .id = "help.InviteText", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_help_get_nearest_dc (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8e1a1775, .id = "NearestDc", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_help_get_support (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17c6b5f6, .id = "help.Support", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_help_save_app_log (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "events", cur_token_real_len)) {
- set_autocomplete_string ("events");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "events", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x770656a8, .id = "InputAppEvent", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_init_connection (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "api_id", cur_token_real_len)) {
- set_autocomplete_string ("api_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "api_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "device_model", cur_token_real_len)) {
- set_autocomplete_string ("device_model");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "device_model", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "system_version", cur_token_real_len)) {
- set_autocomplete_string ("system_version");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "system_version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "app_version", cur_token_real_len)) {
- set_autocomplete_string ("app_version");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "app_version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field5) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "lang_code", cur_token_real_len)) {
- set_autocomplete_string ("lang_code");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "lang_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field6) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "query", cur_token_real_len)) {
- set_autocomplete_string ("query");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "query", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field7 = autocomplete_function_any ();
- if (!field7) { return 0; }
- add_var_to_be_freed (field7);
- if (ODDP(field7)) { return 0; }
- struct paramed_type *var0 = field7; assert (var0);
- struct paramed_type *R =
- var0;
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_invoke_after_msg (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "msg_id", cur_token_real_len)) {
- set_autocomplete_string ("msg_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "msg_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "query", cur_token_real_len)) {
- set_autocomplete_string ("query");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "query", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 = autocomplete_function_any ();
- if (!field3) { return 0; }
- add_var_to_be_freed (field3);
- if (ODDP(field3)) { return 0; }
- struct paramed_type *var0 = field3; assert (var0);
- struct paramed_type *R =
- var0;
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_invoke_after_msgs (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "msg_ids", cur_token_real_len)) {
- set_autocomplete_string ("msg_ids");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "msg_ids", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "query", cur_token_real_len)) {
- set_autocomplete_string ("query");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "query", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 = autocomplete_function_any ();
- if (!field3) { return 0; }
- add_var_to_be_freed (field3);
- if (ODDP(field3)) { return 0; }
- struct paramed_type *var0 = field3; assert (var0);
- struct paramed_type *R =
- var0;
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_invoke_with_layer (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "layer", cur_token_real_len)) {
- set_autocomplete_string ("layer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "layer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "query", cur_token_real_len)) {
- set_autocomplete_string ("query");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "query", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 = autocomplete_function_any ();
- if (!field3) { return 0; }
- add_var_to_be_freed (field3);
- if (ODDP(field3)) { return 0; }
- struct paramed_type *var0 = field3; assert (var0);
- struct paramed_type *R =
- var0;
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_invoke_without_updates (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "query", cur_token_real_len)) {
- set_autocomplete_string ("query");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "query", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 = autocomplete_function_any ();
- if (!field2) { return 0; }
- add_var_to_be_freed (field2);
- if (ODDP(field2)) { return 0; }
- struct paramed_type *var0 = field2; assert (var0);
- struct paramed_type *R =
- var0;
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_accept_encryption (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf141b5e1, .id = "InputEncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_encrypted_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "g_b", cur_token_real_len)) {
- set_autocomplete_string ("g_b");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "g_b", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_real_len)) {
- set_autocomplete_string ("key_fingerprint");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb1718213, .id = "EncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_add_chat_user (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_user (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "fwd_limit", cur_token_real_len)) {
- set_autocomplete_string ("fwd_limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "fwd_limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_check_chat_invite (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_real_len)) {
- set_autocomplete_string ("hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x94f910b1, .id = "ChatInvite", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_create_chat (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_real_len)) {
- set_autocomplete_string ("users");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_delete_chat_user (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_user (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_delete_history (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_real_len)) {
- set_autocomplete_string ("offset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb45c69d1, .id = "messages.AffectedHistory", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_delete_messages (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x84d19185, .id = "messages.AffectedMessages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_discard_encryption (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_edit_chat_photo (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_real_len)) {
- set_autocomplete_string ("photo");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3a60776d, .id = "InputChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_chat_photo (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_edit_chat_title (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_real_len)) {
- set_autocomplete_string ("title");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_export_chat_invite (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f132d5, .id = "ExportedChatInvite", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_forward_message (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_forward_messages (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_get_all_stickers (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_real_len)) {
- set_autocomplete_string ("hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb485502f, .id = "messages.AllStickers", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_get_chats (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x64ff9fd5, .id = "messages.Chats", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_get_dh_config (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_real_len)) {
- set_autocomplete_string ("version");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 13 && !cur_token_quoted && !memcmp (cur_token, "random_length", cur_token_real_len)) {
- set_autocomplete_string ("random_length");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 13 && !memcmp (cur_token, "random_length", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xecc058e8, .id = "messages.DhConfig", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_get_dialogs (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_real_len)) {
- set_autocomplete_string ("offset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_real_len)) {
- set_autocomplete_string ("max_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_real_len)) {
- set_autocomplete_string ("limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x645af8b3, .id = "messages.Dialogs", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_get_full_chat (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe5d7d19c, .id = "messages.ChatFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_get_history (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_real_len)) {
- set_autocomplete_string ("offset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_real_len)) {
- set_autocomplete_string ("max_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_real_len)) {
- set_autocomplete_string ("limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8735e464, .id = "messages.Messages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_get_messages (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8735e464, .id = "messages.Messages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_get_sticker_set (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "stickerset", cur_token_real_len)) {
- set_autocomplete_string ("stickerset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "stickerset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_sticker_set (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb60a24a6, .id = "messages.StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_get_stickers (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "emoticon", cur_token_real_len)) {
- set_autocomplete_string ("emoticon");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "emoticon", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_real_len)) {
- set_autocomplete_string ("hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bfa5710, .id = "messages.Stickers", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_get_web_page_preview (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_import_chat_invite (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_real_len)) {
- set_autocomplete_string ("hash");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_install_sticker_set (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "stickerset", cur_token_real_len)) {
- set_autocomplete_string ("stickerset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "stickerset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_sticker_set (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_read_encrypted_history (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf141b5e1, .id = "InputEncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_encrypted_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "max_date", cur_token_real_len)) {
- set_autocomplete_string ("max_date");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "max_date", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_read_history (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_real_len)) {
- set_autocomplete_string ("max_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_real_len)) {
- set_autocomplete_string ("offset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb45c69d1, .id = "messages.AffectedHistory", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_read_message_contents (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x84d19185, .id = "messages.AffectedMessages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_received_messages (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_real_len)) {
- set_autocomplete_string ("max_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa384b779, .id = "ReceivedNotifyMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_received_queue (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "max_qts", cur_token_real_len)) {
- set_autocomplete_string ("max_qts");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "max_qts", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_request_encryption (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_user (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "g_a", cur_token_real_len)) {
- set_autocomplete_string ("g_a");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "g_a", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb1718213, .id = "EncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_search (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "q", cur_token_real_len)) {
- set_autocomplete_string ("q");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "q", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "filter", cur_token_real_len)) {
- set_autocomplete_string ("filter");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "filter", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x80895ae0, .id = "MessagesFilter", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_messages_filter (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "min_date", cur_token_real_len)) {
- set_autocomplete_string ("min_date");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "min_date", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "max_date", cur_token_real_len)) {
- set_autocomplete_string ("max_date");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "max_date", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field5) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_real_len)) {
- set_autocomplete_string ("offset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field6) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_real_len)) {
- set_autocomplete_string ("max_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field7) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_real_len)) {
- set_autocomplete_string ("limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field8) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8735e464, .id = "messages.Messages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_send_broadcast (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "contacts", cur_token_real_len)) {
- set_autocomplete_string ("contacts");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "contacts", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_real_len)) {
- set_autocomplete_string ("media");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb32c91dd, .id = "InputMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_media (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_send_encrypted (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf141b5e1, .id = "InputEncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_encrypted_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "data", cur_token_real_len)) {
- set_autocomplete_string ("data");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "data", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc29c7607, .id = "messages.SentEncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_send_encrypted_file (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf141b5e1, .id = "InputEncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_encrypted_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "data", cur_token_real_len)) {
- set_autocomplete_string ("data");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "data", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_real_len)) {
- set_autocomplete_string ("file");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0b5c064f, .id = "InputEncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_encrypted_file (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc29c7607, .id = "messages.SentEncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_send_encrypted_service (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf141b5e1, .id = "InputEncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_encrypted_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "data", cur_token_real_len)) {
- set_autocomplete_string ("data");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "data", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc29c7607, .id = "messages.SentEncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_send_media (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return 0; }
- if (!is_int ()) { return 0;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_peer (field2) < 0) { return 0;}
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "reply_to_msg_id", cur_token_real_len)) {
- set_autocomplete_string ("reply_to_msg_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "reply_to_msg_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- }
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_real_len)) {
- set_autocomplete_string ("media");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb32c91dd, .id = "InputMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_media (field4) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field5) < 0) { return 0;}
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "reply_markup", cur_token_real_len)) {
- set_autocomplete_string ("reply_markup");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "reply_markup", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_reply_markup (field6) < 0) { return 0;}
- }
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_send_message (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_real_len)) {
- set_autocomplete_string ("flags");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- if (cur_token_len < 0) { return 0; }
- if (!is_int ()) { return 0;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_peer (field2) < 0) { return 0;}
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len == -3 && cur_token_real_len <= 15 && !cur_token_quoted && !memcmp (cur_token, "reply_to_msg_id", cur_token_real_len)) {
- set_autocomplete_string ("reply_to_msg_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 15 && !memcmp (cur_token, "reply_to_msg_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- }
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_real_len)) {
- set_autocomplete_string ("message");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field5) < 0) { return 0;}
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "reply_markup", cur_token_real_len)) {
- set_autocomplete_string ("reply_markup");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "reply_markup", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_reply_markup (field6) < 0) { return 0;}
- }
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x799ce190, .id = "messages.SentMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_set_encrypted_typing (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf141b5e1, .id = "InputEncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_encrypted_chat (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "typing", cur_token_real_len)) {
- set_autocomplete_string ("typing");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "typing", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bool (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_set_typing (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_real_len)) {
- set_autocomplete_string ("peer");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_real_len)) {
- set_autocomplete_string ("action");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_send_message_action (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_start_bot (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "bot", cur_token_real_len)) {
- set_autocomplete_string ("bot");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "bot", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_user (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_real_len)) {
- set_autocomplete_string ("chat_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_real_len)) {
- set_autocomplete_string ("random_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 11 && !cur_token_quoted && !memcmp (cur_token, "start_param", cur_token_real_len)) {
- set_autocomplete_string ("start_param");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 11 && !memcmp (cur_token, "start_param", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_messages_uninstall_sticker_set (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 10 && !cur_token_quoted && !memcmp (cur_token, "stickerset", cur_token_real_len)) {
- set_autocomplete_string ("stickerset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 10 && !memcmp (cur_token, "stickerset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_sticker_set (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_photos_delete_photos (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_photos_get_user_photos (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_real_len)) {
- set_autocomplete_string ("user_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_user (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_real_len)) {
- set_autocomplete_string ("offset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_real_len)) {
- set_autocomplete_string ("max_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_real_len)) {
- set_autocomplete_string ("limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x98cf75f1, .id = "photos.Photos", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_photos_update_profile_photo (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_photo (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "crop", cur_token_real_len)) {
- set_autocomplete_string ("crop");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "crop", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_photo_crop (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_photos_upload_profile_photo (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_real_len)) {
- set_autocomplete_string ("file");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_file (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_real_len)) {
- set_autocomplete_string ("caption");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "geo_point", cur_token_real_len)) {
- set_autocomplete_string ("geo_point");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "geo_point", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_geo_point (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "crop", cur_token_real_len)) {
- set_autocomplete_string ("crop");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "crop", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_photo_crop (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x20212ca8, .id = "photos.Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_req_d_h_params (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_real_len)) {
- set_autocomplete_string ("server_nonce");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "p", cur_token_real_len)) {
- set_autocomplete_string ("p");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "p", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 1 && !cur_token_quoted && !memcmp (cur_token, "q", cur_token_real_len)) {
- set_autocomplete_string ("q");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 1 && !memcmp (cur_token, "q", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field4) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 22 && !cur_token_quoted && !memcmp (cur_token, "public_key_fingerprint", cur_token_real_len)) {
- set_autocomplete_string ("public_key_fingerprint");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 22 && !memcmp (cur_token, "public_key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field5) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "encrypted_data", cur_token_real_len)) {
- set_autocomplete_string ("encrypted_data");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "encrypted_data", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field6) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa9230301, .id = "Server_DH_Params", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_req_pq (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x05162463, .id = "ResPQ", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_set_client_d_h_params (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_real_len)) {
- set_autocomplete_string ("nonce");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_real_len)) {
- set_autocomplete_string ("server_nonce");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 12 && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int128 (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 14 && !cur_token_quoted && !memcmp (cur_token, "encrypted_data", cur_token_real_len)) {
- set_autocomplete_string ("encrypted_data");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 14 && !memcmp (cur_token, "encrypted_data", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_string (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xdb8a468f, .id = "Set_client_DH_params_answer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_updates_get_difference (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_real_len)) {
- set_autocomplete_string ("pts");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_real_len)) {
- set_autocomplete_string ("date");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 3 && !cur_token_quoted && !memcmp (cur_token, "qts", cur_token_real_len)) {
- set_autocomplete_string ("qts");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 3 && !memcmp (cur_token, "qts", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf57a2419, .id = "updates.Difference", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_updates_get_state (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_upload_get_file (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 8 && !cur_token_quoted && !memcmp (cur_token, "location", cur_token_real_len)) {
- set_autocomplete_string ("location");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 8 && !memcmp (cur_token, "location", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe6daa38b, .id = "InputFileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_file_location (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_real_len)) {
- set_autocomplete_string ("offset");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 6 && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_real_len)) {
- set_autocomplete_string ("limit");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x096a18d5, .id = "upload.File", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_upload_save_big_file_part (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "file_id", cur_token_real_len)) {
- set_autocomplete_string ("file_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "file_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "file_part", cur_token_real_len)) {
- set_autocomplete_string ("file_part");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "file_part", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 16 && !cur_token_quoted && !memcmp (cur_token, "file_total_parts", cur_token_real_len)) {
- set_autocomplete_string ("file_total_parts");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 16 && !memcmp (cur_token, "file_total_parts", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field3) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_real_len)) {
- set_autocomplete_string ("bytes");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_upload_save_file_part (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 7 && !cur_token_quoted && !memcmp (cur_token, "file_id", cur_token_real_len)) {
- set_autocomplete_string ("file_id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !memcmp (cur_token, "file_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_long (field1) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 9 && !cur_token_quoted && !memcmp (cur_token, "file_part", cur_token_real_len)) {
- set_autocomplete_string ("file_part");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 9 && !memcmp (cur_token, "file_part", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len == -3 && cur_token_real_len <= 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_real_len)) {
- set_autocomplete_string ("bytes");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_bare_bytes (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_users_get_full_user (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (autocomplete_type_input_user (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5a89ac5b, .id = "UserFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *autocomplete_function_users_get_users (void) {
- if (cur_token_len == -3 && cur_token_real_len <= 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_real_len)) {
- set_autocomplete_string ("id");
- return 0;
- }
- if (cur_token_len >= 0 && cur_token_len == 2 && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr_autocomplete (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (autocomplete_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-int autocomplete_type_any (struct paramed_type *T) {
- switch (T->type->name) {
- case 0xb8d0afdf: return autocomplete_type_account_days_t_t_l (T);
- case 0x472f5020: return autocomplete_type_bare_account_days_t_t_l (T);
- case 0x9fc5ec4e: return autocomplete_type_audio (T);
- case 0x603a13b1: return autocomplete_type_bare_audio (T);
- case 0x7bf2e6f6: return autocomplete_type_authorization (T);
- case 0x840d1909: return autocomplete_type_bare_authorization (T);
- case 0x250be282: return autocomplete_type_bool (T);
- case 0xdaf41d7d: return autocomplete_type_bare_bool (T);
- case 0x75e7ea6c: return autocomplete_type_bot_command (T);
- case 0x8a181593: return autocomplete_type_bare_bot_command (T);
- case 0xb2e16f93: return autocomplete_type_bot_info (T);
- case 0x4d1e906c: return autocomplete_type_bare_bot_info (T);
- case 0x0ee1379f: return autocomplete_type_bytes (T);
- case 0xf11ec860: return autocomplete_type_bare_bytes (T);
- case 0x7bd865dc: return autocomplete_type_chat (T);
- case 0x84279a23: return autocomplete_type_bare_chat (T);
- case 0x2e02a614: return autocomplete_type_chat_full (T);
- case 0xd1fd59eb: return autocomplete_type_bare_chat_full (T);
- case 0x94f910b1: return autocomplete_type_chat_invite (T);
- case 0x6b06ef4e: return autocomplete_type_bare_chat_invite (T);
- case 0x3631cf4c: return autocomplete_type_chat_located (T);
- case 0xc9ce30b3: return autocomplete_type_bare_chat_located (T);
- case 0xc8d7493e: return autocomplete_type_chat_participant (T);
- case 0x3728b6c1: return autocomplete_type_bare_chat_participant (T);
- case 0x77930f9f: return autocomplete_type_chat_participants (T);
- case 0x886cf060: return autocomplete_type_bare_chat_participants (T);
- case 0x56922676: return autocomplete_type_chat_photo (T);
- case 0xa96dd989: return autocomplete_type_bare_chat_photo (T);
- case 0x6643b654: return autocomplete_type_client_d_h_inner_data (T);
- case 0x99bc49ab: return autocomplete_type_bare_client_d_h_inner_data (T);
- case 0x4e32b894: return autocomplete_type_config (T);
- case 0xb1cd476b: return autocomplete_type_bare_config (T);
- case 0xf911c994: return autocomplete_type_contact (T);
- case 0x06ee366b: return autocomplete_type_bare_contact (T);
- case 0x561bc879: return autocomplete_type_contact_blocked (T);
- case 0xa9e43786: return autocomplete_type_bare_contact_blocked (T);
- case 0xea879f95: return autocomplete_type_contact_found (T);
- case 0x1578606a: return autocomplete_type_bare_contact_found (T);
- case 0x522fbc63: return autocomplete_type_contact_link (T);
- case 0xadd0439c: return autocomplete_type_bare_contact_link (T);
- case 0xd3680c61: return autocomplete_type_contact_status (T);
- case 0x2c97f39e: return autocomplete_type_bare_contact_status (T);
- case 0x3de191a1: return autocomplete_type_contact_suggested (T);
- case 0xc21e6e5e: return autocomplete_type_bare_contact_suggested (T);
- case 0x2b1a62f0: return autocomplete_type_dc_option (T);
- case 0xd4e59d0f: return autocomplete_type_bare_dc_option (T);
- case 0x535b7918: return autocomplete_type_decrypted_message (T);
- case 0xaca486e7: return autocomplete_type_bare_decrypted_message (T);
- case 0x4e0eefde: return autocomplete_type_decrypted_message_action (T);
- case 0xb1f11021: return autocomplete_type_bare_decrypted_message_action (T);
- case 0x1be31789: return autocomplete_type_decrypted_message_layer (T);
- case 0xe41ce876: return autocomplete_type_bare_decrypted_message_layer (T);
- case 0x34e0d674: return autocomplete_type_decrypted_message_media (T);
- case 0xcb1f298b: return autocomplete_type_bare_decrypted_message_media (T);
- case 0xc1dd804a: return autocomplete_type_dialog (T);
- case 0x3e227fb5: return autocomplete_type_bare_dialog (T);
- case 0xae636f24: return autocomplete_type_disabled_feature (T);
- case 0x519c90db: return autocomplete_type_bare_disabled_feature (T);
- case 0x51a73418: return autocomplete_type_document (T);
- case 0xae58cbe7: return autocomplete_type_bare_document (T);
- case 0x97c637a3: return autocomplete_type_document_attribute (T);
- case 0x6839c85c: return autocomplete_type_bare_document_attribute (T);
- case 0x2210c154: return autocomplete_type_double (T);
- case 0xddef3eab: return autocomplete_type_bare_double (T);
- case 0xb1718213: return autocomplete_type_encrypted_chat (T);
- case 0x4e8e7dec: return autocomplete_type_bare_encrypted_chat (T);
- case 0x886fd032: return autocomplete_type_encrypted_file (T);
- case 0x77902fcd: return autocomplete_type_bare_encrypted_file (T);
- case 0xce6b8a1e: return autocomplete_type_encrypted_message (T);
- case 0x319475e1: return autocomplete_type_bare_encrypted_message (T);
- case 0xc4b9f9bb: return autocomplete_type_error (T);
- case 0x3b460644: return autocomplete_type_bare_error (T);
- case 0x95f132d5: return autocomplete_type_exported_chat_invite (T);
- case 0x6a0ecd2a: return autocomplete_type_bare_exported_chat_invite (T);
- case 0x2f8ffb30: return autocomplete_type_file_location (T);
- case 0xd07004cf: return autocomplete_type_bare_file_location (T);
- case 0xf67b4034: return autocomplete_type_geo_chat_message (T);
- case 0x0984bfcb: return autocomplete_type_bare_geo_chat_message (T);
- case 0x315e0a53: return autocomplete_type_geo_point (T);
- case 0xcea1f5ac: return autocomplete_type_bare_geo_point (T);
- case 0xd0028438: return autocomplete_type_imported_contact (T);
- case 0x2ffd7bc7: return autocomplete_type_bare_imported_contact (T);
- case 0x770656a8: return autocomplete_type_input_app_event (T);
- case 0x88f9a957: return autocomplete_type_bare_input_app_event (T);
- case 0xae8e9c7b: return autocomplete_type_input_audio (T);
- case 0x51716384: return autocomplete_type_bare_input_audio (T);
- case 0x3a60776d: return autocomplete_type_input_chat_photo (T);
- case 0xc59f8892: return autocomplete_type_bare_input_chat_photo (T);
- case 0xf392b7f4: return autocomplete_type_input_contact (T);
- case 0x0c6d480b: return autocomplete_type_bare_input_contact (T);
- case 0x6a8963fc: return autocomplete_type_input_document (T);
- case 0x95769c03: return autocomplete_type_bare_input_document (T);
- case 0xf141b5e1: return autocomplete_type_input_encrypted_chat (T);
- case 0x0ebe4a1e: return autocomplete_type_bare_input_encrypted_chat (T);
- case 0x0b5c064f: return autocomplete_type_input_encrypted_file (T);
- case 0xf4a3f9b0: return autocomplete_type_bare_input_encrypted_file (T);
- case 0x0f60f9ca: return autocomplete_type_input_file (T);
- case 0xf09f0635: return autocomplete_type_bare_input_file (T);
- case 0xe6daa38b: return autocomplete_type_input_file_location (T);
- case 0x19255c74: return autocomplete_type_bare_input_file_location (T);
- case 0x74d456fa: return autocomplete_type_input_geo_chat (T);
- case 0x8b2ba905: return autocomplete_type_bare_input_geo_chat (T);
- case 0x17768f1f: return autocomplete_type_input_geo_point (T);
- case 0xe88970e0: return autocomplete_type_bare_input_geo_point (T);
- case 0xb32c91dd: return autocomplete_type_input_media (T);
- case 0x4cd36e22: return autocomplete_type_bare_input_media (T);
- case 0x02b6911b: return autocomplete_type_input_notify_peer (T);
- case 0xfd496ee4: return autocomplete_type_bare_input_notify_peer (T);
- case 0x9e67268d: return autocomplete_type_input_peer (T);
- case 0x6198d972: return autocomplete_type_bare_input_peer (T);
- case 0x185a48ac: return autocomplete_type_input_peer_notify_events (T);
- case 0xe7a5b753: return autocomplete_type_bare_input_peer_notify_events (T);
- case 0x46a2ce98: return autocomplete_type_input_peer_notify_settings (T);
- case 0xb95d3167: return autocomplete_type_bare_input_peer_notify_settings (T);
- case 0xe74279c9: return autocomplete_type_input_photo (T);
- case 0x18bd8636: return autocomplete_type_bare_input_photo (T);
- case 0x7477e321: return autocomplete_type_input_photo_crop (T);
- case 0x8b881cde: return autocomplete_type_bare_input_photo_crop (T);
- case 0x4f96cb18: return autocomplete_type_input_privacy_key (T);
- case 0xb06934e7: return autocomplete_type_bare_input_privacy_key (T);
- case 0x4b815163: return autocomplete_type_input_privacy_rule (T);
- case 0xb47eae9c: return autocomplete_type_bare_input_privacy_rule (T);
- case 0xe44d415c: return autocomplete_type_input_sticker_set (T);
- case 0x1bb2bea3: return autocomplete_type_bare_input_sticker_set (T);
- case 0xadfe0c6a: return autocomplete_type_input_user (T);
- case 0x5201f395: return autocomplete_type_bare_input_user (T);
- case 0xbb5f7a27: return autocomplete_type_input_video (T);
- case 0x44a085d8: return autocomplete_type_bare_input_video (T);
- case 0xa8509bda: return autocomplete_type_int (T);
- case 0x57af6425: return autocomplete_type_bare_int (T);
- case 0x7d36c439: return autocomplete_type_int128 (T);
- case 0x82c93bc6: return autocomplete_type_bare_int128 (T);
- case 0xf2c798b3: return autocomplete_type_int256 (T);
- case 0x0d38674c: return autocomplete_type_bare_int256 (T);
- case 0xa2fa4880: return autocomplete_type_keyboard_button (T);
- case 0x5d05b77f: return autocomplete_type_bare_keyboard_button (T);
- case 0x77608b83: return autocomplete_type_keyboard_button_row (T);
- case 0x889f747c: return autocomplete_type_bare_keyboard_button_row (T);
- case 0x22076cba: return autocomplete_type_long (T);
- case 0xddf89345: return autocomplete_type_bare_long (T);
- case 0x5d652a7f: return autocomplete_type_message (T);
- case 0xa29ad580: return autocomplete_type_bare_message (T);
- case 0x383415fa: return autocomplete_type_message_action (T);
- case 0xc7cbea05: return autocomplete_type_bare_message_action (T);
- case 0x95f2471a: return autocomplete_type_message_media (T);
- case 0x6a0db8e5: return autocomplete_type_bare_message_media (T);
- case 0x80895ae0: return autocomplete_type_messages_filter (T);
- case 0x7f76a51f: return autocomplete_type_bare_messages_filter (T);
- case 0x8e1a1775: return autocomplete_type_nearest_dc (T);
- case 0x71e5e88a: return autocomplete_type_bare_nearest_dc (T);
- case 0x9fcb8237: return autocomplete_type_notify_peer (T);
- case 0x60347dc8: return autocomplete_type_bare_notify_peer (T);
- case 0x56730bcc: return autocomplete_type_null (T);
- case 0xa98cf433: return autocomplete_type_bare_null (T);
- case 0xbfa3de38: return autocomplete_type_p_q_inner_data (T);
- case 0x405c21c7: return autocomplete_type_bare_p_q_inner_data (T);
- case 0x276159d6: return autocomplete_type_peer (T);
- case 0xd89ea629: return autocomplete_type_bare_peer (T);
- case 0xc0c8d13b: return autocomplete_type_peer_notify_events (T);
- case 0x3f372ec4: return autocomplete_type_bare_peer_notify_events (T);
- case 0xfdf894fc: return autocomplete_type_peer_notify_settings (T);
- case 0x02076b03: return autocomplete_type_bare_peer_notify_settings (T);
- case 0xc207550a: return autocomplete_type_photo (T);
- case 0x3df8aaf5: return autocomplete_type_bare_photo (T);
- case 0x900f60dd: return autocomplete_type_photo_size (T);
- case 0x6ff09f22: return autocomplete_type_bare_photo_size (T);
- case 0xbc2eab30: return autocomplete_type_privacy_key (T);
- case 0x43d154cf: return autocomplete_type_bare_privacy_key (T);
- case 0xa8638aec: return autocomplete_type_privacy_rule (T);
- case 0x579c7513: return autocomplete_type_bare_privacy_rule (T);
- case 0xa384b779: return autocomplete_type_received_notify_message (T);
- case 0x5c7b4886: return autocomplete_type_bare_received_notify_message (T);
- case 0x612ca4a9: return autocomplete_type_reply_markup (T);
- case 0x9ed35b56: return autocomplete_type_bare_reply_markup (T);
- case 0x05162463: return autocomplete_type_res_p_q (T);
- case 0xfae9db9c: return autocomplete_type_bare_res_p_q (T);
- case 0x70541c7e: return autocomplete_type_send_message_action (T);
- case 0x8fabe381: return autocomplete_type_bare_send_message_action (T);
- case 0xa9230301: return autocomplete_type_server_d_h_params (T);
- case 0x56dcfcfe: return autocomplete_type_bare_server_d_h_params (T);
- case 0xb5890dba: return autocomplete_type_server_d_h_inner_data (T);
- case 0x4a76f245: return autocomplete_type_bare_server_d_h_inner_data (T);
- case 0xdb8a468f: return autocomplete_type_set_client_d_h_params_answer (T);
- case 0x2475b970: return autocomplete_type_bare_set_client_d_h_params_answer (T);
- case 0x12b299d4: return autocomplete_type_sticker_pack (T);
- case 0xed4d662b: return autocomplete_type_bare_sticker_pack (T);
- case 0xa7a43b17: return autocomplete_type_sticker_set (T);
- case 0x585bc4e8: return autocomplete_type_bare_sticker_set (T);
- case 0xb5286e24: return autocomplete_type_string (T);
- case 0x4ad791db: return autocomplete_type_bare_string (T);
- case 0x2e02b27e: return autocomplete_type_update (T);
- case 0xd1fd4d81: return autocomplete_type_bare_update (T);
- case 0x22499d27: return autocomplete_type_updates (T);
- case 0xddb662d8: return autocomplete_type_bare_updates (T);
- case 0x02e6c0c8: return autocomplete_type_user (T);
- case 0xfd193f37: return autocomplete_type_bare_user (T);
- case 0x5a89ac5b: return autocomplete_type_user_full (T);
- case 0xa57653a4: return autocomplete_type_bare_user_full (T);
- case 0x9a486229: return autocomplete_type_user_profile_photo (T);
- case 0x65b79dd6: return autocomplete_type_bare_user_profile_photo (T);
- case 0x76de9570: return autocomplete_type_user_status (T);
- case 0x89216a8f: return autocomplete_type_bare_user_status (T);
- case 0x1cb5c415: return autocomplete_type_vector (T);
- case 0xe34a3bea: return autocomplete_type_bare_vector (T);
- case 0x1716b174: return autocomplete_type_video (T);
- case 0xe8e94e8b: return autocomplete_type_bare_video (T);
- case 0xafa14973: return autocomplete_type_wall_paper (T);
- case 0x505eb68c: return autocomplete_type_bare_wall_paper (T);
- case 0x8d8c0d41: return autocomplete_type_web_page (T);
- case 0x7273f2be: return autocomplete_type_bare_web_page (T);
- case 0x1250abde: return autocomplete_type_account_authorizations (T);
- case 0xedaf5421: return autocomplete_type_bare_account_authorizations (T);
- case 0xeac2a804: return autocomplete_type_account_password (T);
- case 0x153d57fb: return autocomplete_type_bare_account_password (T);
- case 0xbcfc532c: return autocomplete_type_account_password_input_settings (T);
- case 0x4303acd3: return autocomplete_type_bare_account_password_input_settings (T);
- case 0xb7b72ab3: return autocomplete_type_account_password_settings (T);
- case 0x4848d54c: return autocomplete_type_bare_account_password_settings (T);
- case 0x554abb6f: return autocomplete_type_account_privacy_rules (T);
- case 0xaab54490: return autocomplete_type_bare_account_privacy_rules (T);
- case 0xa4f58c4c: return autocomplete_type_account_sent_change_phone_code (T);
- case 0x5b0a73b3: return autocomplete_type_bare_account_sent_change_phone_code (T);
- case 0xff036af1: return autocomplete_type_auth_authorization (T);
- case 0x00fc950e: return autocomplete_type_bare_auth_authorization (T);
- case 0x811ea28e: return autocomplete_type_auth_checked_phone (T);
- case 0x7ee15d71: return autocomplete_type_bare_auth_checked_phone (T);
- case 0xdf969c2d: return autocomplete_type_auth_exported_authorization (T);
- case 0x206963d2: return autocomplete_type_bare_auth_exported_authorization (T);
- case 0x137948a5: return autocomplete_type_auth_password_recovery (T);
- case 0xec86b75a: return autocomplete_type_bare_auth_password_recovery (T);
- case 0x0cc8bc16: return autocomplete_type_auth_sent_code (T);
- case 0xf33743e9: return autocomplete_type_bare_auth_sent_code (T);
- case 0x0377168f: return autocomplete_type_binlog_encr_key (T);
- case 0xfc88e970: return autocomplete_type_bare_binlog_encr_key (T);
- case 0x66ff03a6: return autocomplete_type_binlog_update (T);
- case 0x9900fc59: return autocomplete_type_bare_binlog_update (T);
- case 0x8c1b8fb4: return autocomplete_type_contacts_blocked (T);
- case 0x73e4704b: return autocomplete_type_bare_contacts_blocked (T);
- case 0xd8c02560: return autocomplete_type_contacts_contacts (T);
- case 0x273fda9f: return autocomplete_type_bare_contacts_contacts (T);
- case 0x0566000e: return autocomplete_type_contacts_found (T);
- case 0xfa99fff1: return autocomplete_type_bare_contacts_found (T);
- case 0xad524315: return autocomplete_type_contacts_imported_contacts (T);
- case 0x52adbcea: return autocomplete_type_bare_contacts_imported_contacts (T);
- case 0x3ace484c: return autocomplete_type_contacts_link (T);
- case 0xc531b7b3: return autocomplete_type_bare_contacts_link (T);
- case 0x5649dcc5: return autocomplete_type_contacts_suggested (T);
- case 0xa9b6233a: return autocomplete_type_bare_contacts_suggested (T);
- case 0x48feb267: return autocomplete_type_geochats_located (T);
- case 0xb7014d98: return autocomplete_type_bare_geochats_located (T);
- case 0x6d0a0e59: return autocomplete_type_geochats_messages (T);
- case 0x92f5f1a6: return autocomplete_type_bare_geochats_messages (T);
- case 0x17b1578b: return autocomplete_type_geochats_stated_message (T);
- case 0xe84ea874: return autocomplete_type_bare_geochats_stated_message (T);
- case 0x4ddd9627: return autocomplete_type_help_app_update (T);
- case 0xb22269d8: return autocomplete_type_bare_help_app_update (T);
- case 0x18cb9f78: return autocomplete_type_help_invite_text (T);
- case 0xe7346087: return autocomplete_type_bare_help_invite_text (T);
- case 0x17c6b5f6: return autocomplete_type_help_support (T);
- case 0xe8394a09: return autocomplete_type_bare_help_support (T);
- case 0xb45c69d1: return autocomplete_type_messages_affected_history (T);
- case 0x4ba3962e: return autocomplete_type_bare_messages_affected_history (T);
- case 0x84d19185: return autocomplete_type_messages_affected_messages (T);
- case 0x7b2e6e7a: return autocomplete_type_bare_messages_affected_messages (T);
- case 0xb485502f: return autocomplete_type_messages_all_stickers (T);
- case 0x4b7aafd0: return autocomplete_type_bare_messages_all_stickers (T);
- case 0xe5d7d19c: return autocomplete_type_messages_chat_full (T);
- case 0x1a282e63: return autocomplete_type_bare_messages_chat_full (T);
- case 0x64ff9fd5: return autocomplete_type_messages_chats (T);
- case 0x9b00602a: return autocomplete_type_bare_messages_chats (T);
- case 0xecc058e8: return autocomplete_type_messages_dh_config (T);
- case 0x133fa717: return autocomplete_type_bare_messages_dh_config (T);
- case 0x645af8b3: return autocomplete_type_messages_dialogs (T);
- case 0x9ba5074c: return autocomplete_type_bare_messages_dialogs (T);
- case 0x3f4e0648: return autocomplete_type_messages_message (T);
- case 0xc0b1f9b7: return autocomplete_type_bare_messages_message (T);
- case 0x8735e464: return autocomplete_type_messages_messages (T);
- case 0x78ca1b9b: return autocomplete_type_bare_messages_messages (T);
- case 0xc29c7607: return autocomplete_type_messages_sent_encrypted_message (T);
- case 0x3d6389f8: return autocomplete_type_bare_messages_sent_encrypted_message (T);
- case 0x799ce190: return autocomplete_type_messages_sent_message (T);
- case 0x86631e6f: return autocomplete_type_bare_messages_sent_message (T);
- case 0xb60a24a6: return autocomplete_type_messages_sticker_set (T);
- case 0x49f5db59: return autocomplete_type_bare_messages_sticker_set (T);
- case 0x7bfa5710: return autocomplete_type_messages_stickers (T);
- case 0x8405a8ef: return autocomplete_type_bare_messages_stickers (T);
- case 0x20212ca8: return autocomplete_type_photos_photo (T);
- case 0xdfded357: return autocomplete_type_bare_photos_photo (T);
- case 0x98cf75f1: return autocomplete_type_photos_photos (T);
- case 0x67308a0e: return autocomplete_type_bare_photos_photos (T);
- case 0x3e2838a8: return autocomplete_type_storage_file_type (T);
- case 0xc1d7c757: return autocomplete_type_bare_storage_file_type (T);
- case 0xf57a2419: return autocomplete_type_updates_difference (T);
- case 0x0a85dbe6: return autocomplete_type_bare_updates_difference (T);
- case 0xa56c2a3e: return autocomplete_type_updates_state (T);
- case 0x5a93d5c1: return autocomplete_type_bare_updates_state (T);
- case 0x096a18d5: return autocomplete_type_upload_file (T);
- case 0xf695e72a: return autocomplete_type_bare_upload_file (T);
- default: return -1; }
-}
-int do_autocomplete_function (const char *text, int text_len, int index, char **R) {
- index ++;
- if (index == 0) { if (!strncmp (text, "account.changePhone", text_len)) { *R = tstrdup ("account.changePhone"); return index; } else { index ++; }}
- if (index == 1) { if (!strncmp (text, "account.checkUsername", text_len)) { *R = tstrdup ("account.checkUsername"); return index; } else { index ++; }}
- if (index == 2) { if (!strncmp (text, "account.deleteAccount", text_len)) { *R = tstrdup ("account.deleteAccount"); return index; } else { index ++; }}
- if (index == 3) { if (!strncmp (text, "account.getAccountTTL", text_len)) { *R = tstrdup ("account.getAccountTTL"); return index; } else { index ++; }}
- if (index == 4) { if (!strncmp (text, "account.getAuthorizations", text_len)) { *R = tstrdup ("account.getAuthorizations"); return index; } else { index ++; }}
- if (index == 5) { if (!strncmp (text, "account.getNotifySettings", text_len)) { *R = tstrdup ("account.getNotifySettings"); return index; } else { index ++; }}
- if (index == 6) { if (!strncmp (text, "account.getPassword", text_len)) { *R = tstrdup ("account.getPassword"); return index; } else { index ++; }}
- if (index == 7) { if (!strncmp (text, "account.getPasswordSettings", text_len)) { *R = tstrdup ("account.getPasswordSettings"); return index; } else { index ++; }}
- if (index == 8) { if (!strncmp (text, "account.getPrivacy", text_len)) { *R = tstrdup ("account.getPrivacy"); return index; } else { index ++; }}
- if (index == 9) { if (!strncmp (text, "account.getWallPapers", text_len)) { *R = tstrdup ("account.getWallPapers"); return index; } else { index ++; }}
- if (index == 10) { if (!strncmp (text, "account.registerDevice", text_len)) { *R = tstrdup ("account.registerDevice"); return index; } else { index ++; }}
- if (index == 11) { if (!strncmp (text, "account.resetAuthorization", text_len)) { *R = tstrdup ("account.resetAuthorization"); return index; } else { index ++; }}
- if (index == 12) { if (!strncmp (text, "account.resetNotifySettings", text_len)) { *R = tstrdup ("account.resetNotifySettings"); return index; } else { index ++; }}
- if (index == 13) { if (!strncmp (text, "account.sendChangePhoneCode", text_len)) { *R = tstrdup ("account.sendChangePhoneCode"); return index; } else { index ++; }}
- if (index == 14) { if (!strncmp (text, "account.setAccountTTL", text_len)) { *R = tstrdup ("account.setAccountTTL"); return index; } else { index ++; }}
- if (index == 15) { if (!strncmp (text, "account.setPrivacy", text_len)) { *R = tstrdup ("account.setPrivacy"); return index; } else { index ++; }}
- if (index == 16) { if (!strncmp (text, "account.unregisterDevice", text_len)) { *R = tstrdup ("account.unregisterDevice"); return index; } else { index ++; }}
- if (index == 17) { if (!strncmp (text, "account.updateDeviceLocked", text_len)) { *R = tstrdup ("account.updateDeviceLocked"); return index; } else { index ++; }}
- if (index == 18) { if (!strncmp (text, "account.updateNotifySettings", text_len)) { *R = tstrdup ("account.updateNotifySettings"); return index; } else { index ++; }}
- if (index == 19) { if (!strncmp (text, "account.updatePasswordSettings", text_len)) { *R = tstrdup ("account.updatePasswordSettings"); return index; } else { index ++; }}
- if (index == 20) { if (!strncmp (text, "account.updateProfile", text_len)) { *R = tstrdup ("account.updateProfile"); return index; } else { index ++; }}
- if (index == 21) { if (!strncmp (text, "account.updateStatus", text_len)) { *R = tstrdup ("account.updateStatus"); return index; } else { index ++; }}
- if (index == 22) { if (!strncmp (text, "account.updateUsername", text_len)) { *R = tstrdup ("account.updateUsername"); return index; } else { index ++; }}
- if (index == 23) { if (!strncmp (text, "auth.bindTempAuthKey", text_len)) { *R = tstrdup ("auth.bindTempAuthKey"); return index; } else { index ++; }}
- if (index == 24) { if (!strncmp (text, "auth.checkPassword", text_len)) { *R = tstrdup ("auth.checkPassword"); return index; } else { index ++; }}
- if (index == 25) { if (!strncmp (text, "auth.checkPhone", text_len)) { *R = tstrdup ("auth.checkPhone"); return index; } else { index ++; }}
- if (index == 26) { if (!strncmp (text, "auth.exportAuthorization", text_len)) { *R = tstrdup ("auth.exportAuthorization"); return index; } else { index ++; }}
- if (index == 27) { if (!strncmp (text, "auth.importAuthorization", text_len)) { *R = tstrdup ("auth.importAuthorization"); return index; } else { index ++; }}
- if (index == 28) { if (!strncmp (text, "auth.importBotAuthorization", text_len)) { *R = tstrdup ("auth.importBotAuthorization"); return index; } else { index ++; }}
- if (index == 29) { if (!strncmp (text, "auth.logOut", text_len)) { *R = tstrdup ("auth.logOut"); return index; } else { index ++; }}
- if (index == 30) { if (!strncmp (text, "auth.recoverPassword", text_len)) { *R = tstrdup ("auth.recoverPassword"); return index; } else { index ++; }}
- if (index == 31) { if (!strncmp (text, "auth.requestPasswordRecovery", text_len)) { *R = tstrdup ("auth.requestPasswordRecovery"); return index; } else { index ++; }}
- if (index == 32) { if (!strncmp (text, "auth.resetAuthorizations", text_len)) { *R = tstrdup ("auth.resetAuthorizations"); return index; } else { index ++; }}
- if (index == 33) { if (!strncmp (text, "auth.sendCall", text_len)) { *R = tstrdup ("auth.sendCall"); return index; } else { index ++; }}
- if (index == 34) { if (!strncmp (text, "auth.sendCode", text_len)) { *R = tstrdup ("auth.sendCode"); return index; } else { index ++; }}
- if (index == 35) { if (!strncmp (text, "auth.sendInvites", text_len)) { *R = tstrdup ("auth.sendInvites"); return index; } else { index ++; }}
- if (index == 36) { if (!strncmp (text, "auth.sendSms", text_len)) { *R = tstrdup ("auth.sendSms"); return index; } else { index ++; }}
- if (index == 37) { if (!strncmp (text, "auth.signIn", text_len)) { *R = tstrdup ("auth.signIn"); return index; } else { index ++; }}
- if (index == 38) { if (!strncmp (text, "auth.signUp", text_len)) { *R = tstrdup ("auth.signUp"); return index; } else { index ++; }}
- if (index == 39) { if (!strncmp (text, "contacts.block", text_len)) { *R = tstrdup ("contacts.block"); return index; } else { index ++; }}
- if (index == 40) { if (!strncmp (text, "contacts.deleteContact", text_len)) { *R = tstrdup ("contacts.deleteContact"); return index; } else { index ++; }}
- if (index == 41) { if (!strncmp (text, "contacts.deleteContacts", text_len)) { *R = tstrdup ("contacts.deleteContacts"); return index; } else { index ++; }}
- if (index == 42) { if (!strncmp (text, "contacts.exportCard", text_len)) { *R = tstrdup ("contacts.exportCard"); return index; } else { index ++; }}
- if (index == 43) { if (!strncmp (text, "contacts.getBlocked", text_len)) { *R = tstrdup ("contacts.getBlocked"); return index; } else { index ++; }}
- if (index == 44) { if (!strncmp (text, "contacts.getContacts", text_len)) { *R = tstrdup ("contacts.getContacts"); return index; } else { index ++; }}
- if (index == 45) { if (!strncmp (text, "contacts.getStatuses", text_len)) { *R = tstrdup ("contacts.getStatuses"); return index; } else { index ++; }}
- if (index == 46) { if (!strncmp (text, "contacts.getSuggested", text_len)) { *R = tstrdup ("contacts.getSuggested"); return index; } else { index ++; }}
- if (index == 47) { if (!strncmp (text, "contacts.importCard", text_len)) { *R = tstrdup ("contacts.importCard"); return index; } else { index ++; }}
- if (index == 48) { if (!strncmp (text, "contacts.importContacts", text_len)) { *R = tstrdup ("contacts.importContacts"); return index; } else { index ++; }}
- if (index == 49) { if (!strncmp (text, "contacts.resolveUsername", text_len)) { *R = tstrdup ("contacts.resolveUsername"); return index; } else { index ++; }}
- if (index == 50) { if (!strncmp (text, "contacts.search", text_len)) { *R = tstrdup ("contacts.search"); return index; } else { index ++; }}
- if (index == 51) { if (!strncmp (text, "contacts.unblock", text_len)) { *R = tstrdup ("contacts.unblock"); return index; } else { index ++; }}
- if (index == 52) { if (!strncmp (text, "geochats.checkin", text_len)) { *R = tstrdup ("geochats.checkin"); return index; } else { index ++; }}
- if (index == 53) { if (!strncmp (text, "geochats.createGeoChat", text_len)) { *R = tstrdup ("geochats.createGeoChat"); return index; } else { index ++; }}
- if (index == 54) { if (!strncmp (text, "geochats.editChatPhoto", text_len)) { *R = tstrdup ("geochats.editChatPhoto"); return index; } else { index ++; }}
- if (index == 55) { if (!strncmp (text, "geochats.editChatTitle", text_len)) { *R = tstrdup ("geochats.editChatTitle"); return index; } else { index ++; }}
- if (index == 56) { if (!strncmp (text, "geochats.getFullChat", text_len)) { *R = tstrdup ("geochats.getFullChat"); return index; } else { index ++; }}
- if (index == 57) { if (!strncmp (text, "geochats.getHistory", text_len)) { *R = tstrdup ("geochats.getHistory"); return index; } else { index ++; }}
- if (index == 58) { if (!strncmp (text, "geochats.getLocated", text_len)) { *R = tstrdup ("geochats.getLocated"); return index; } else { index ++; }}
- if (index == 59) { if (!strncmp (text, "geochats.getRecents", text_len)) { *R = tstrdup ("geochats.getRecents"); return index; } else { index ++; }}
- if (index == 60) { if (!strncmp (text, "geochats.search", text_len)) { *R = tstrdup ("geochats.search"); return index; } else { index ++; }}
- if (index == 61) { if (!strncmp (text, "geochats.sendMedia", text_len)) { *R = tstrdup ("geochats.sendMedia"); return index; } else { index ++; }}
- if (index == 62) { if (!strncmp (text, "geochats.sendMessage", text_len)) { *R = tstrdup ("geochats.sendMessage"); return index; } else { index ++; }}
- if (index == 63) { if (!strncmp (text, "geochats.setTyping", text_len)) { *R = tstrdup ("geochats.setTyping"); return index; } else { index ++; }}
- if (index == 64) { if (!strncmp (text, "help.getAppUpdate", text_len)) { *R = tstrdup ("help.getAppUpdate"); return index; } else { index ++; }}
- if (index == 65) { if (!strncmp (text, "help.getConfig", text_len)) { *R = tstrdup ("help.getConfig"); return index; } else { index ++; }}
- if (index == 66) { if (!strncmp (text, "help.getInviteText", text_len)) { *R = tstrdup ("help.getInviteText"); return index; } else { index ++; }}
- if (index == 67) { if (!strncmp (text, "help.getNearestDc", text_len)) { *R = tstrdup ("help.getNearestDc"); return index; } else { index ++; }}
- if (index == 68) { if (!strncmp (text, "help.getSupport", text_len)) { *R = tstrdup ("help.getSupport"); return index; } else { index ++; }}
- if (index == 69) { if (!strncmp (text, "help.saveAppLog", text_len)) { *R = tstrdup ("help.saveAppLog"); return index; } else { index ++; }}
- if (index == 70) { if (!strncmp (text, "initConnection", text_len)) { *R = tstrdup ("initConnection"); return index; } else { index ++; }}
- if (index == 71) { if (!strncmp (text, "invokeAfterMsg", text_len)) { *R = tstrdup ("invokeAfterMsg"); return index; } else { index ++; }}
- if (index == 72) { if (!strncmp (text, "invokeAfterMsgs", text_len)) { *R = tstrdup ("invokeAfterMsgs"); return index; } else { index ++; }}
- if (index == 73) { if (!strncmp (text, "invokeWithLayer", text_len)) { *R = tstrdup ("invokeWithLayer"); return index; } else { index ++; }}
- if (index == 74) { if (!strncmp (text, "invokeWithoutUpdates", text_len)) { *R = tstrdup ("invokeWithoutUpdates"); return index; } else { index ++; }}
- if (index == 75) { if (!strncmp (text, "messages.acceptEncryption", text_len)) { *R = tstrdup ("messages.acceptEncryption"); return index; } else { index ++; }}
- if (index == 76) { if (!strncmp (text, "messages.addChatUser", text_len)) { *R = tstrdup ("messages.addChatUser"); return index; } else { index ++; }}
- if (index == 77) { if (!strncmp (text, "messages.checkChatInvite", text_len)) { *R = tstrdup ("messages.checkChatInvite"); return index; } else { index ++; }}
- if (index == 78) { if (!strncmp (text, "messages.createChat", text_len)) { *R = tstrdup ("messages.createChat"); return index; } else { index ++; }}
- if (index == 79) { if (!strncmp (text, "messages.deleteChatUser", text_len)) { *R = tstrdup ("messages.deleteChatUser"); return index; } else { index ++; }}
- if (index == 80) { if (!strncmp (text, "messages.deleteHistory", text_len)) { *R = tstrdup ("messages.deleteHistory"); return index; } else { index ++; }}
- if (index == 81) { if (!strncmp (text, "messages.deleteMessages", text_len)) { *R = tstrdup ("messages.deleteMessages"); return index; } else { index ++; }}
- if (index == 82) { if (!strncmp (text, "messages.discardEncryption", text_len)) { *R = tstrdup ("messages.discardEncryption"); return index; } else { index ++; }}
- if (index == 83) { if (!strncmp (text, "messages.editChatPhoto", text_len)) { *R = tstrdup ("messages.editChatPhoto"); return index; } else { index ++; }}
- if (index == 84) { if (!strncmp (text, "messages.editChatTitle", text_len)) { *R = tstrdup ("messages.editChatTitle"); return index; } else { index ++; }}
- if (index == 85) { if (!strncmp (text, "messages.exportChatInvite", text_len)) { *R = tstrdup ("messages.exportChatInvite"); return index; } else { index ++; }}
- if (index == 86) { if (!strncmp (text, "messages.forwardMessage", text_len)) { *R = tstrdup ("messages.forwardMessage"); return index; } else { index ++; }}
- if (index == 87) { if (!strncmp (text, "messages.forwardMessages", text_len)) { *R = tstrdup ("messages.forwardMessages"); return index; } else { index ++; }}
- if (index == 88) { if (!strncmp (text, "messages.getAllStickers", text_len)) { *R = tstrdup ("messages.getAllStickers"); return index; } else { index ++; }}
- if (index == 89) { if (!strncmp (text, "messages.getChats", text_len)) { *R = tstrdup ("messages.getChats"); return index; } else { index ++; }}
- if (index == 90) { if (!strncmp (text, "messages.getDhConfig", text_len)) { *R = tstrdup ("messages.getDhConfig"); return index; } else { index ++; }}
- if (index == 91) { if (!strncmp (text, "messages.getDialogs", text_len)) { *R = tstrdup ("messages.getDialogs"); return index; } else { index ++; }}
- if (index == 92) { if (!strncmp (text, "messages.getFullChat", text_len)) { *R = tstrdup ("messages.getFullChat"); return index; } else { index ++; }}
- if (index == 93) { if (!strncmp (text, "messages.getHistory", text_len)) { *R = tstrdup ("messages.getHistory"); return index; } else { index ++; }}
- if (index == 94) { if (!strncmp (text, "messages.getMessages", text_len)) { *R = tstrdup ("messages.getMessages"); return index; } else { index ++; }}
- if (index == 95) { if (!strncmp (text, "messages.getStickerSet", text_len)) { *R = tstrdup ("messages.getStickerSet"); return index; } else { index ++; }}
- if (index == 96) { if (!strncmp (text, "messages.getStickers", text_len)) { *R = tstrdup ("messages.getStickers"); return index; } else { index ++; }}
- if (index == 97) { if (!strncmp (text, "messages.getWebPagePreview", text_len)) { *R = tstrdup ("messages.getWebPagePreview"); return index; } else { index ++; }}
- if (index == 98) { if (!strncmp (text, "messages.importChatInvite", text_len)) { *R = tstrdup ("messages.importChatInvite"); return index; } else { index ++; }}
- if (index == 99) { if (!strncmp (text, "messages.installStickerSet", text_len)) { *R = tstrdup ("messages.installStickerSet"); return index; } else { index ++; }}
- if (index == 100) { if (!strncmp (text, "messages.readEncryptedHistory", text_len)) { *R = tstrdup ("messages.readEncryptedHistory"); return index; } else { index ++; }}
- if (index == 101) { if (!strncmp (text, "messages.readHistory", text_len)) { *R = tstrdup ("messages.readHistory"); return index; } else { index ++; }}
- if (index == 102) { if (!strncmp (text, "messages.readMessageContents", text_len)) { *R = tstrdup ("messages.readMessageContents"); return index; } else { index ++; }}
- if (index == 103) { if (!strncmp (text, "messages.receivedMessages", text_len)) { *R = tstrdup ("messages.receivedMessages"); return index; } else { index ++; }}
- if (index == 104) { if (!strncmp (text, "messages.receivedQueue", text_len)) { *R = tstrdup ("messages.receivedQueue"); return index; } else { index ++; }}
- if (index == 105) { if (!strncmp (text, "messages.requestEncryption", text_len)) { *R = tstrdup ("messages.requestEncryption"); return index; } else { index ++; }}
- if (index == 106) { if (!strncmp (text, "messages.search", text_len)) { *R = tstrdup ("messages.search"); return index; } else { index ++; }}
- if (index == 107) { if (!strncmp (text, "messages.sendBroadcast", text_len)) { *R = tstrdup ("messages.sendBroadcast"); return index; } else { index ++; }}
- if (index == 108) { if (!strncmp (text, "messages.sendEncrypted", text_len)) { *R = tstrdup ("messages.sendEncrypted"); return index; } else { index ++; }}
- if (index == 109) { if (!strncmp (text, "messages.sendEncryptedFile", text_len)) { *R = tstrdup ("messages.sendEncryptedFile"); return index; } else { index ++; }}
- if (index == 110) { if (!strncmp (text, "messages.sendEncryptedService", text_len)) { *R = tstrdup ("messages.sendEncryptedService"); return index; } else { index ++; }}
- if (index == 111) { if (!strncmp (text, "messages.sendMedia", text_len)) { *R = tstrdup ("messages.sendMedia"); return index; } else { index ++; }}
- if (index == 112) { if (!strncmp (text, "messages.sendMessage", text_len)) { *R = tstrdup ("messages.sendMessage"); return index; } else { index ++; }}
- if (index == 113) { if (!strncmp (text, "messages.setEncryptedTyping", text_len)) { *R = tstrdup ("messages.setEncryptedTyping"); return index; } else { index ++; }}
- if (index == 114) { if (!strncmp (text, "messages.setTyping", text_len)) { *R = tstrdup ("messages.setTyping"); return index; } else { index ++; }}
- if (index == 115) { if (!strncmp (text, "messages.startBot", text_len)) { *R = tstrdup ("messages.startBot"); return index; } else { index ++; }}
- if (index == 116) { if (!strncmp (text, "messages.uninstallStickerSet", text_len)) { *R = tstrdup ("messages.uninstallStickerSet"); return index; } else { index ++; }}
- if (index == 117) { if (!strncmp (text, "photos.deletePhotos", text_len)) { *R = tstrdup ("photos.deletePhotos"); return index; } else { index ++; }}
- if (index == 118) { if (!strncmp (text, "photos.getUserPhotos", text_len)) { *R = tstrdup ("photos.getUserPhotos"); return index; } else { index ++; }}
- if (index == 119) { if (!strncmp (text, "photos.updateProfilePhoto", text_len)) { *R = tstrdup ("photos.updateProfilePhoto"); return index; } else { index ++; }}
- if (index == 120) { if (!strncmp (text, "photos.uploadProfilePhoto", text_len)) { *R = tstrdup ("photos.uploadProfilePhoto"); return index; } else { index ++; }}
- if (index == 121) { if (!strncmp (text, "req_DH_params", text_len)) { *R = tstrdup ("req_DH_params"); return index; } else { index ++; }}
- if (index == 122) { if (!strncmp (text, "req_pq", text_len)) { *R = tstrdup ("req_pq"); return index; } else { index ++; }}
- if (index == 123) { if (!strncmp (text, "set_client_DH_params", text_len)) { *R = tstrdup ("set_client_DH_params"); return index; } else { index ++; }}
- if (index == 124) { if (!strncmp (text, "updates.getDifference", text_len)) { *R = tstrdup ("updates.getDifference"); return index; } else { index ++; }}
- if (index == 125) { if (!strncmp (text, "updates.getState", text_len)) { *R = tstrdup ("updates.getState"); return index; } else { index ++; }}
- if (index == 126) { if (!strncmp (text, "upload.getFile", text_len)) { *R = tstrdup ("upload.getFile"); return index; } else { index ++; }}
- if (index == 127) { if (!strncmp (text, "upload.saveBigFilePart", text_len)) { *R = tstrdup ("upload.saveBigFilePart"); return index; } else { index ++; }}
- if (index == 128) { if (!strncmp (text, "upload.saveFilePart", text_len)) { *R = tstrdup ("upload.saveFilePart"); return index; } else { index ++; }}
- if (index == 129) { if (!strncmp (text, "users.getFullUser", text_len)) { *R = tstrdup ("users.getFullUser"); return index; } else { index ++; }}
- if (index == 130) { if (!strncmp (text, "users.getUsers", text_len)) { *R = tstrdup ("users.getUsers"); return index; } else { index ++; }}
- *R = 0;
- return 0;
-}
-struct paramed_type *autocomplete_function_any (void) {
- expect_token_ptr_autocomplete ("(", 1);
- if (cur_token_len == -3) { set_autocomplete_type (do_autocomplete_function); }
- if (cur_token_len < 0) { return 0; }
- if (cur_token_len == 19 && !memcmp (cur_token, "account.changePhone", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_change_phone ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "account.checkUsername", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_check_username ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "account.deleteAccount", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_delete_account ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "account.getAccountTTL", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_get_account_t_t_l ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "account.getAuthorizations", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_get_authorizations ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "account.getNotifySettings", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_get_notify_settings ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "account.getPassword", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_get_password ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "account.getPasswordSettings", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_get_password_settings ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "account.getPrivacy", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_get_privacy ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "account.getWallPapers", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_get_wall_papers ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "account.registerDevice", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_register_device ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "account.resetAuthorization", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_reset_authorization ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "account.resetNotifySettings", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_reset_notify_settings ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "account.sendChangePhoneCode", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_send_change_phone_code ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "account.setAccountTTL", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_set_account_t_t_l ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "account.setPrivacy", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_set_privacy ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "account.unregisterDevice", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_unregister_device ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "account.updateDeviceLocked", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_update_device_locked ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "account.updateNotifySettings", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_update_notify_settings ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "account.updatePasswordSettings", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_update_password_settings ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "account.updateProfile", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_update_profile ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "account.updateStatus", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_update_status ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "account.updateUsername", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_account_update_username ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "auth.bindTempAuthKey", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_bind_temp_auth_key ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "auth.checkPassword", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_check_password ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "auth.checkPhone", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_check_phone ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "auth.exportAuthorization", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_export_authorization ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "auth.importAuthorization", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_import_authorization ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "auth.importBotAuthorization", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_import_bot_authorization ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "auth.logOut", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_log_out ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "auth.recoverPassword", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_recover_password ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "auth.requestPasswordRecovery", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_request_password_recovery ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "auth.resetAuthorizations", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_reset_authorizations ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "auth.sendCall", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_send_call ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "auth.sendCode", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_send_code ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "auth.sendInvites", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_send_invites ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "auth.sendSms", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_send_sms ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "auth.signIn", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_sign_in ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "auth.signUp", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_auth_sign_up ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "contacts.block", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_block ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "contacts.deleteContact", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_delete_contact ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "contacts.deleteContacts", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_delete_contacts ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "contacts.exportCard", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_export_card ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "contacts.getBlocked", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_get_blocked ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "contacts.getContacts", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_get_contacts ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "contacts.getStatuses", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_get_statuses ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "contacts.getSuggested", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_get_suggested ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "contacts.importCard", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_import_card ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "contacts.importContacts", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_import_contacts ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "contacts.resolveUsername", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_resolve_username ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "contacts.search", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_search ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "contacts.unblock", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_contacts_unblock ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "geochats.checkin", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_geochats_checkin ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.createGeoChat", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_geochats_create_geo_chat ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.editChatPhoto", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_geochats_edit_chat_photo ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.editChatTitle", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_geochats_edit_chat_title ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "geochats.getFullChat", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_geochats_get_full_chat ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "geochats.getHistory", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_geochats_get_history ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "geochats.getLocated", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_geochats_get_located ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "geochats.getRecents", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_geochats_get_recents ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "geochats.search", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_geochats_search ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "geochats.sendMedia", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_geochats_send_media ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "geochats.sendMessage", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_geochats_send_message ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "geochats.setTyping", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_geochats_set_typing ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "help.getAppUpdate", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_help_get_app_update ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "help.getConfig", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_help_get_config ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "help.getInviteText", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_help_get_invite_text ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "help.getNearestDc", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_help_get_nearest_dc ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "help.getSupport", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_help_get_support ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "help.saveAppLog", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_help_save_app_log ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "initConnection", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_init_connection ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "invokeAfterMsg", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_invoke_after_msg ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "invokeAfterMsgs", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_invoke_after_msgs ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "invokeWithLayer", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_invoke_with_layer ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "invokeWithoutUpdates", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_invoke_without_updates ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "messages.acceptEncryption", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_accept_encryption ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.addChatUser", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_add_chat_user ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "messages.checkChatInvite", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_check_chat_invite ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messages.createChat", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_create_chat ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messages.deleteChatUser", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_delete_chat_user ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.deleteHistory", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_delete_history ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messages.deleteMessages", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_delete_messages ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.discardEncryption", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_discard_encryption ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.editChatPhoto", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_edit_chat_photo ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.editChatTitle", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_edit_chat_title ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "messages.exportChatInvite", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_export_chat_invite ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messages.forwardMessage", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_forward_message ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "messages.forwardMessages", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_forward_messages ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messages.getAllStickers", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_get_all_stickers ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.getChats", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_get_chats ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.getDhConfig", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_get_dh_config ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messages.getDialogs", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_get_dialogs ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.getFullChat", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_get_full_chat ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messages.getHistory", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_get_history ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.getMessages", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_get_messages ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.getStickerSet", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_get_sticker_set ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.getStickers", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_get_stickers ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.getWebPagePreview", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_get_web_page_preview ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "messages.importChatInvite", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_import_chat_invite ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.installStickerSet", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_install_sticker_set ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "messages.readEncryptedHistory", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_read_encrypted_history ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.readHistory", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_read_history ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "messages.readMessageContents", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_read_message_contents ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "messages.receivedMessages", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_received_messages ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.receivedQueue", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_received_queue ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.requestEncryption", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_request_encryption ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "messages.search", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_search ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.sendBroadcast", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_send_broadcast ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.sendEncrypted", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_send_encrypted ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.sendEncryptedFile", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_send_encrypted_file ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "messages.sendEncryptedService", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_send_encrypted_service ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "messages.sendMedia", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_send_media ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.sendMessage", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_send_message ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "messages.setEncryptedTyping", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_set_encrypted_typing ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "messages.setTyping", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_set_typing ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.startBot", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_start_bot ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "messages.uninstallStickerSet", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_messages_uninstall_sticker_set ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "photos.deletePhotos", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_photos_delete_photos ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "photos.getUserPhotos", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_photos_get_user_photos ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "photos.updateProfilePhoto", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_photos_update_profile_photo ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "photos.uploadProfilePhoto", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_photos_upload_profile_photo ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "req_DH_params", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_req_d_h_params ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 6 && !memcmp (cur_token, "req_pq", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_req_pq ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "set_client_DH_params", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_set_client_d_h_params ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "updates.getDifference", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_updates_get_difference ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updates.getState", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_updates_get_state ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "upload.getFile", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_upload_get_file ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "upload.saveBigFilePart", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_upload_save_big_file_part ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "upload.saveFilePart", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_upload_save_file_part ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "users.getFullUser", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_users_get_full_user ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "users.getUsers", cur_token_len)) {
- local_next_token ();
- struct paramed_type *P = autocomplete_function_users_get_users ();
- if (!P) { return 0; }
- expect_token_ptr_autocomplete (")", 1);
- return P;
- }
- return 0;
-}
diff --git a/protocols/Telegram/src/tgl/auto/auto-autocomplete.h b/protocols/Telegram/src/tgl/auto/auto-autocomplete.h
deleted file mode 100644
index 1e58313e55..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-autocomplete.h
+++ /dev/null
@@ -1,865 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#else
-#include "auto.h"
-#endif
-#include <assert.h>
-int tglf_extf_autocomplete (struct tgl_state *TLS, const char *text, int text_len, int index, char **R, char *data, int data_len);
-int autocomplete_constructor_account_days_t_t_l (struct paramed_type *T);
-int autocomplete_constructor_audio_empty (struct paramed_type *T);
-int autocomplete_constructor_audio (struct paramed_type *T);
-int autocomplete_constructor_authorization (struct paramed_type *T);
-int autocomplete_constructor_bool_false (struct paramed_type *T);
-int autocomplete_constructor_bool_true (struct paramed_type *T);
-int autocomplete_constructor_bot_command (struct paramed_type *T);
-int autocomplete_constructor_bot_command_old (struct paramed_type *T);
-int autocomplete_constructor_bot_info_empty (struct paramed_type *T);
-int autocomplete_constructor_bot_info (struct paramed_type *T);
-int autocomplete_constructor_bytes (struct paramed_type *T);
-int autocomplete_constructor_chat_empty (struct paramed_type *T);
-int autocomplete_constructor_chat (struct paramed_type *T);
-int autocomplete_constructor_chat_forbidden (struct paramed_type *T);
-int autocomplete_constructor_geo_chat (struct paramed_type *T);
-int autocomplete_constructor_chat_full (struct paramed_type *T);
-int autocomplete_constructor_chat_invite_already (struct paramed_type *T);
-int autocomplete_constructor_chat_invite (struct paramed_type *T);
-int autocomplete_constructor_chat_located (struct paramed_type *T);
-int autocomplete_constructor_chat_participant (struct paramed_type *T);
-int autocomplete_constructor_chat_participants_forbidden (struct paramed_type *T);
-int autocomplete_constructor_chat_participants (struct paramed_type *T);
-int autocomplete_constructor_chat_photo_empty (struct paramed_type *T);
-int autocomplete_constructor_chat_photo (struct paramed_type *T);
-int autocomplete_constructor_client_d_h_inner_data (struct paramed_type *T);
-int autocomplete_constructor_config (struct paramed_type *T);
-int autocomplete_constructor_contact (struct paramed_type *T);
-int autocomplete_constructor_contact_blocked (struct paramed_type *T);
-int autocomplete_constructor_contact_found (struct paramed_type *T);
-int autocomplete_constructor_contact_link_unknown (struct paramed_type *T);
-int autocomplete_constructor_contact_link_none (struct paramed_type *T);
-int autocomplete_constructor_contact_link_has_phone (struct paramed_type *T);
-int autocomplete_constructor_contact_link_contact (struct paramed_type *T);
-int autocomplete_constructor_contact_status (struct paramed_type *T);
-int autocomplete_constructor_contact_suggested (struct paramed_type *T);
-int autocomplete_constructor_dc_option_l28 (struct paramed_type *T);
-int autocomplete_constructor_dc_option (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_service (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_set_message_t_t_l (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_read_messages (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_delete_messages (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_screenshot_messages (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_flush_history (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_resend (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_notify_layer (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_typing (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_request_key (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_accept_key (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_abort_key (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_commit_key (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_action_noop (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_layer (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_media_empty (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_media_photo (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_media_geo_point (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_media_contact (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_media_document (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_media_video (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_media_audio (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_media_external_document (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_media_video_l12 (struct paramed_type *T);
-int autocomplete_constructor_decrypted_message_media_audio_l12 (struct paramed_type *T);
-int autocomplete_constructor_dialog (struct paramed_type *T);
-int autocomplete_constructor_disabled_feature (struct paramed_type *T);
-int autocomplete_constructor_document_empty (struct paramed_type *T);
-int autocomplete_constructor_document (struct paramed_type *T);
-int autocomplete_constructor_document_l19 (struct paramed_type *T);
-int autocomplete_constructor_document_attribute_image_size (struct paramed_type *T);
-int autocomplete_constructor_document_attribute_animated (struct paramed_type *T);
-int autocomplete_constructor_document_attribute_sticker_l28 (struct paramed_type *T);
-int autocomplete_constructor_document_attribute_sticker (struct paramed_type *T);
-int autocomplete_constructor_document_attribute_video (struct paramed_type *T);
-int autocomplete_constructor_document_attribute_audio (struct paramed_type *T);
-int autocomplete_constructor_document_attribute_filename (struct paramed_type *T);
-int autocomplete_constructor_double (struct paramed_type *T);
-int autocomplete_constructor_encrypted_chat_empty (struct paramed_type *T);
-int autocomplete_constructor_encrypted_chat_waiting (struct paramed_type *T);
-int autocomplete_constructor_encrypted_chat_requested (struct paramed_type *T);
-int autocomplete_constructor_encrypted_chat (struct paramed_type *T);
-int autocomplete_constructor_encrypted_chat_discarded (struct paramed_type *T);
-int autocomplete_constructor_encrypted_file_empty (struct paramed_type *T);
-int autocomplete_constructor_encrypted_file (struct paramed_type *T);
-int autocomplete_constructor_encrypted_message (struct paramed_type *T);
-int autocomplete_constructor_encrypted_message_service (struct paramed_type *T);
-int autocomplete_constructor_error (struct paramed_type *T);
-int autocomplete_constructor_chat_invite_empty (struct paramed_type *T);
-int autocomplete_constructor_chat_invite_exported (struct paramed_type *T);
-int autocomplete_constructor_file_location_unavailable (struct paramed_type *T);
-int autocomplete_constructor_file_location (struct paramed_type *T);
-int autocomplete_constructor_geo_chat_message_empty (struct paramed_type *T);
-int autocomplete_constructor_geo_chat_message (struct paramed_type *T);
-int autocomplete_constructor_geo_chat_message_service (struct paramed_type *T);
-int autocomplete_constructor_geo_point_empty (struct paramed_type *T);
-int autocomplete_constructor_geo_point (struct paramed_type *T);
-int autocomplete_constructor_imported_contact (struct paramed_type *T);
-int autocomplete_constructor_input_app_event (struct paramed_type *T);
-int autocomplete_constructor_input_audio_empty (struct paramed_type *T);
-int autocomplete_constructor_input_audio (struct paramed_type *T);
-int autocomplete_constructor_input_chat_photo_empty (struct paramed_type *T);
-int autocomplete_constructor_input_chat_uploaded_photo (struct paramed_type *T);
-int autocomplete_constructor_input_chat_photo (struct paramed_type *T);
-int autocomplete_constructor_input_phone_contact (struct paramed_type *T);
-int autocomplete_constructor_input_document_empty (struct paramed_type *T);
-int autocomplete_constructor_input_document (struct paramed_type *T);
-int autocomplete_constructor_input_encrypted_chat (struct paramed_type *T);
-int autocomplete_constructor_input_encrypted_file_empty (struct paramed_type *T);
-int autocomplete_constructor_input_encrypted_file_uploaded (struct paramed_type *T);
-int autocomplete_constructor_input_encrypted_file (struct paramed_type *T);
-int autocomplete_constructor_input_encrypted_file_big_uploaded (struct paramed_type *T);
-int autocomplete_constructor_input_file (struct paramed_type *T);
-int autocomplete_constructor_input_file_big (struct paramed_type *T);
-int autocomplete_constructor_input_file_location (struct paramed_type *T);
-int autocomplete_constructor_input_video_file_location (struct paramed_type *T);
-int autocomplete_constructor_input_encrypted_file_location (struct paramed_type *T);
-int autocomplete_constructor_input_audio_file_location (struct paramed_type *T);
-int autocomplete_constructor_input_document_file_location (struct paramed_type *T);
-int autocomplete_constructor_input_geo_chat (struct paramed_type *T);
-int autocomplete_constructor_input_geo_point_empty (struct paramed_type *T);
-int autocomplete_constructor_input_geo_point (struct paramed_type *T);
-int autocomplete_constructor_input_media_empty (struct paramed_type *T);
-int autocomplete_constructor_input_media_uploaded_photo (struct paramed_type *T);
-int autocomplete_constructor_input_media_photo (struct paramed_type *T);
-int autocomplete_constructor_input_media_geo_point (struct paramed_type *T);
-int autocomplete_constructor_input_media_contact (struct paramed_type *T);
-int autocomplete_constructor_input_media_uploaded_video (struct paramed_type *T);
-int autocomplete_constructor_input_media_uploaded_thumb_video (struct paramed_type *T);
-int autocomplete_constructor_input_media_video (struct paramed_type *T);
-int autocomplete_constructor_input_media_uploaded_audio (struct paramed_type *T);
-int autocomplete_constructor_input_media_audio (struct paramed_type *T);
-int autocomplete_constructor_input_media_uploaded_document (struct paramed_type *T);
-int autocomplete_constructor_input_media_uploaded_thumb_document (struct paramed_type *T);
-int autocomplete_constructor_input_media_document (struct paramed_type *T);
-int autocomplete_constructor_input_media_venue (struct paramed_type *T);
-int autocomplete_constructor_input_notify_peer (struct paramed_type *T);
-int autocomplete_constructor_input_notify_users (struct paramed_type *T);
-int autocomplete_constructor_input_notify_chats (struct paramed_type *T);
-int autocomplete_constructor_input_notify_all (struct paramed_type *T);
-int autocomplete_constructor_input_notify_geo_chat_peer (struct paramed_type *T);
-int autocomplete_constructor_input_peer_empty (struct paramed_type *T);
-int autocomplete_constructor_input_peer_self (struct paramed_type *T);
-int autocomplete_constructor_input_peer_contact (struct paramed_type *T);
-int autocomplete_constructor_input_peer_foreign (struct paramed_type *T);
-int autocomplete_constructor_input_peer_chat (struct paramed_type *T);
-int autocomplete_constructor_input_peer_notify_events_empty (struct paramed_type *T);
-int autocomplete_constructor_input_peer_notify_events_all (struct paramed_type *T);
-int autocomplete_constructor_input_peer_notify_settings (struct paramed_type *T);
-int autocomplete_constructor_input_photo_empty (struct paramed_type *T);
-int autocomplete_constructor_input_photo (struct paramed_type *T);
-int autocomplete_constructor_input_photo_crop_auto (struct paramed_type *T);
-int autocomplete_constructor_input_photo_crop (struct paramed_type *T);
-int autocomplete_constructor_input_privacy_key_status_timestamp (struct paramed_type *T);
-int autocomplete_constructor_input_privacy_value_allow_contacts (struct paramed_type *T);
-int autocomplete_constructor_input_privacy_value_allow_all (struct paramed_type *T);
-int autocomplete_constructor_input_privacy_value_allow_users (struct paramed_type *T);
-int autocomplete_constructor_input_privacy_value_disallow_contacts (struct paramed_type *T);
-int autocomplete_constructor_input_privacy_value_disallow_all (struct paramed_type *T);
-int autocomplete_constructor_input_privacy_value_disallow_users (struct paramed_type *T);
-int autocomplete_constructor_input_sticker_set_empty (struct paramed_type *T);
-int autocomplete_constructor_input_sticker_set_i_d (struct paramed_type *T);
-int autocomplete_constructor_input_sticker_set_short_name (struct paramed_type *T);
-int autocomplete_constructor_input_user_empty (struct paramed_type *T);
-int autocomplete_constructor_input_user_self (struct paramed_type *T);
-int autocomplete_constructor_input_user_contact (struct paramed_type *T);
-int autocomplete_constructor_input_user_foreign (struct paramed_type *T);
-int autocomplete_constructor_input_video_empty (struct paramed_type *T);
-int autocomplete_constructor_input_video (struct paramed_type *T);
-int autocomplete_constructor_int (struct paramed_type *T);
-int autocomplete_constructor_int128 (struct paramed_type *T);
-int autocomplete_constructor_int256 (struct paramed_type *T);
-int autocomplete_constructor_keyboard_button (struct paramed_type *T);
-int autocomplete_constructor_keyboard_button_row (struct paramed_type *T);
-int autocomplete_constructor_long (struct paramed_type *T);
-int autocomplete_constructor_message_empty (struct paramed_type *T);
-int autocomplete_constructor_message (struct paramed_type *T);
-int autocomplete_constructor_message_service (struct paramed_type *T);
-int autocomplete_constructor_message_action_empty (struct paramed_type *T);
-int autocomplete_constructor_message_action_chat_create (struct paramed_type *T);
-int autocomplete_constructor_message_action_chat_edit_title (struct paramed_type *T);
-int autocomplete_constructor_message_action_chat_edit_photo (struct paramed_type *T);
-int autocomplete_constructor_message_action_chat_delete_photo (struct paramed_type *T);
-int autocomplete_constructor_message_action_chat_add_user (struct paramed_type *T);
-int autocomplete_constructor_message_action_chat_delete_user (struct paramed_type *T);
-int autocomplete_constructor_message_action_geo_chat_create (struct paramed_type *T);
-int autocomplete_constructor_message_action_geo_chat_checkin (struct paramed_type *T);
-int autocomplete_constructor_message_action_chat_joined_by_link (struct paramed_type *T);
-int autocomplete_constructor_message_media_empty (struct paramed_type *T);
-int autocomplete_constructor_message_media_photo (struct paramed_type *T);
-int autocomplete_constructor_message_media_video (struct paramed_type *T);
-int autocomplete_constructor_message_media_geo (struct paramed_type *T);
-int autocomplete_constructor_message_media_contact (struct paramed_type *T);
-int autocomplete_constructor_message_media_unsupported (struct paramed_type *T);
-int autocomplete_constructor_message_media_document (struct paramed_type *T);
-int autocomplete_constructor_message_media_audio (struct paramed_type *T);
-int autocomplete_constructor_message_media_web_page (struct paramed_type *T);
-int autocomplete_constructor_message_media_venue (struct paramed_type *T);
-int autocomplete_constructor_message_media_photo_l27 (struct paramed_type *T);
-int autocomplete_constructor_message_media_video_l27 (struct paramed_type *T);
-int autocomplete_constructor_input_messages_filter_empty (struct paramed_type *T);
-int autocomplete_constructor_input_messages_filter_photos (struct paramed_type *T);
-int autocomplete_constructor_input_messages_filter_video (struct paramed_type *T);
-int autocomplete_constructor_input_messages_filter_photo_video (struct paramed_type *T);
-int autocomplete_constructor_input_messages_filter_photo_video_documents (struct paramed_type *T);
-int autocomplete_constructor_input_messages_filter_document (struct paramed_type *T);
-int autocomplete_constructor_input_messages_filter_audio (struct paramed_type *T);
-int autocomplete_constructor_nearest_dc (struct paramed_type *T);
-int autocomplete_constructor_notify_peer (struct paramed_type *T);
-int autocomplete_constructor_notify_users (struct paramed_type *T);
-int autocomplete_constructor_notify_chats (struct paramed_type *T);
-int autocomplete_constructor_notify_all (struct paramed_type *T);
-int autocomplete_constructor_null (struct paramed_type *T);
-int autocomplete_constructor_p_q_inner_data (struct paramed_type *T);
-int autocomplete_constructor_p_q_inner_data_temp (struct paramed_type *T);
-int autocomplete_constructor_peer_user (struct paramed_type *T);
-int autocomplete_constructor_peer_chat (struct paramed_type *T);
-int autocomplete_constructor_peer_notify_events_empty (struct paramed_type *T);
-int autocomplete_constructor_peer_notify_events_all (struct paramed_type *T);
-int autocomplete_constructor_peer_notify_settings_empty (struct paramed_type *T);
-int autocomplete_constructor_peer_notify_settings (struct paramed_type *T);
-int autocomplete_constructor_photo_empty (struct paramed_type *T);
-int autocomplete_constructor_photo (struct paramed_type *T);
-int autocomplete_constructor_photo_l27 (struct paramed_type *T);
-int autocomplete_constructor_photo_size_empty (struct paramed_type *T);
-int autocomplete_constructor_photo_size (struct paramed_type *T);
-int autocomplete_constructor_photo_cached_size (struct paramed_type *T);
-int autocomplete_constructor_privacy_key_status_timestamp (struct paramed_type *T);
-int autocomplete_constructor_privacy_value_allow_contacts (struct paramed_type *T);
-int autocomplete_constructor_privacy_value_allow_all (struct paramed_type *T);
-int autocomplete_constructor_privacy_value_allow_users (struct paramed_type *T);
-int autocomplete_constructor_privacy_value_disallow_contacts (struct paramed_type *T);
-int autocomplete_constructor_privacy_value_disallow_all (struct paramed_type *T);
-int autocomplete_constructor_privacy_value_disallow_users (struct paramed_type *T);
-int autocomplete_constructor_received_notify_message (struct paramed_type *T);
-int autocomplete_constructor_reply_keyboard_hide (struct paramed_type *T);
-int autocomplete_constructor_reply_keyboard_force_reply (struct paramed_type *T);
-int autocomplete_constructor_reply_keyboard_markup (struct paramed_type *T);
-int autocomplete_constructor_res_p_q (struct paramed_type *T);
-int autocomplete_constructor_send_message_typing_action (struct paramed_type *T);
-int autocomplete_constructor_send_message_cancel_action (struct paramed_type *T);
-int autocomplete_constructor_send_message_record_video_action (struct paramed_type *T);
-int autocomplete_constructor_send_message_upload_video_action_l27 (struct paramed_type *T);
-int autocomplete_constructor_send_message_upload_video_action (struct paramed_type *T);
-int autocomplete_constructor_send_message_record_audio_action (struct paramed_type *T);
-int autocomplete_constructor_send_message_upload_audio_action_l27 (struct paramed_type *T);
-int autocomplete_constructor_send_message_upload_audio_action (struct paramed_type *T);
-int autocomplete_constructor_send_message_upload_photo_action (struct paramed_type *T);
-int autocomplete_constructor_send_message_upload_document_action_l27 (struct paramed_type *T);
-int autocomplete_constructor_send_message_upload_document_action (struct paramed_type *T);
-int autocomplete_constructor_send_message_geo_location_action (struct paramed_type *T);
-int autocomplete_constructor_send_message_choose_contact_action (struct paramed_type *T);
-int autocomplete_constructor_server_d_h_params_fail (struct paramed_type *T);
-int autocomplete_constructor_server_d_h_params_ok (struct paramed_type *T);
-int autocomplete_constructor_server_d_h_inner_data (struct paramed_type *T);
-int autocomplete_constructor_dh_gen_ok (struct paramed_type *T);
-int autocomplete_constructor_dh_gen_retry (struct paramed_type *T);
-int autocomplete_constructor_dh_gen_fail (struct paramed_type *T);
-int autocomplete_constructor_sticker_pack (struct paramed_type *T);
-int autocomplete_constructor_sticker_set (struct paramed_type *T);
-int autocomplete_constructor_string (struct paramed_type *T);
-int autocomplete_constructor_update_new_message (struct paramed_type *T);
-int autocomplete_constructor_update_message_i_d (struct paramed_type *T);
-int autocomplete_constructor_update_delete_messages (struct paramed_type *T);
-int autocomplete_constructor_update_user_typing (struct paramed_type *T);
-int autocomplete_constructor_update_chat_user_typing (struct paramed_type *T);
-int autocomplete_constructor_update_chat_participants (struct paramed_type *T);
-int autocomplete_constructor_update_user_status (struct paramed_type *T);
-int autocomplete_constructor_update_user_name (struct paramed_type *T);
-int autocomplete_constructor_update_user_photo (struct paramed_type *T);
-int autocomplete_constructor_update_contact_registered (struct paramed_type *T);
-int autocomplete_constructor_update_contact_link (struct paramed_type *T);
-int autocomplete_constructor_update_new_authorization (struct paramed_type *T);
-int autocomplete_constructor_update_new_geo_chat_message (struct paramed_type *T);
-int autocomplete_constructor_update_new_encrypted_message (struct paramed_type *T);
-int autocomplete_constructor_update_encrypted_chat_typing (struct paramed_type *T);
-int autocomplete_constructor_update_encryption (struct paramed_type *T);
-int autocomplete_constructor_update_encrypted_messages_read (struct paramed_type *T);
-int autocomplete_constructor_update_chat_participant_add (struct paramed_type *T);
-int autocomplete_constructor_update_chat_participant_delete (struct paramed_type *T);
-int autocomplete_constructor_update_dc_options (struct paramed_type *T);
-int autocomplete_constructor_update_user_blocked (struct paramed_type *T);
-int autocomplete_constructor_update_notify_settings (struct paramed_type *T);
-int autocomplete_constructor_update_service_notification (struct paramed_type *T);
-int autocomplete_constructor_update_privacy (struct paramed_type *T);
-int autocomplete_constructor_update_user_phone (struct paramed_type *T);
-int autocomplete_constructor_update_read_history_inbox (struct paramed_type *T);
-int autocomplete_constructor_update_read_history_outbox (struct paramed_type *T);
-int autocomplete_constructor_update_web_page (struct paramed_type *T);
-int autocomplete_constructor_update_read_messages_contents (struct paramed_type *T);
-int autocomplete_constructor_update_msg_update (struct paramed_type *T);
-int autocomplete_constructor_updates_too_long (struct paramed_type *T);
-int autocomplete_constructor_update_short_message (struct paramed_type *T);
-int autocomplete_constructor_update_short_chat_message (struct paramed_type *T);
-int autocomplete_constructor_update_short (struct paramed_type *T);
-int autocomplete_constructor_updates_combined (struct paramed_type *T);
-int autocomplete_constructor_updates (struct paramed_type *T);
-int autocomplete_constructor_user_empty (struct paramed_type *T);
-int autocomplete_constructor_user (struct paramed_type *T);
-int autocomplete_constructor_user_full (struct paramed_type *T);
-int autocomplete_constructor_user_profile_photo_empty (struct paramed_type *T);
-int autocomplete_constructor_user_profile_photo (struct paramed_type *T);
-int autocomplete_constructor_user_status_empty (struct paramed_type *T);
-int autocomplete_constructor_user_status_online (struct paramed_type *T);
-int autocomplete_constructor_user_status_offline (struct paramed_type *T);
-int autocomplete_constructor_user_status_recently (struct paramed_type *T);
-int autocomplete_constructor_user_status_last_week (struct paramed_type *T);
-int autocomplete_constructor_user_status_last_month (struct paramed_type *T);
-int autocomplete_constructor_vector (struct paramed_type *T);
-int autocomplete_constructor_video_empty (struct paramed_type *T);
-int autocomplete_constructor_video (struct paramed_type *T);
-int autocomplete_constructor_video_l27 (struct paramed_type *T);
-int autocomplete_constructor_wall_paper (struct paramed_type *T);
-int autocomplete_constructor_wall_paper_solid (struct paramed_type *T);
-int autocomplete_constructor_web_page_empty (struct paramed_type *T);
-int autocomplete_constructor_web_page_pending (struct paramed_type *T);
-int autocomplete_constructor_web_page (struct paramed_type *T);
-int autocomplete_constructor_account_authorizations (struct paramed_type *T);
-int autocomplete_constructor_account_no_password (struct paramed_type *T);
-int autocomplete_constructor_account_password (struct paramed_type *T);
-int autocomplete_constructor_account_password_input_settings (struct paramed_type *T);
-int autocomplete_constructor_account_password_settings (struct paramed_type *T);
-int autocomplete_constructor_account_privacy_rules (struct paramed_type *T);
-int autocomplete_constructor_account_sent_change_phone_code (struct paramed_type *T);
-int autocomplete_constructor_auth_authorization (struct paramed_type *T);
-int autocomplete_constructor_auth_checked_phone (struct paramed_type *T);
-int autocomplete_constructor_auth_exported_authorization (struct paramed_type *T);
-int autocomplete_constructor_auth_password_recovery (struct paramed_type *T);
-int autocomplete_constructor_auth_sent_code (struct paramed_type *T);
-int autocomplete_constructor_auth_sent_app_code (struct paramed_type *T);
-int autocomplete_constructor_binlog_encr_key (struct paramed_type *T);
-int autocomplete_constructor_binlog_start (struct paramed_type *T);
-int autocomplete_constructor_binlog_dc_option (struct paramed_type *T);
-int autocomplete_constructor_binlog_dc_option_new (struct paramed_type *T);
-int autocomplete_constructor_binlog_auth_key (struct paramed_type *T);
-int autocomplete_constructor_binlog_default_dc (struct paramed_type *T);
-int autocomplete_constructor_binlog_dc_signed (struct paramed_type *T);
-int autocomplete_constructor_binlog_our_id (struct paramed_type *T);
-int autocomplete_constructor_binlog_set_dh_params (struct paramed_type *T);
-int autocomplete_constructor_binlog_set_pts (struct paramed_type *T);
-int autocomplete_constructor_binlog_set_qts (struct paramed_type *T);
-int autocomplete_constructor_binlog_set_date (struct paramed_type *T);
-int autocomplete_constructor_binlog_set_seq (struct paramed_type *T);
-int autocomplete_constructor_binlog_encr_chat_delete (struct paramed_type *T);
-int autocomplete_constructor_binlog_encr_chat_new (struct paramed_type *T);
-int autocomplete_constructor_binlog_encr_chat_exchange_new (struct paramed_type *T);
-int autocomplete_constructor_binlog_user_delete (struct paramed_type *T);
-int autocomplete_constructor_binlog_user_new (struct paramed_type *T);
-int autocomplete_constructor_binlog_chat_new (struct paramed_type *T);
-int autocomplete_constructor_binlog_chat_add_participant (struct paramed_type *T);
-int autocomplete_constructor_binlog_chat_del_participant (struct paramed_type *T);
-int autocomplete_constructor_binlog_set_msg_id (struct paramed_type *T);
-int autocomplete_constructor_binlog_message_delete (struct paramed_type *T);
-int autocomplete_constructor_binlog_message_new (struct paramed_type *T);
-int autocomplete_constructor_binlog_message_encr_new (struct paramed_type *T);
-int autocomplete_constructor_binlog_msg_update (struct paramed_type *T);
-int autocomplete_constructor_binlog_reset_authorization (struct paramed_type *T);
-int autocomplete_constructor_contacts_blocked (struct paramed_type *T);
-int autocomplete_constructor_contacts_blocked_slice (struct paramed_type *T);
-int autocomplete_constructor_contacts_contacts_not_modified (struct paramed_type *T);
-int autocomplete_constructor_contacts_contacts (struct paramed_type *T);
-int autocomplete_constructor_contacts_found (struct paramed_type *T);
-int autocomplete_constructor_contacts_imported_contacts (struct paramed_type *T);
-int autocomplete_constructor_contacts_link (struct paramed_type *T);
-int autocomplete_constructor_contacts_suggested (struct paramed_type *T);
-int autocomplete_constructor_geochats_located (struct paramed_type *T);
-int autocomplete_constructor_geochats_messages (struct paramed_type *T);
-int autocomplete_constructor_geochats_messages_slice (struct paramed_type *T);
-int autocomplete_constructor_geochats_stated_message (struct paramed_type *T);
-int autocomplete_constructor_help_app_update (struct paramed_type *T);
-int autocomplete_constructor_help_no_app_update (struct paramed_type *T);
-int autocomplete_constructor_help_invite_text (struct paramed_type *T);
-int autocomplete_constructor_help_support (struct paramed_type *T);
-int autocomplete_constructor_messages_affected_history (struct paramed_type *T);
-int autocomplete_constructor_messages_affected_messages (struct paramed_type *T);
-int autocomplete_constructor_messages_all_stickers_not_modified (struct paramed_type *T);
-int autocomplete_constructor_messages_all_stickers (struct paramed_type *T);
-int autocomplete_constructor_messages_chat_full (struct paramed_type *T);
-int autocomplete_constructor_messages_chats (struct paramed_type *T);
-int autocomplete_constructor_messages_dh_config_not_modified (struct paramed_type *T);
-int autocomplete_constructor_messages_dh_config (struct paramed_type *T);
-int autocomplete_constructor_messages_dialogs (struct paramed_type *T);
-int autocomplete_constructor_messages_dialogs_slice (struct paramed_type *T);
-int autocomplete_constructor_messages_message_empty (struct paramed_type *T);
-int autocomplete_constructor_messages_messages (struct paramed_type *T);
-int autocomplete_constructor_messages_messages_slice (struct paramed_type *T);
-int autocomplete_constructor_messages_sent_encrypted_message (struct paramed_type *T);
-int autocomplete_constructor_messages_sent_encrypted_file (struct paramed_type *T);
-int autocomplete_constructor_messages_sent_message (struct paramed_type *T);
-int autocomplete_constructor_messages_sent_message_link (struct paramed_type *T);
-int autocomplete_constructor_messages_sticker_set (struct paramed_type *T);
-int autocomplete_constructor_messages_stickers_not_modified (struct paramed_type *T);
-int autocomplete_constructor_messages_stickers (struct paramed_type *T);
-int autocomplete_constructor_photos_photo (struct paramed_type *T);
-int autocomplete_constructor_photos_photos (struct paramed_type *T);
-int autocomplete_constructor_photos_photos_slice (struct paramed_type *T);
-int autocomplete_constructor_storage_file_unknown (struct paramed_type *T);
-int autocomplete_constructor_storage_file_jpeg (struct paramed_type *T);
-int autocomplete_constructor_storage_file_gif (struct paramed_type *T);
-int autocomplete_constructor_storage_file_png (struct paramed_type *T);
-int autocomplete_constructor_storage_file_pdf (struct paramed_type *T);
-int autocomplete_constructor_storage_file_mp3 (struct paramed_type *T);
-int autocomplete_constructor_storage_file_mov (struct paramed_type *T);
-int autocomplete_constructor_storage_file_partial (struct paramed_type *T);
-int autocomplete_constructor_storage_file_mp4 (struct paramed_type *T);
-int autocomplete_constructor_storage_file_webp (struct paramed_type *T);
-int autocomplete_constructor_updates_difference_empty (struct paramed_type *T);
-int autocomplete_constructor_updates_difference (struct paramed_type *T);
-int autocomplete_constructor_updates_difference_slice (struct paramed_type *T);
-int autocomplete_constructor_updates_state (struct paramed_type *T);
-int autocomplete_constructor_upload_file (struct paramed_type *T);
-int autocomplete_type_account_days_t_t_l (struct paramed_type *T);
-int do_autocomplete_type_account_days_t_t_l (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_account_days_t_t_l (struct paramed_type *T);
-int autocomplete_type_audio (struct paramed_type *T);
-int do_autocomplete_type_audio (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_audio (struct paramed_type *T);
-int autocomplete_type_authorization (struct paramed_type *T);
-int do_autocomplete_type_authorization (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_authorization (struct paramed_type *T);
-int autocomplete_type_bool (struct paramed_type *T);
-int do_autocomplete_type_bool (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_bool (struct paramed_type *T);
-int autocomplete_type_bot_command (struct paramed_type *T);
-int do_autocomplete_type_bot_command (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_bot_command (struct paramed_type *T);
-int autocomplete_type_bot_info (struct paramed_type *T);
-int do_autocomplete_type_bot_info (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_bot_info (struct paramed_type *T);
-int autocomplete_type_bytes (struct paramed_type *T);
-int do_autocomplete_type_bytes (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_bytes (struct paramed_type *T);
-int autocomplete_type_chat (struct paramed_type *T);
-int do_autocomplete_type_chat (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_chat (struct paramed_type *T);
-int autocomplete_type_chat_full (struct paramed_type *T);
-int do_autocomplete_type_chat_full (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_chat_full (struct paramed_type *T);
-int autocomplete_type_chat_invite (struct paramed_type *T);
-int do_autocomplete_type_chat_invite (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_chat_invite (struct paramed_type *T);
-int autocomplete_type_chat_located (struct paramed_type *T);
-int do_autocomplete_type_chat_located (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_chat_located (struct paramed_type *T);
-int autocomplete_type_chat_participant (struct paramed_type *T);
-int do_autocomplete_type_chat_participant (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_chat_participant (struct paramed_type *T);
-int autocomplete_type_chat_participants (struct paramed_type *T);
-int do_autocomplete_type_chat_participants (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_chat_participants (struct paramed_type *T);
-int autocomplete_type_chat_photo (struct paramed_type *T);
-int do_autocomplete_type_chat_photo (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_chat_photo (struct paramed_type *T);
-int autocomplete_type_client_d_h_inner_data (struct paramed_type *T);
-int do_autocomplete_type_client_d_h_inner_data (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_client_d_h_inner_data (struct paramed_type *T);
-int autocomplete_type_config (struct paramed_type *T);
-int do_autocomplete_type_config (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_config (struct paramed_type *T);
-int autocomplete_type_contact (struct paramed_type *T);
-int do_autocomplete_type_contact (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_contact (struct paramed_type *T);
-int autocomplete_type_contact_blocked (struct paramed_type *T);
-int do_autocomplete_type_contact_blocked (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_contact_blocked (struct paramed_type *T);
-int autocomplete_type_contact_found (struct paramed_type *T);
-int do_autocomplete_type_contact_found (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_contact_found (struct paramed_type *T);
-int autocomplete_type_contact_link (struct paramed_type *T);
-int do_autocomplete_type_contact_link (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_contact_link (struct paramed_type *T);
-int autocomplete_type_contact_status (struct paramed_type *T);
-int do_autocomplete_type_contact_status (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_contact_status (struct paramed_type *T);
-int autocomplete_type_contact_suggested (struct paramed_type *T);
-int do_autocomplete_type_contact_suggested (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_contact_suggested (struct paramed_type *T);
-int autocomplete_type_dc_option (struct paramed_type *T);
-int do_autocomplete_type_dc_option (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_dc_option (struct paramed_type *T);
-int autocomplete_type_decrypted_message (struct paramed_type *T);
-int do_autocomplete_type_decrypted_message (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_decrypted_message (struct paramed_type *T);
-int autocomplete_type_decrypted_message_action (struct paramed_type *T);
-int do_autocomplete_type_decrypted_message_action (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_decrypted_message_action (struct paramed_type *T);
-int autocomplete_type_decrypted_message_layer (struct paramed_type *T);
-int do_autocomplete_type_decrypted_message_layer (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_decrypted_message_layer (struct paramed_type *T);
-int autocomplete_type_decrypted_message_media (struct paramed_type *T);
-int do_autocomplete_type_decrypted_message_media (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_decrypted_message_media (struct paramed_type *T);
-int autocomplete_type_dialog (struct paramed_type *T);
-int do_autocomplete_type_dialog (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_dialog (struct paramed_type *T);
-int autocomplete_type_disabled_feature (struct paramed_type *T);
-int do_autocomplete_type_disabled_feature (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_disabled_feature (struct paramed_type *T);
-int autocomplete_type_document (struct paramed_type *T);
-int do_autocomplete_type_document (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_document (struct paramed_type *T);
-int autocomplete_type_document_attribute (struct paramed_type *T);
-int do_autocomplete_type_document_attribute (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_document_attribute (struct paramed_type *T);
-int autocomplete_type_double (struct paramed_type *T);
-int do_autocomplete_type_double (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_double (struct paramed_type *T);
-int autocomplete_type_encrypted_chat (struct paramed_type *T);
-int do_autocomplete_type_encrypted_chat (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_encrypted_chat (struct paramed_type *T);
-int autocomplete_type_encrypted_file (struct paramed_type *T);
-int do_autocomplete_type_encrypted_file (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_encrypted_file (struct paramed_type *T);
-int autocomplete_type_encrypted_message (struct paramed_type *T);
-int do_autocomplete_type_encrypted_message (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_encrypted_message (struct paramed_type *T);
-int autocomplete_type_error (struct paramed_type *T);
-int do_autocomplete_type_error (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_error (struct paramed_type *T);
-int autocomplete_type_exported_chat_invite (struct paramed_type *T);
-int do_autocomplete_type_exported_chat_invite (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_exported_chat_invite (struct paramed_type *T);
-int autocomplete_type_file_location (struct paramed_type *T);
-int do_autocomplete_type_file_location (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_file_location (struct paramed_type *T);
-int autocomplete_type_geo_chat_message (struct paramed_type *T);
-int do_autocomplete_type_geo_chat_message (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_geo_chat_message (struct paramed_type *T);
-int autocomplete_type_geo_point (struct paramed_type *T);
-int do_autocomplete_type_geo_point (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_geo_point (struct paramed_type *T);
-int autocomplete_type_imported_contact (struct paramed_type *T);
-int do_autocomplete_type_imported_contact (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_imported_contact (struct paramed_type *T);
-int autocomplete_type_input_app_event (struct paramed_type *T);
-int do_autocomplete_type_input_app_event (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_app_event (struct paramed_type *T);
-int autocomplete_type_input_audio (struct paramed_type *T);
-int do_autocomplete_type_input_audio (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_audio (struct paramed_type *T);
-int autocomplete_type_input_chat_photo (struct paramed_type *T);
-int do_autocomplete_type_input_chat_photo (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_chat_photo (struct paramed_type *T);
-int autocomplete_type_input_contact (struct paramed_type *T);
-int do_autocomplete_type_input_contact (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_contact (struct paramed_type *T);
-int autocomplete_type_input_document (struct paramed_type *T);
-int do_autocomplete_type_input_document (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_document (struct paramed_type *T);
-int autocomplete_type_input_encrypted_chat (struct paramed_type *T);
-int do_autocomplete_type_input_encrypted_chat (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_encrypted_chat (struct paramed_type *T);
-int autocomplete_type_input_encrypted_file (struct paramed_type *T);
-int do_autocomplete_type_input_encrypted_file (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_encrypted_file (struct paramed_type *T);
-int autocomplete_type_input_file (struct paramed_type *T);
-int do_autocomplete_type_input_file (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_file (struct paramed_type *T);
-int autocomplete_type_input_file_location (struct paramed_type *T);
-int do_autocomplete_type_input_file_location (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_file_location (struct paramed_type *T);
-int autocomplete_type_input_geo_chat (struct paramed_type *T);
-int do_autocomplete_type_input_geo_chat (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_geo_chat (struct paramed_type *T);
-int autocomplete_type_input_geo_point (struct paramed_type *T);
-int do_autocomplete_type_input_geo_point (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_geo_point (struct paramed_type *T);
-int autocomplete_type_input_media (struct paramed_type *T);
-int do_autocomplete_type_input_media (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_media (struct paramed_type *T);
-int autocomplete_type_input_notify_peer (struct paramed_type *T);
-int do_autocomplete_type_input_notify_peer (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_notify_peer (struct paramed_type *T);
-int autocomplete_type_input_peer (struct paramed_type *T);
-int do_autocomplete_type_input_peer (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_peer (struct paramed_type *T);
-int autocomplete_type_input_peer_notify_events (struct paramed_type *T);
-int do_autocomplete_type_input_peer_notify_events (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_peer_notify_events (struct paramed_type *T);
-int autocomplete_type_input_peer_notify_settings (struct paramed_type *T);
-int do_autocomplete_type_input_peer_notify_settings (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_peer_notify_settings (struct paramed_type *T);
-int autocomplete_type_input_photo (struct paramed_type *T);
-int do_autocomplete_type_input_photo (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_photo (struct paramed_type *T);
-int autocomplete_type_input_photo_crop (struct paramed_type *T);
-int do_autocomplete_type_input_photo_crop (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_photo_crop (struct paramed_type *T);
-int autocomplete_type_input_privacy_key (struct paramed_type *T);
-int do_autocomplete_type_input_privacy_key (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_privacy_key (struct paramed_type *T);
-int autocomplete_type_input_privacy_rule (struct paramed_type *T);
-int do_autocomplete_type_input_privacy_rule (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_privacy_rule (struct paramed_type *T);
-int autocomplete_type_input_sticker_set (struct paramed_type *T);
-int do_autocomplete_type_input_sticker_set (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_sticker_set (struct paramed_type *T);
-int autocomplete_type_input_user (struct paramed_type *T);
-int do_autocomplete_type_input_user (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_user (struct paramed_type *T);
-int autocomplete_type_input_video (struct paramed_type *T);
-int do_autocomplete_type_input_video (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_input_video (struct paramed_type *T);
-int autocomplete_type_int (struct paramed_type *T);
-int do_autocomplete_type_int (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_int (struct paramed_type *T);
-int autocomplete_type_int128 (struct paramed_type *T);
-int do_autocomplete_type_int128 (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_int128 (struct paramed_type *T);
-int autocomplete_type_int256 (struct paramed_type *T);
-int do_autocomplete_type_int256 (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_int256 (struct paramed_type *T);
-int autocomplete_type_keyboard_button (struct paramed_type *T);
-int do_autocomplete_type_keyboard_button (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_keyboard_button (struct paramed_type *T);
-int autocomplete_type_keyboard_button_row (struct paramed_type *T);
-int do_autocomplete_type_keyboard_button_row (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_keyboard_button_row (struct paramed_type *T);
-int autocomplete_type_long (struct paramed_type *T);
-int do_autocomplete_type_long (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_long (struct paramed_type *T);
-int autocomplete_type_message (struct paramed_type *T);
-int do_autocomplete_type_message (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_message (struct paramed_type *T);
-int autocomplete_type_message_action (struct paramed_type *T);
-int do_autocomplete_type_message_action (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_message_action (struct paramed_type *T);
-int autocomplete_type_message_media (struct paramed_type *T);
-int do_autocomplete_type_message_media (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_message_media (struct paramed_type *T);
-int autocomplete_type_messages_filter (struct paramed_type *T);
-int do_autocomplete_type_messages_filter (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_filter (struct paramed_type *T);
-int autocomplete_type_nearest_dc (struct paramed_type *T);
-int do_autocomplete_type_nearest_dc (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_nearest_dc (struct paramed_type *T);
-int autocomplete_type_notify_peer (struct paramed_type *T);
-int do_autocomplete_type_notify_peer (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_notify_peer (struct paramed_type *T);
-int autocomplete_type_null (struct paramed_type *T);
-int do_autocomplete_type_null (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_null (struct paramed_type *T);
-int autocomplete_type_p_q_inner_data (struct paramed_type *T);
-int do_autocomplete_type_p_q_inner_data (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_p_q_inner_data (struct paramed_type *T);
-int autocomplete_type_peer (struct paramed_type *T);
-int do_autocomplete_type_peer (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_peer (struct paramed_type *T);
-int autocomplete_type_peer_notify_events (struct paramed_type *T);
-int do_autocomplete_type_peer_notify_events (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_peer_notify_events (struct paramed_type *T);
-int autocomplete_type_peer_notify_settings (struct paramed_type *T);
-int do_autocomplete_type_peer_notify_settings (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_peer_notify_settings (struct paramed_type *T);
-int autocomplete_type_photo (struct paramed_type *T);
-int do_autocomplete_type_photo (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_photo (struct paramed_type *T);
-int autocomplete_type_photo_size (struct paramed_type *T);
-int do_autocomplete_type_photo_size (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_photo_size (struct paramed_type *T);
-int autocomplete_type_privacy_key (struct paramed_type *T);
-int do_autocomplete_type_privacy_key (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_privacy_key (struct paramed_type *T);
-int autocomplete_type_privacy_rule (struct paramed_type *T);
-int do_autocomplete_type_privacy_rule (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_privacy_rule (struct paramed_type *T);
-int autocomplete_type_received_notify_message (struct paramed_type *T);
-int do_autocomplete_type_received_notify_message (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_received_notify_message (struct paramed_type *T);
-int autocomplete_type_reply_markup (struct paramed_type *T);
-int do_autocomplete_type_reply_markup (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_reply_markup (struct paramed_type *T);
-int autocomplete_type_res_p_q (struct paramed_type *T);
-int do_autocomplete_type_res_p_q (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_res_p_q (struct paramed_type *T);
-int autocomplete_type_send_message_action (struct paramed_type *T);
-int do_autocomplete_type_send_message_action (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_send_message_action (struct paramed_type *T);
-int autocomplete_type_server_d_h_params (struct paramed_type *T);
-int do_autocomplete_type_server_d_h_params (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_server_d_h_params (struct paramed_type *T);
-int autocomplete_type_server_d_h_inner_data (struct paramed_type *T);
-int do_autocomplete_type_server_d_h_inner_data (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_server_d_h_inner_data (struct paramed_type *T);
-int autocomplete_type_set_client_d_h_params_answer (struct paramed_type *T);
-int do_autocomplete_type_set_client_d_h_params_answer (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_set_client_d_h_params_answer (struct paramed_type *T);
-int autocomplete_type_sticker_pack (struct paramed_type *T);
-int do_autocomplete_type_sticker_pack (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_sticker_pack (struct paramed_type *T);
-int autocomplete_type_sticker_set (struct paramed_type *T);
-int do_autocomplete_type_sticker_set (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_sticker_set (struct paramed_type *T);
-int autocomplete_type_string (struct paramed_type *T);
-int do_autocomplete_type_string (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_string (struct paramed_type *T);
-int autocomplete_type_update (struct paramed_type *T);
-int do_autocomplete_type_update (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_update (struct paramed_type *T);
-int autocomplete_type_updates (struct paramed_type *T);
-int do_autocomplete_type_updates (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_updates (struct paramed_type *T);
-int autocomplete_type_user (struct paramed_type *T);
-int do_autocomplete_type_user (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_user (struct paramed_type *T);
-int autocomplete_type_user_full (struct paramed_type *T);
-int do_autocomplete_type_user_full (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_user_full (struct paramed_type *T);
-int autocomplete_type_user_profile_photo (struct paramed_type *T);
-int do_autocomplete_type_user_profile_photo (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_user_profile_photo (struct paramed_type *T);
-int autocomplete_type_user_status (struct paramed_type *T);
-int do_autocomplete_type_user_status (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_user_status (struct paramed_type *T);
-int autocomplete_type_vector (struct paramed_type *T);
-int do_autocomplete_type_vector (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_vector (struct paramed_type *T);
-int autocomplete_type_video (struct paramed_type *T);
-int do_autocomplete_type_video (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_video (struct paramed_type *T);
-int autocomplete_type_wall_paper (struct paramed_type *T);
-int do_autocomplete_type_wall_paper (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_wall_paper (struct paramed_type *T);
-int autocomplete_type_web_page (struct paramed_type *T);
-int do_autocomplete_type_web_page (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_web_page (struct paramed_type *T);
-int autocomplete_type_account_authorizations (struct paramed_type *T);
-int do_autocomplete_type_account_authorizations (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_account_authorizations (struct paramed_type *T);
-int autocomplete_type_account_password (struct paramed_type *T);
-int do_autocomplete_type_account_password (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_account_password (struct paramed_type *T);
-int autocomplete_type_account_password_input_settings (struct paramed_type *T);
-int do_autocomplete_type_account_password_input_settings (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_account_password_input_settings (struct paramed_type *T);
-int autocomplete_type_account_password_settings (struct paramed_type *T);
-int do_autocomplete_type_account_password_settings (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_account_password_settings (struct paramed_type *T);
-int autocomplete_type_account_privacy_rules (struct paramed_type *T);
-int do_autocomplete_type_account_privacy_rules (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_account_privacy_rules (struct paramed_type *T);
-int autocomplete_type_account_sent_change_phone_code (struct paramed_type *T);
-int do_autocomplete_type_account_sent_change_phone_code (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_account_sent_change_phone_code (struct paramed_type *T);
-int autocomplete_type_auth_authorization (struct paramed_type *T);
-int do_autocomplete_type_auth_authorization (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_auth_authorization (struct paramed_type *T);
-int autocomplete_type_auth_checked_phone (struct paramed_type *T);
-int do_autocomplete_type_auth_checked_phone (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_auth_checked_phone (struct paramed_type *T);
-int autocomplete_type_auth_exported_authorization (struct paramed_type *T);
-int do_autocomplete_type_auth_exported_authorization (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_auth_exported_authorization (struct paramed_type *T);
-int autocomplete_type_auth_password_recovery (struct paramed_type *T);
-int do_autocomplete_type_auth_password_recovery (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_auth_password_recovery (struct paramed_type *T);
-int autocomplete_type_auth_sent_code (struct paramed_type *T);
-int do_autocomplete_type_auth_sent_code (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_auth_sent_code (struct paramed_type *T);
-int autocomplete_type_binlog_encr_key (struct paramed_type *T);
-int do_autocomplete_type_binlog_encr_key (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_binlog_encr_key (struct paramed_type *T);
-int autocomplete_type_binlog_update (struct paramed_type *T);
-int do_autocomplete_type_binlog_update (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_binlog_update (struct paramed_type *T);
-int autocomplete_type_contacts_blocked (struct paramed_type *T);
-int do_autocomplete_type_contacts_blocked (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_contacts_blocked (struct paramed_type *T);
-int autocomplete_type_contacts_contacts (struct paramed_type *T);
-int do_autocomplete_type_contacts_contacts (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_contacts_contacts (struct paramed_type *T);
-int autocomplete_type_contacts_found (struct paramed_type *T);
-int do_autocomplete_type_contacts_found (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_contacts_found (struct paramed_type *T);
-int autocomplete_type_contacts_imported_contacts (struct paramed_type *T);
-int do_autocomplete_type_contacts_imported_contacts (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_contacts_imported_contacts (struct paramed_type *T);
-int autocomplete_type_contacts_link (struct paramed_type *T);
-int do_autocomplete_type_contacts_link (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_contacts_link (struct paramed_type *T);
-int autocomplete_type_contacts_suggested (struct paramed_type *T);
-int do_autocomplete_type_contacts_suggested (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_contacts_suggested (struct paramed_type *T);
-int autocomplete_type_geochats_located (struct paramed_type *T);
-int do_autocomplete_type_geochats_located (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_geochats_located (struct paramed_type *T);
-int autocomplete_type_geochats_messages (struct paramed_type *T);
-int do_autocomplete_type_geochats_messages (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_geochats_messages (struct paramed_type *T);
-int autocomplete_type_geochats_stated_message (struct paramed_type *T);
-int do_autocomplete_type_geochats_stated_message (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_geochats_stated_message (struct paramed_type *T);
-int autocomplete_type_help_app_update (struct paramed_type *T);
-int do_autocomplete_type_help_app_update (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_help_app_update (struct paramed_type *T);
-int autocomplete_type_help_invite_text (struct paramed_type *T);
-int do_autocomplete_type_help_invite_text (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_help_invite_text (struct paramed_type *T);
-int autocomplete_type_help_support (struct paramed_type *T);
-int do_autocomplete_type_help_support (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_help_support (struct paramed_type *T);
-int autocomplete_type_messages_affected_history (struct paramed_type *T);
-int do_autocomplete_type_messages_affected_history (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_affected_history (struct paramed_type *T);
-int autocomplete_type_messages_affected_messages (struct paramed_type *T);
-int do_autocomplete_type_messages_affected_messages (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_affected_messages (struct paramed_type *T);
-int autocomplete_type_messages_all_stickers (struct paramed_type *T);
-int do_autocomplete_type_messages_all_stickers (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_all_stickers (struct paramed_type *T);
-int autocomplete_type_messages_chat_full (struct paramed_type *T);
-int do_autocomplete_type_messages_chat_full (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_chat_full (struct paramed_type *T);
-int autocomplete_type_messages_chats (struct paramed_type *T);
-int do_autocomplete_type_messages_chats (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_chats (struct paramed_type *T);
-int autocomplete_type_messages_dh_config (struct paramed_type *T);
-int do_autocomplete_type_messages_dh_config (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_dh_config (struct paramed_type *T);
-int autocomplete_type_messages_dialogs (struct paramed_type *T);
-int do_autocomplete_type_messages_dialogs (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_dialogs (struct paramed_type *T);
-int autocomplete_type_messages_message (struct paramed_type *T);
-int do_autocomplete_type_messages_message (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_message (struct paramed_type *T);
-int autocomplete_type_messages_messages (struct paramed_type *T);
-int do_autocomplete_type_messages_messages (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_messages (struct paramed_type *T);
-int autocomplete_type_messages_sent_encrypted_message (struct paramed_type *T);
-int do_autocomplete_type_messages_sent_encrypted_message (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_sent_encrypted_message (struct paramed_type *T);
-int autocomplete_type_messages_sent_message (struct paramed_type *T);
-int do_autocomplete_type_messages_sent_message (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_sent_message (struct paramed_type *T);
-int autocomplete_type_messages_sticker_set (struct paramed_type *T);
-int do_autocomplete_type_messages_sticker_set (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_sticker_set (struct paramed_type *T);
-int autocomplete_type_messages_stickers (struct paramed_type *T);
-int do_autocomplete_type_messages_stickers (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_messages_stickers (struct paramed_type *T);
-int autocomplete_type_photos_photo (struct paramed_type *T);
-int do_autocomplete_type_photos_photo (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_photos_photo (struct paramed_type *T);
-int autocomplete_type_photos_photos (struct paramed_type *T);
-int do_autocomplete_type_photos_photos (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_photos_photos (struct paramed_type *T);
-int autocomplete_type_storage_file_type (struct paramed_type *T);
-int do_autocomplete_type_storage_file_type (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_storage_file_type (struct paramed_type *T);
-int autocomplete_type_updates_difference (struct paramed_type *T);
-int do_autocomplete_type_updates_difference (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_updates_difference (struct paramed_type *T);
-int autocomplete_type_updates_state (struct paramed_type *T);
-int do_autocomplete_type_updates_state (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_updates_state (struct paramed_type *T);
-int autocomplete_type_upload_file (struct paramed_type *T);
-int do_autocomplete_type_upload_file (const char *text, int len, int index, char **R);
-int autocomplete_type_bare_upload_file (struct paramed_type *T);
-int autocomplete_type_any (struct paramed_type *T);
-struct paramed_type *autocomplete_function_any (void);
diff --git a/protocols/Telegram/src/tgl/auto/auto-fetch-ds.c b/protocols/Telegram/src/tgl/auto/auto-fetch-ds.c
deleted file mode 100644
index 0ad9035f0c..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-fetch-ds.c
+++ /dev/null
@@ -1,11876 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#include "auto-fetch-ds.h"
-#include "auto-skip.h"
-#include "auto-types.h"
-#include "..\mtproto-common.h"
-#else
-#include "auto.h"
-#include "auto/auto-fetch-ds.h"
-#include "auto/auto-skip.h"
-#include "auto/auto-types.h"
-#include "auto-static-fetch-ds.c"
-#include "mtproto-common.h"
-#endif
-#include <assert.h>
-struct tl_ds_account_days_t_t_l *fetch_ds_constructor_account_days_t_t_l (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb8d0afdf && T->type->name != 0x472f5020)) { return 0; }
- struct tl_ds_account_days_t_t_l * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->days = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_audio *fetch_ds_constructor_audio_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return 0; }
- struct tl_ds_audio * result = talloc0 (sizeof (*result));
- result->magic = 0x586988d8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- return result;
-}
-struct tl_ds_audio *fetch_ds_constructor_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return 0; }
- struct tl_ds_audio * result = talloc0 (sizeof (*result));
- result->magic = 0xc7ac6496;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mime_type = fetch_ds_type_bare_string (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc_id = fetch_ds_type_bare_int (field8);
- return result;
-}
-struct tl_ds_authorization *fetch_ds_constructor_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bf2e6f6 && T->type->name != 0x840d1909)) { return 0; }
- struct tl_ds_authorization * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->hash = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->flags = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->device_model = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->platform = fetch_ds_type_bare_string (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->system_version = fetch_ds_type_bare_string (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->api_id = fetch_ds_type_bare_int (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->app_name = fetch_ds_type_bare_string (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->app_version = fetch_ds_type_bare_string (field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date_created = fetch_ds_type_bare_int (field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date_active = fetch_ds_type_bare_int (field10);
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->ip = fetch_ds_type_bare_string (field11);
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->country = fetch_ds_type_bare_string (field12);
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->region = fetch_ds_type_bare_string (field13);
- return result;
-}
-struct tl_ds_bool *fetch_ds_constructor_bool_false (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return 0; }
- struct tl_ds_bool * result = talloc0 (sizeof (*result));
- result->magic = 0xbc799737;
- return result;
-}
-struct tl_ds_bool *fetch_ds_constructor_bool_true (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return 0; }
- struct tl_ds_bool * result = talloc0 (sizeof (*result));
- result->magic = 0x997275b5;
- return result;
-}
-struct tl_ds_bot_command *fetch_ds_constructor_bot_command (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return 0; }
- struct tl_ds_bot_command * result = talloc0 (sizeof (*result));
- result->magic = 0xc27ac8c7;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->command = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->description = fetch_ds_type_bare_string (field2);
- return result;
-}
-struct tl_ds_bot_command *fetch_ds_constructor_bot_command_old (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return 0; }
- struct tl_ds_bot_command * result = talloc0 (sizeof (*result));
- result->magic = 0xb79d22ab;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->command = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->params = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->description = fetch_ds_type_bare_string (field3);
- return result;
-}
-struct tl_ds_bot_info *fetch_ds_constructor_bot_info_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return 0; }
- struct tl_ds_bot_info * result = talloc0 (sizeof (*result));
- result->magic = 0xbb2e37ce;
- return result;
-}
-struct tl_ds_bot_info *fetch_ds_constructor_bot_info (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return 0; }
- struct tl_ds_bot_info * result = talloc0 (sizeof (*result));
- result->magic = 0x09cf585d;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->version = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->share_text = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->description = fetch_ds_type_bare_string (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x75e7ea6c, .id = "BotCommand", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->commands = (void *)fetch_ds_type_vector (field5);
- return result;
-}
-struct tl_ds_string *fetch_ds_constructor_bytes (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0ee1379f && T->type->name != 0xf11ec860)) { return 0; }
- struct tl_ds_string * result = talloc0 (sizeof (*result));
- assert (in_remaining () >= 4);
- int l = prefetch_strlen ();
- assert (l >= 0);
- result->len = l;
- result->data = talloc (l + 1);
- result->data[l] = 0;
- memcpy (result->data, fetch_str (l), l);
- return result;
-}
-struct tl_ds_chat *fetch_ds_constructor_chat_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return 0; }
- struct tl_ds_chat * result = talloc0 (sizeof (*result));
- result->magic = 0x9ba2d800;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_chat *fetch_ds_constructor_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return 0; }
- struct tl_ds_chat * result = talloc0 (sizeof (*result));
- result->magic = 0x6e9c9bc7;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo = fetch_ds_type_chat_photo (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->participants_count = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->left = fetch_ds_type_bool (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->version = fetch_ds_type_bare_int (field7);
- return result;
-}
-struct tl_ds_chat *fetch_ds_constructor_chat_forbidden (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return 0; }
- struct tl_ds_chat * result = talloc0 (sizeof (*result));
- result->magic = 0xfb0ccc41;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_chat *fetch_ds_constructor_geo_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return 0; }
- struct tl_ds_chat * result = talloc0 (sizeof (*result));
- result->magic = 0x75eaea5a;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->address = fetch_ds_type_bare_string (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->venue = fetch_ds_type_bare_string (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->geo = fetch_ds_type_geo_point (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo = fetch_ds_type_chat_photo (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->participants_count = fetch_ds_type_bare_int (field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->checked_in = fetch_ds_type_bool (field10);
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->version = fetch_ds_type_bare_int (field11);
- return result;
-}
-struct tl_ds_chat_full *fetch_ds_constructor_chat_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02a614 && T->type->name != 0xd1fd59eb)) { return 0; }
- struct tl_ds_chat_full * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->participants = fetch_ds_type_chat_participants (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_photo = fetch_ds_type_photo (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->notify_settings = fetch_ds_type_peer_notify_settings (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f132d5, .id = "ExportedChatInvite", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->exported_invite = fetch_ds_type_exported_chat_invite (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->bot_info = (void *)fetch_ds_type_vector (field6);
- return result;
-}
-struct tl_ds_chat_invite *fetch_ds_constructor_chat_invite_already (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return 0; }
- struct tl_ds_chat_invite * result = talloc0 (sizeof (*result));
- result->magic = 0x5a686d7c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat = fetch_ds_type_chat (field1);
- return result;
-}
-struct tl_ds_chat_invite *fetch_ds_constructor_chat_invite (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return 0; }
- struct tl_ds_chat_invite * result = talloc0 (sizeof (*result));
- result->magic = 0xce917dcd;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field1);
- return result;
-}
-struct tl_ds_chat_located *fetch_ds_constructor_chat_located (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3631cf4c && T->type->name != 0xc9ce30b3)) { return 0; }
- struct tl_ds_chat_located * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->distance = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_chat_participant *fetch_ds_constructor_chat_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc8d7493e && T->type->name != 0x3728b6c1)) { return 0; }
- struct tl_ds_chat_participant * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->inviter_id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_chat_participants *fetch_ds_constructor_chat_participants_forbidden (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return 0; }
- struct tl_ds_chat_participants * result = talloc0 (sizeof (*result));
- result->magic = 0x0fd2bb8a;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_chat_participants *fetch_ds_constructor_chat_participants (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return 0; }
- struct tl_ds_chat_participants * result = talloc0 (sizeof (*result));
- result->magic = 0x7841b415;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->admin_id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->participants = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->version = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_chat_photo *fetch_ds_constructor_chat_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return 0; }
- struct tl_ds_chat_photo * result = talloc0 (sizeof (*result));
- result->magic = 0x37c1011c;
- return result;
-}
-struct tl_ds_chat_photo *fetch_ds_constructor_chat_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return 0; }
- struct tl_ds_chat_photo * result = talloc0 (sizeof (*result));
- result->magic = 0x6153276a;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo_small = fetch_ds_type_file_location (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo_big = fetch_ds_type_file_location (field2);
- return result;
-}
-struct tl_ds_client_d_h_inner_data *fetch_ds_constructor_client_d_h_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6643b654 && T->type->name != 0x99bc49ab)) { return 0; }
- struct tl_ds_client_d_h_inner_data * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->nonce = fetch_ds_type_bare_int128 (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->server_nonce = fetch_ds_type_bare_int128 (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->retry_id = fetch_ds_type_bare_long (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->g_b = fetch_ds_type_bare_string (field4);
- return result;
-}
-struct tl_ds_config *fetch_ds_constructor_config (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e32b894 && T->type->name != 0xb1cd476b)) { return 0; }
- struct tl_ds_config * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->expires = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->test_mode = fetch_ds_type_bool (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->this_dc = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->dc_options = (void *)fetch_ds_type_vector (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_size_max = fetch_ds_type_bare_int (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->broadcast_size_max = fetch_ds_type_bare_int (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->forwarded_count_max = fetch_ds_type_bare_int (field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->online_update_period_ms = fetch_ds_type_bare_int (field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->offline_blur_timeout_ms = fetch_ds_type_bare_int (field10);
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->offline_idle_timeout_ms = fetch_ds_type_bare_int (field11);
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->online_cloud_timeout_ms = fetch_ds_type_bare_int (field12);
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->notify_cloud_delay_ms = fetch_ds_type_bare_int (field13);
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->notify_default_delay_ms = fetch_ds_type_bare_int (field14);
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_big_size = fetch_ds_type_bare_int (field15);
- struct paramed_type *field16 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->push_chat_period_ms = fetch_ds_type_bare_int (field16);
- struct paramed_type *field17 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->push_chat_limit = fetch_ds_type_bare_int (field17);
- struct paramed_type *field18 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae636f24, .id = "DisabledFeature", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->disabled_features = (void *)fetch_ds_type_vector (field18);
- return result;
-}
-struct tl_ds_contact *fetch_ds_constructor_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf911c994 && T->type->name != 0x06ee366b)) { return 0; }
- struct tl_ds_contact * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mutual = fetch_ds_type_bool (field2);
- return result;
-}
-struct tl_ds_contact_blocked *fetch_ds_constructor_contact_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x561bc879 && T->type->name != 0xa9e43786)) { return 0; }
- struct tl_ds_contact_blocked * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_contact_found *fetch_ds_constructor_contact_found (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xea879f95 && T->type->name != 0x1578606a)) { return 0; }
- struct tl_ds_contact_found * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_contact_link *fetch_ds_constructor_contact_link_unknown (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return 0; }
- struct tl_ds_contact_link * result = talloc0 (sizeof (*result));
- result->magic = 0x5f4f9247;
- return result;
-}
-struct tl_ds_contact_link *fetch_ds_constructor_contact_link_none (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return 0; }
- struct tl_ds_contact_link * result = talloc0 (sizeof (*result));
- result->magic = 0xfeedd3ad;
- return result;
-}
-struct tl_ds_contact_link *fetch_ds_constructor_contact_link_has_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return 0; }
- struct tl_ds_contact_link * result = talloc0 (sizeof (*result));
- result->magic = 0x268f3f59;
- return result;
-}
-struct tl_ds_contact_link *fetch_ds_constructor_contact_link_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return 0; }
- struct tl_ds_contact_link * result = talloc0 (sizeof (*result));
- result->magic = 0xd502c2d0;
- return result;
-}
-struct tl_ds_contact_status *fetch_ds_constructor_contact_status (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd3680c61 && T->type->name != 0x2c97f39e)) { return 0; }
- struct tl_ds_contact_status * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->status = fetch_ds_type_user_status (field2);
- return result;
-}
-struct tl_ds_contact_suggested *fetch_ds_constructor_contact_suggested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3de191a1 && T->type->name != 0xc21e6e5e)) { return 0; }
- struct tl_ds_contact_suggested * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mutual_contacts = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_dc_option *fetch_ds_constructor_dc_option_l28 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return 0; }
- struct tl_ds_dc_option * result = talloc0 (sizeof (*result));
- result->magic = 0x2ec2a43c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->hostname = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->ip_address = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->port = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_dc_option *fetch_ds_constructor_dc_option (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return 0; }
- struct tl_ds_dc_option * result = talloc0 (sizeof (*result));
- result->magic = 0x05d8c6cc;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->flags = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->ip_address = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->port = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_decrypted_message *fetch_ds_constructor_decrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return 0; }
- struct tl_ds_decrypted_message * result = talloc0 (sizeof (*result));
- result->magic = 0x204d3878;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->random_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->ttl = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->message = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->media = fetch_ds_type_decrypted_message_media (field4);
- return result;
-}
-struct tl_ds_decrypted_message *fetch_ds_constructor_decrypted_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return 0; }
- struct tl_ds_decrypted_message * result = talloc0 (sizeof (*result));
- result->magic = 0x73164160;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->random_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->action = fetch_ds_type_decrypted_message_action (field2);
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_set_message_t_t_l (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xa1733aec;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->ttl_seconds = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_read_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x0c4f40be;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->random_ids = (void *)fetch_ds_type_vector (field1);
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_delete_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x65614304;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->random_ids = (void *)fetch_ds_type_vector (field1);
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_screenshot_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x8ac1f475;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->random_ids = (void *)fetch_ds_type_vector (field1);
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_flush_history (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x6719e45c;
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_resend (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x511110b0;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->start_seq_no = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->end_seq_no = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_notify_layer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xf3048883;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->layer = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xccb27641;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->action = fetch_ds_type_send_message_action (field1);
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_request_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xf3c9611b;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->exchange_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->g_a = fetch_ds_type_bare_bytes (field2);
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_accept_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x6fe1735b;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->exchange_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->g_b = fetch_ds_type_bare_bytes (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key_fingerprint = fetch_ds_type_bare_long (field3);
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_abort_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xdd05ec6b;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->exchange_id = fetch_ds_type_bare_long (field1);
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_commit_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xec2e0b9b;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->exchange_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key_fingerprint = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_noop (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return 0; }
- struct tl_ds_decrypted_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xa82fdd63;
- return result;
-}
-struct tl_ds_decrypted_message_layer *fetch_ds_constructor_decrypted_message_layer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1be31789 && T->type->name != 0xe41ce876)) { return 0; }
- struct tl_ds_decrypted_message_layer * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->random_bytes = fetch_ds_type_bare_bytes (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->layer = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->in_seq_no = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->out_seq_no = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x535b7918, .id = "DecryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->message = fetch_ds_type_decrypted_message (field5);
- return result;
-}
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return 0; }
- struct tl_ds_decrypted_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x089f5c4a;
- return result;
-}
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return 0; }
- struct tl_ds_decrypted_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x32798a8c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->str_thumb = fetch_ds_type_bare_bytes (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb_w = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb_h = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->w = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->h = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key = fetch_ds_type_bare_bytes (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->iv = fetch_ds_type_bare_bytes (field8);
- return result;
-}
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return 0; }
- struct tl_ds_decrypted_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x35480a59;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->latitude = fetch_ds_type_bare_double (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->longitude = fetch_ds_type_bare_double (field2);
- return result;
-}
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return 0; }
- struct tl_ds_decrypted_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x588a0a97;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone_number = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->first_name = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->last_name = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return 0; }
- struct tl_ds_decrypted_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0xb095434b;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->str_thumb = fetch_ds_type_bare_bytes (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb_w = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb_h = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file_name = fetch_ds_type_bare_string (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mime_type = fetch_ds_type_bare_string (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key = fetch_ds_type_bare_bytes (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->iv = fetch_ds_type_bare_bytes (field8);
- return result;
-}
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return 0; }
- struct tl_ds_decrypted_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x524a415d;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->str_thumb = fetch_ds_type_bare_bytes (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb_w = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb_h = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mime_type = fetch_ds_type_bare_string (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->w = fetch_ds_type_bare_int (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->h = fetch_ds_type_bare_int (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key = fetch_ds_type_bare_bytes (field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->iv = fetch_ds_type_bare_bytes (field10);
- return result;
-}
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return 0; }
- struct tl_ds_decrypted_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x57e0a9cb;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mime_type = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key = fetch_ds_type_bare_bytes (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->iv = fetch_ds_type_bare_bytes (field5);
- return result;
-}
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_external_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return 0; }
- struct tl_ds_decrypted_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0xfa95b0dd;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mime_type = fetch_ds_type_bare_string (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb = fetch_ds_type_photo_size (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc_id = fetch_ds_type_bare_int (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->attributes = (void *)fetch_ds_type_vector (field8);
- return result;
-}
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_video_l12 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return 0; }
- struct tl_ds_decrypted_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x4cee6ef3;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->str_thumb = fetch_ds_type_bare_bytes (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb_w = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb_h = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->w = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->h = fetch_ds_type_bare_int (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key = fetch_ds_type_bare_bytes (field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->iv = fetch_ds_type_bare_bytes (field9);
- return result;
-}
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_audio_l12 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return 0; }
- struct tl_ds_decrypted_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x6080758f;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key = fetch_ds_type_bare_bytes (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->iv = fetch_ds_type_bare_bytes (field4);
- return result;
-}
-struct tl_ds_dialog *fetch_ds_constructor_dialog (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc1dd804a && T->type->name != 0x3e227fb5)) { return 0; }
- struct tl_ds_dialog * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->peer = fetch_ds_type_peer (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->top_message = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->read_inbox_max_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->unread_count = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->notify_settings = fetch_ds_type_peer_notify_settings (field5);
- return result;
-}
-struct tl_ds_disabled_feature *fetch_ds_constructor_disabled_feature (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae636f24 && T->type->name != 0x519c90db)) { return 0; }
- struct tl_ds_disabled_feature * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->feature = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->description = fetch_ds_type_bare_string (field2);
- return result;
-}
-struct tl_ds_document *fetch_ds_constructor_document_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return 0; }
- struct tl_ds_document * result = talloc0 (sizeof (*result));
- result->magic = 0x36f8c871;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- return result;
-}
-struct tl_ds_document *fetch_ds_constructor_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return 0; }
- struct tl_ds_document * result = talloc0 (sizeof (*result));
- result->magic = 0xf9a39f4f;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mime_type = fetch_ds_type_bare_string (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb = fetch_ds_type_photo_size (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc_id = fetch_ds_type_bare_int (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->attributes = (void *)fetch_ds_type_vector (field8);
- return result;
-}
-struct tl_ds_document *fetch_ds_constructor_document_l19 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return 0; }
- struct tl_ds_document * result = talloc0 (sizeof (*result));
- result->magic = 0x9efc6326;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file_name = fetch_ds_type_bare_string (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mime_type = fetch_ds_type_bare_string (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb = fetch_ds_type_photo_size (field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc_id = fetch_ds_type_bare_int (field9);
- return result;
-}
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_image_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return 0; }
- struct tl_ds_document_attribute * result = talloc0 (sizeof (*result));
- result->magic = 0x6c37c15c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->w = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->h = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_animated (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return 0; }
- struct tl_ds_document_attribute * result = talloc0 (sizeof (*result));
- result->magic = 0x11b58939;
- return result;
-}
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_sticker_l28 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return 0; }
- struct tl_ds_document_attribute * result = talloc0 (sizeof (*result));
- result->magic = 0x994c9882;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->alt = fetch_ds_type_bare_string (field1);
- return result;
-}
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_sticker (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return 0; }
- struct tl_ds_document_attribute * result = talloc0 (sizeof (*result));
- result->magic = 0x3a556302;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->alt = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->stickerset = fetch_ds_type_input_sticker_set (field2);
- return result;
-}
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return 0; }
- struct tl_ds_document_attribute * result = talloc0 (sizeof (*result));
- result->magic = 0x5910cccb;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->w = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->h = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return 0; }
- struct tl_ds_document_attribute * result = talloc0 (sizeof (*result));
- result->magic = 0x051448e5;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_filename (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return 0; }
- struct tl_ds_document_attribute * result = talloc0 (sizeof (*result));
- result->magic = 0x15590068;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file_name = fetch_ds_type_bare_string (field1);
- return result;
-}
-double *fetch_ds_constructor_double (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2210c154 && T->type->name != 0xddef3eab)) { return 0; }
- double * result = talloc0 (sizeof (*result));
- assert (in_remaining () >= 8);
- *result = fetch_double ();
- return result;
-}
-struct tl_ds_encrypted_chat *fetch_ds_constructor_encrypted_chat_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return 0; }
- struct tl_ds_encrypted_chat * result = talloc0 (sizeof (*result));
- result->magic = 0xab7ec0a0;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_encrypted_chat *fetch_ds_constructor_encrypted_chat_waiting (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return 0; }
- struct tl_ds_encrypted_chat * result = talloc0 (sizeof (*result));
- result->magic = 0x3bf703dc;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->admin_id = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->participant_id = fetch_ds_type_bare_int (field5);
- return result;
-}
-struct tl_ds_encrypted_chat *fetch_ds_constructor_encrypted_chat_requested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return 0; }
- struct tl_ds_encrypted_chat * result = talloc0 (sizeof (*result));
- result->magic = 0xc878527e;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->admin_id = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->participant_id = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->g_a = fetch_ds_type_bare_bytes (field6);
- return result;
-}
-struct tl_ds_encrypted_chat *fetch_ds_constructor_encrypted_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return 0; }
- struct tl_ds_encrypted_chat * result = talloc0 (sizeof (*result));
- result->magic = 0xfa56ce36;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->admin_id = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->participant_id = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->g_a_or_b = fetch_ds_type_bare_bytes (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key_fingerprint = fetch_ds_type_bare_long (field7);
- return result;
-}
-struct tl_ds_encrypted_chat *fetch_ds_constructor_encrypted_chat_discarded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return 0; }
- struct tl_ds_encrypted_chat * result = talloc0 (sizeof (*result));
- result->magic = 0x13d6dd27;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_encrypted_file *fetch_ds_constructor_encrypted_file_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return 0; }
- struct tl_ds_encrypted_file * result = talloc0 (sizeof (*result));
- result->magic = 0xc21f497e;
- return result;
-}
-struct tl_ds_encrypted_file *fetch_ds_constructor_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return 0; }
- struct tl_ds_encrypted_file * result = talloc0 (sizeof (*result));
- result->magic = 0x4a70994c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc_id = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key_fingerprint = fetch_ds_type_bare_int (field5);
- return result;
-}
-struct tl_ds_encrypted_message *fetch_ds_constructor_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return 0; }
- struct tl_ds_encrypted_message * result = talloc0 (sizeof (*result));
- result->magic = 0xed18c118;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->random_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->bytes = fetch_ds_type_bare_bytes (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file = fetch_ds_type_encrypted_file (field5);
- return result;
-}
-struct tl_ds_encrypted_message *fetch_ds_constructor_encrypted_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return 0; }
- struct tl_ds_encrypted_message * result = talloc0 (sizeof (*result));
- result->magic = 0x23734b06;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->random_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->bytes = fetch_ds_type_bare_bytes (field4);
- return result;
-}
-struct tl_ds_error *fetch_ds_constructor_error (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc4b9f9bb && T->type->name != 0x3b460644)) { return 0; }
- struct tl_ds_error * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->code = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->text = fetch_ds_type_bare_string (field2);
- return result;
-}
-struct tl_ds_exported_chat_invite *fetch_ds_constructor_chat_invite_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return 0; }
- struct tl_ds_exported_chat_invite * result = talloc0 (sizeof (*result));
- result->magic = 0x69df3769;
- return result;
-}
-struct tl_ds_exported_chat_invite *fetch_ds_constructor_chat_invite_exported (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return 0; }
- struct tl_ds_exported_chat_invite * result = talloc0 (sizeof (*result));
- result->magic = 0xfc2e05bc;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->link = fetch_ds_type_bare_string (field1);
- return result;
-}
-struct tl_ds_file_location *fetch_ds_constructor_file_location_unavailable (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return 0; }
- struct tl_ds_file_location * result = talloc0 (sizeof (*result));
- result->magic = 0x7c596b46;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->volume_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->local_id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->secret = fetch_ds_type_bare_long (field3);
- return result;
-}
-struct tl_ds_file_location *fetch_ds_constructor_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return 0; }
- struct tl_ds_file_location * result = talloc0 (sizeof (*result));
- result->magic = 0x53d69076;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->volume_id = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->local_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->secret = fetch_ds_type_bare_long (field4);
- return result;
-}
-struct tl_ds_geo_chat_message *fetch_ds_constructor_geo_chat_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return 0; }
- struct tl_ds_geo_chat_message * result = talloc0 (sizeof (*result));
- result->magic = 0x60311a9b;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_geo_chat_message *fetch_ds_constructor_geo_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return 0; }
- struct tl_ds_geo_chat_message * result = talloc0 (sizeof (*result));
- result->magic = 0x4505f8e1;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->from_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->message = fetch_ds_type_bare_string (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->media = fetch_ds_type_message_media (field6);
- return result;
-}
-struct tl_ds_geo_chat_message *fetch_ds_constructor_geo_chat_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return 0; }
- struct tl_ds_geo_chat_message * result = talloc0 (sizeof (*result));
- result->magic = 0xd34fa24e;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->from_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->action = fetch_ds_type_message_action (field5);
- return result;
-}
-struct tl_ds_geo_point *fetch_ds_constructor_geo_point_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return 0; }
- struct tl_ds_geo_point * result = talloc0 (sizeof (*result));
- result->magic = 0x1117dd5f;
- return result;
-}
-struct tl_ds_geo_point *fetch_ds_constructor_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return 0; }
- struct tl_ds_geo_point * result = talloc0 (sizeof (*result));
- result->magic = 0x2049d70c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->longitude = fetch_ds_type_bare_double (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->latitude = fetch_ds_type_bare_double (field2);
- return result;
-}
-struct tl_ds_imported_contact *fetch_ds_constructor_imported_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd0028438 && T->type->name != 0x2ffd7bc7)) { return 0; }
- struct tl_ds_imported_contact * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->client_id = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_app_event *fetch_ds_constructor_input_app_event (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x770656a8 && T->type->name != 0x88f9a957)) { return 0; }
- struct tl_ds_input_app_event * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->time = fetch_ds_type_bare_double (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->type = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->peer = fetch_ds_type_bare_long (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->data = fetch_ds_type_bare_string (field4);
- return result;
-}
-struct tl_ds_input_audio *fetch_ds_constructor_input_audio_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return 0; }
- struct tl_ds_input_audio * result = talloc0 (sizeof (*result));
- result->magic = 0xd95adc84;
- return result;
-}
-struct tl_ds_input_audio *fetch_ds_constructor_input_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return 0; }
- struct tl_ds_input_audio * result = talloc0 (sizeof (*result));
- result->magic = 0x77d440ff;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_chat_photo *fetch_ds_constructor_input_chat_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return 0; }
- struct tl_ds_input_chat_photo * result = talloc0 (sizeof (*result));
- result->magic = 0x1ca48f57;
- return result;
-}
-struct tl_ds_input_chat_photo *fetch_ds_constructor_input_chat_uploaded_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return 0; }
- struct tl_ds_input_chat_photo * result = talloc0 (sizeof (*result));
- result->magic = 0x94254732;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file = fetch_ds_type_input_file (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->crop = fetch_ds_type_input_photo_crop (field2);
- return result;
-}
-struct tl_ds_input_chat_photo *fetch_ds_constructor_input_chat_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return 0; }
- struct tl_ds_input_chat_photo * result = talloc0 (sizeof (*result));
- result->magic = 0xb2e1bf08;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_input_photo (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->crop = fetch_ds_type_input_photo_crop (field2);
- return result;
-}
-struct tl_ds_input_contact *fetch_ds_constructor_input_phone_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf392b7f4 && T->type->name != 0x0c6d480b)) { return 0; }
- struct tl_ds_input_contact * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->client_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->first_name = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->last_name = fetch_ds_type_bare_string (field4);
- return result;
-}
-struct tl_ds_input_document *fetch_ds_constructor_input_document_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return 0; }
- struct tl_ds_input_document * result = talloc0 (sizeof (*result));
- result->magic = 0x72f0eaae;
- return result;
-}
-struct tl_ds_input_document *fetch_ds_constructor_input_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return 0; }
- struct tl_ds_input_document * result = talloc0 (sizeof (*result));
- result->magic = 0x18798952;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_encrypted_chat *fetch_ds_constructor_input_encrypted_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf141b5e1 && T->type->name != 0x0ebe4a1e)) { return 0; }
- struct tl_ds_input_encrypted_chat * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_encrypted_file *fetch_ds_constructor_input_encrypted_file_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return 0; }
- struct tl_ds_input_encrypted_file * result = talloc0 (sizeof (*result));
- result->magic = 0x1837c364;
- return result;
-}
-struct tl_ds_input_encrypted_file *fetch_ds_constructor_input_encrypted_file_uploaded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return 0; }
- struct tl_ds_input_encrypted_file * result = talloc0 (sizeof (*result));
- result->magic = 0x64bd0306;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->parts = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->md5_checksum = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key_fingerprint = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_input_encrypted_file *fetch_ds_constructor_input_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return 0; }
- struct tl_ds_input_encrypted_file * result = talloc0 (sizeof (*result));
- result->magic = 0x5a17b5e5;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_encrypted_file *fetch_ds_constructor_input_encrypted_file_big_uploaded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return 0; }
- struct tl_ds_input_encrypted_file * result = talloc0 (sizeof (*result));
- result->magic = 0x2dc173c8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->parts = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key_fingerprint = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_input_file *fetch_ds_constructor_input_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return 0; }
- struct tl_ds_input_file * result = talloc0 (sizeof (*result));
- result->magic = 0xf52ff27f;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->parts = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->name = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->md5_checksum = fetch_ds_type_bare_string (field4);
- return result;
-}
-struct tl_ds_input_file *fetch_ds_constructor_input_file_big (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return 0; }
- struct tl_ds_input_file * result = talloc0 (sizeof (*result));
- result->magic = 0xfa4f0bb5;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->parts = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->name = fetch_ds_type_bare_string (field3);
- return result;
-}
-struct tl_ds_input_file_location *fetch_ds_constructor_input_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return 0; }
- struct tl_ds_input_file_location * result = talloc0 (sizeof (*result));
- result->magic = 0x14637196;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->volume_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->local_id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->secret = fetch_ds_type_bare_long (field3);
- return result;
-}
-struct tl_ds_input_file_location *fetch_ds_constructor_input_video_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return 0; }
- struct tl_ds_input_file_location * result = talloc0 (sizeof (*result));
- result->magic = 0x3d0364ec;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_file_location *fetch_ds_constructor_input_encrypted_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return 0; }
- struct tl_ds_input_file_location * result = talloc0 (sizeof (*result));
- result->magic = 0xf5235d55;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_file_location *fetch_ds_constructor_input_audio_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return 0; }
- struct tl_ds_input_file_location * result = talloc0 (sizeof (*result));
- result->magic = 0x74dc404d;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_file_location *fetch_ds_constructor_input_document_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return 0; }
- struct tl_ds_input_file_location * result = talloc0 (sizeof (*result));
- result->magic = 0x4e45abe9;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_geo_chat *fetch_ds_constructor_input_geo_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x74d456fa && T->type->name != 0x8b2ba905)) { return 0; }
- struct tl_ds_input_geo_chat * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_geo_point *fetch_ds_constructor_input_geo_point_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return 0; }
- struct tl_ds_input_geo_point * result = talloc0 (sizeof (*result));
- result->magic = 0xe4c123d6;
- return result;
-}
-struct tl_ds_input_geo_point *fetch_ds_constructor_input_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return 0; }
- struct tl_ds_input_geo_point * result = talloc0 (sizeof (*result));
- result->magic = 0xf3b7acc9;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->latitude = fetch_ds_type_bare_double (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->longitude = fetch_ds_type_bare_double (field2);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0x9664f57f;
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_uploaded_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0xf7aff1c0;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file = fetch_ds_type_input_file (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->caption = fetch_ds_type_bare_string (field2);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0xe9bfb4f3;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_input_photo (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->caption = fetch_ds_type_bare_string (field2);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0xf9c44144;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->geo_point = fetch_ds_type_input_geo_point (field1);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0xa6e45987;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone_number = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->first_name = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->last_name = fetch_ds_type_bare_string (field3);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_uploaded_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0xe13fd4bc;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file = fetch_ds_type_input_file (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->w = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->h = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->caption = fetch_ds_type_bare_string (field5);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_uploaded_thumb_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0x96fb97dc;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file = fetch_ds_type_input_file (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb = fetch_ds_type_input_file (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->w = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->h = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->caption = fetch_ds_type_bare_string (field6);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0x936a4ebd;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbb5f7a27, .id = "InputVideo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->video_id = fetch_ds_type_input_video (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->caption = fetch_ds_type_bare_string (field2);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_uploaded_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0x4e498cab;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file = fetch_ds_type_input_file (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mime_type = fetch_ds_type_bare_string (field3);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0x89938781;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae8e9c7b, .id = "InputAudio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->audio_id = fetch_ds_type_input_audio (field1);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_uploaded_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0xffe76b78;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file = fetch_ds_type_input_file (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mime_type = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->attributes = (void *)fetch_ds_type_vector (field3);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_uploaded_thumb_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0x41481486;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file = fetch_ds_type_input_file (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb = fetch_ds_type_input_file (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mime_type = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->attributes = (void *)fetch_ds_type_vector (field4);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0xd184e841;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6a8963fc, .id = "InputDocument", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->document_id = fetch_ds_type_input_document (field1);
- return result;
-}
-struct tl_ds_input_media *fetch_ds_constructor_input_media_venue (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return 0; }
- struct tl_ds_input_media * result = talloc0 (sizeof (*result));
- result->magic = 0x2827a81a;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->geo_point = fetch_ds_type_input_geo_point (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->address = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->provider = fetch_ds_type_bare_string (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->venue_id = fetch_ds_type_bare_string (field5);
- return result;
-}
-struct tl_ds_input_notify_peer *fetch_ds_constructor_input_notify_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return 0; }
- struct tl_ds_input_notify_peer * result = talloc0 (sizeof (*result));
- result->magic = 0xb8bc5b0c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->peer = fetch_ds_type_input_peer (field1);
- return result;
-}
-struct tl_ds_input_notify_peer *fetch_ds_constructor_input_notify_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return 0; }
- struct tl_ds_input_notify_peer * result = talloc0 (sizeof (*result));
- result->magic = 0x193b4417;
- return result;
-}
-struct tl_ds_input_notify_peer *fetch_ds_constructor_input_notify_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return 0; }
- struct tl_ds_input_notify_peer * result = talloc0 (sizeof (*result));
- result->magic = 0x4a95e84e;
- return result;
-}
-struct tl_ds_input_notify_peer *fetch_ds_constructor_input_notify_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return 0; }
- struct tl_ds_input_notify_peer * result = talloc0 (sizeof (*result));
- result->magic = 0xa429b886;
- return result;
-}
-struct tl_ds_input_notify_peer *fetch_ds_constructor_input_notify_geo_chat_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return 0; }
- struct tl_ds_input_notify_peer * result = talloc0 (sizeof (*result));
- result->magic = 0x4d8ddec8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->geo_peer = fetch_ds_type_input_geo_chat (field1);
- return result;
-}
-struct tl_ds_input_peer *fetch_ds_constructor_input_peer_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return 0; }
- struct tl_ds_input_peer * result = talloc0 (sizeof (*result));
- result->magic = 0x7f3b18ea;
- return result;
-}
-struct tl_ds_input_peer *fetch_ds_constructor_input_peer_self (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return 0; }
- struct tl_ds_input_peer * result = talloc0 (sizeof (*result));
- result->magic = 0x7da07ec9;
- return result;
-}
-struct tl_ds_input_peer *fetch_ds_constructor_input_peer_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return 0; }
- struct tl_ds_input_peer * result = talloc0 (sizeof (*result));
- result->magic = 0x1023dbe8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_input_peer *fetch_ds_constructor_input_peer_foreign (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return 0; }
- struct tl_ds_input_peer * result = talloc0 (sizeof (*result));
- result->magic = 0x9b447325;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_peer *fetch_ds_constructor_input_peer_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return 0; }
- struct tl_ds_input_peer * result = talloc0 (sizeof (*result));
- result->magic = 0x179be863;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_input_peer_notify_events *fetch_ds_constructor_input_peer_notify_events_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return 0; }
- struct tl_ds_input_peer_notify_events * result = talloc0 (sizeof (*result));
- result->magic = 0xf03064d8;
- return result;
-}
-struct tl_ds_input_peer_notify_events *fetch_ds_constructor_input_peer_notify_events_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return 0; }
- struct tl_ds_input_peer_notify_events * result = talloc0 (sizeof (*result));
- result->magic = 0xe86a2c74;
- return result;
-}
-struct tl_ds_input_peer_notify_settings *fetch_ds_constructor_input_peer_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x46a2ce98 && T->type->name != 0xb95d3167)) { return 0; }
- struct tl_ds_input_peer_notify_settings * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mute_until = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->sound = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->show_previews = fetch_ds_type_bool (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->events_mask = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_input_photo *fetch_ds_constructor_input_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return 0; }
- struct tl_ds_input_photo * result = talloc0 (sizeof (*result));
- result->magic = 0x1cd7bf0d;
- return result;
-}
-struct tl_ds_input_photo *fetch_ds_constructor_input_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return 0; }
- struct tl_ds_input_photo * result = talloc0 (sizeof (*result));
- result->magic = 0xfb95c6c4;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_photo_crop *fetch_ds_constructor_input_photo_crop_auto (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return 0; }
- struct tl_ds_input_photo_crop * result = talloc0 (sizeof (*result));
- result->magic = 0xade6b004;
- return result;
-}
-struct tl_ds_input_photo_crop *fetch_ds_constructor_input_photo_crop (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return 0; }
- struct tl_ds_input_photo_crop * result = talloc0 (sizeof (*result));
- result->magic = 0xd9915325;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->crop_left = fetch_ds_type_bare_double (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->crop_top = fetch_ds_type_bare_double (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->crop_width = fetch_ds_type_bare_double (field3);
- return result;
-}
-struct tl_ds_input_privacy_key *fetch_ds_constructor_input_privacy_key_status_timestamp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4f96cb18 && T->type->name != 0xb06934e7)) { return 0; }
- struct tl_ds_input_privacy_key * result = talloc0 (sizeof (*result));
- return result;
-}
-struct tl_ds_input_privacy_rule *fetch_ds_constructor_input_privacy_value_allow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return 0; }
- struct tl_ds_input_privacy_rule * result = talloc0 (sizeof (*result));
- result->magic = 0x0d09e07b;
- return result;
-}
-struct tl_ds_input_privacy_rule *fetch_ds_constructor_input_privacy_value_allow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return 0; }
- struct tl_ds_input_privacy_rule * result = talloc0 (sizeof (*result));
- result->magic = 0x184b35ce;
- return result;
-}
-struct tl_ds_input_privacy_rule *fetch_ds_constructor_input_privacy_value_allow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return 0; }
- struct tl_ds_input_privacy_rule * result = talloc0 (sizeof (*result));
- result->magic = 0x131cc67f;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field1);
- return result;
-}
-struct tl_ds_input_privacy_rule *fetch_ds_constructor_input_privacy_value_disallow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return 0; }
- struct tl_ds_input_privacy_rule * result = talloc0 (sizeof (*result));
- result->magic = 0x0ba52007;
- return result;
-}
-struct tl_ds_input_privacy_rule *fetch_ds_constructor_input_privacy_value_disallow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return 0; }
- struct tl_ds_input_privacy_rule * result = talloc0 (sizeof (*result));
- result->magic = 0xd66b66c9;
- return result;
-}
-struct tl_ds_input_privacy_rule *fetch_ds_constructor_input_privacy_value_disallow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return 0; }
- struct tl_ds_input_privacy_rule * result = talloc0 (sizeof (*result));
- result->magic = 0x90110467;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field1);
- return result;
-}
-struct tl_ds_input_sticker_set *fetch_ds_constructor_input_sticker_set_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return 0; }
- struct tl_ds_input_sticker_set * result = talloc0 (sizeof (*result));
- result->magic = 0xffb62b95;
- return result;
-}
-struct tl_ds_input_sticker_set *fetch_ds_constructor_input_sticker_set_i_d (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return 0; }
- struct tl_ds_input_sticker_set * result = talloc0 (sizeof (*result));
- result->magic = 0x9de7a269;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_sticker_set *fetch_ds_constructor_input_sticker_set_short_name (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return 0; }
- struct tl_ds_input_sticker_set * result = talloc0 (sizeof (*result));
- result->magic = 0x861cc8a0;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->short_name = fetch_ds_type_bare_string (field1);
- return result;
-}
-struct tl_ds_input_user *fetch_ds_constructor_input_user_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return 0; }
- struct tl_ds_input_user * result = talloc0 (sizeof (*result));
- result->magic = 0xb98886cf;
- return result;
-}
-struct tl_ds_input_user *fetch_ds_constructor_input_user_self (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return 0; }
- struct tl_ds_input_user * result = talloc0 (sizeof (*result));
- result->magic = 0xf7c1b13f;
- return result;
-}
-struct tl_ds_input_user *fetch_ds_constructor_input_user_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return 0; }
- struct tl_ds_input_user * result = talloc0 (sizeof (*result));
- result->magic = 0x86e94f65;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_input_user *fetch_ds_constructor_input_user_foreign (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return 0; }
- struct tl_ds_input_user * result = talloc0 (sizeof (*result));
- result->magic = 0x655e74ff;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_input_video *fetch_ds_constructor_input_video_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return 0; }
- struct tl_ds_input_video * result = talloc0 (sizeof (*result));
- result->magic = 0x5508ec75;
- return result;
-}
-struct tl_ds_input_video *fetch_ds_constructor_input_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return 0; }
- struct tl_ds_input_video * result = talloc0 (sizeof (*result));
- result->magic = 0xee579652;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- return result;
-}
-int *fetch_ds_constructor_int (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8509bda && T->type->name != 0x57af6425)) { return 0; }
- int * result = talloc0 (sizeof (*result));
- assert (in_remaining () >= 4);
- *result = fetch_int ();
- return result;
-}
-struct tl_ds_int128 *fetch_ds_constructor_int128 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7d36c439 && T->type->name != 0x82c93bc6)) { return 0; }
- struct tl_ds_int128 * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->f0 = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->f1 = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_int256 *fetch_ds_constructor_int256 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf2c798b3 && T->type->name != 0x0d38674c)) { return 0; }
- struct tl_ds_int256 * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->f0 = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->f1 = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->f2 = fetch_ds_type_bare_long (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->f3 = fetch_ds_type_bare_long (field4);
- return result;
-}
-struct tl_ds_keyboard_button *fetch_ds_constructor_keyboard_button (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa2fa4880 && T->type->name != 0x5d05b77f)) { return 0; }
- struct tl_ds_keyboard_button * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->text = fetch_ds_type_bare_string (field1);
- return result;
-}
-struct tl_ds_keyboard_button_row *fetch_ds_constructor_keyboard_button_row (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77608b83 && T->type->name != 0x889f747c)) { return 0; }
- struct tl_ds_keyboard_button_row * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa2fa4880, .id = "KeyboardButton", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->buttons = (void *)fetch_ds_type_vector (field1);
- return result;
-}
-long long *fetch_ds_constructor_long (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22076cba && T->type->name != 0xddf89345)) { return 0; }
- long long * result = talloc0 (sizeof (*result));
- assert (in_remaining () >= 8);
- *result = fetch_long ();
- return result;
-}
-struct tl_ds_message *fetch_ds_constructor_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return 0; }
- struct tl_ds_message * result = talloc0 (sizeof (*result));
- result->magic = 0x83e5de54;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_message *fetch_ds_constructor_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return 0; }
- struct tl_ds_message * result = talloc0 (sizeof (*result));
- result->magic = 0xc3060325;
- assert (in_remaining () >= 4);
- result->flags = talloc (4); *result->flags = prefetch_int (); struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->from_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->to_id = fetch_ds_type_peer (field4);
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->fwd_from_id = fetch_ds_type_bare_int (field5);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->fwd_date = fetch_ds_type_bare_int (field6);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->reply_to_msg_id = fetch_ds_type_bare_int (field7);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->message = fetch_ds_type_bare_string (field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->media = fetch_ds_type_message_media (field10);
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->reply_markup = fetch_ds_type_reply_markup (field11);
- }
- return result;
-}
-struct tl_ds_message *fetch_ds_constructor_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return 0; }
- struct tl_ds_message * result = talloc0 (sizeof (*result));
- result->magic = 0x1d86f70e;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->flags = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->from_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->to_id = fetch_ds_type_peer (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->action = fetch_ds_type_message_action (field6);
- return result;
-}
-struct tl_ds_message_action *fetch_ds_constructor_message_action_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return 0; }
- struct tl_ds_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xb6aef7b0;
- return result;
-}
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_create (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return 0; }
- struct tl_ds_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xa6638b9a;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field2);
- return result;
-}
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_edit_title (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return 0; }
- struct tl_ds_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xb5a1ce5a;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field1);
- return result;
-}
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_edit_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return 0; }
- struct tl_ds_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x7fcb13a8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo = fetch_ds_type_photo (field1);
- return result;
-}
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_delete_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return 0; }
- struct tl_ds_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x95e3fbef;
- return result;
-}
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_add_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return 0; }
- struct tl_ds_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x5e3cfc4b;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_delete_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return 0; }
- struct tl_ds_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xb2ae9b0c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_message_action *fetch_ds_constructor_message_action_geo_chat_create (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return 0; }
- struct tl_ds_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x6f038ebc;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->address = fetch_ds_type_bare_string (field2);
- return result;
-}
-struct tl_ds_message_action *fetch_ds_constructor_message_action_geo_chat_checkin (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return 0; }
- struct tl_ds_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x0c7d53de;
- return result;
-}
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_joined_by_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return 0; }
- struct tl_ds_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xf89cf5e8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->inviter_id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_message_media *fetch_ds_constructor_message_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return 0; }
- struct tl_ds_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x3ded6320;
- return result;
-}
-struct tl_ds_message_media *fetch_ds_constructor_message_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return 0; }
- struct tl_ds_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x3d8ce53d;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo = fetch_ds_type_photo (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->caption = fetch_ds_type_bare_string (field2);
- return result;
-}
-struct tl_ds_message_media *fetch_ds_constructor_message_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return 0; }
- struct tl_ds_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x5bcf1675;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->video = fetch_ds_type_video (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->caption = fetch_ds_type_bare_string (field2);
- return result;
-}
-struct tl_ds_message_media *fetch_ds_constructor_message_media_geo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return 0; }
- struct tl_ds_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x56e0d474;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->geo = fetch_ds_type_geo_point (field1);
- return result;
-}
-struct tl_ds_message_media *fetch_ds_constructor_message_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return 0; }
- struct tl_ds_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x5e7d2f39;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone_number = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->first_name = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->last_name = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_message_media *fetch_ds_constructor_message_media_unsupported (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return 0; }
- struct tl_ds_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x9f84f49e;
- return result;
-}
-struct tl_ds_message_media *fetch_ds_constructor_message_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return 0; }
- struct tl_ds_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x2fda2204;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->document = fetch_ds_type_document (field1);
- return result;
-}
-struct tl_ds_message_media *fetch_ds_constructor_message_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return 0; }
- struct tl_ds_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0xc6b68300;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fc5ec4e, .id = "Audio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->audio = fetch_ds_type_audio (field1);
- return result;
-}
-struct tl_ds_message_media *fetch_ds_constructor_message_media_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return 0; }
- struct tl_ds_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0xa32dd600;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->webpage = fetch_ds_type_web_page (field1);
- return result;
-}
-struct tl_ds_message_media *fetch_ds_constructor_message_media_venue (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return 0; }
- struct tl_ds_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0x7912b71f;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->geo = fetch_ds_type_geo_point (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->address = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->provider = fetch_ds_type_bare_string (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->venue_id = fetch_ds_type_bare_string (field5);
- return result;
-}
-struct tl_ds_message_media *fetch_ds_constructor_message_media_photo_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return 0; }
- struct tl_ds_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0xc8c45a2a;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo = fetch_ds_type_photo (field1);
- return result;
-}
-struct tl_ds_message_media *fetch_ds_constructor_message_media_video_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return 0; }
- struct tl_ds_message_media * result = talloc0 (sizeof (*result));
- result->magic = 0xa2d24290;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->video = fetch_ds_type_video (field1);
- return result;
-}
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return 0; }
- struct tl_ds_messages_filter * result = talloc0 (sizeof (*result));
- result->magic = 0x57e2f66c;
- return result;
-}
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_photos (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return 0; }
- struct tl_ds_messages_filter * result = talloc0 (sizeof (*result));
- result->magic = 0x9609a51c;
- return result;
-}
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return 0; }
- struct tl_ds_messages_filter * result = talloc0 (sizeof (*result));
- result->magic = 0x9fc00e65;
- return result;
-}
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_photo_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return 0; }
- struct tl_ds_messages_filter * result = talloc0 (sizeof (*result));
- result->magic = 0x56e9f0e4;
- return result;
-}
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_photo_video_documents (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return 0; }
- struct tl_ds_messages_filter * result = talloc0 (sizeof (*result));
- result->magic = 0xd95e73bb;
- return result;
-}
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return 0; }
- struct tl_ds_messages_filter * result = talloc0 (sizeof (*result));
- result->magic = 0x9eddf188;
- return result;
-}
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return 0; }
- struct tl_ds_messages_filter * result = talloc0 (sizeof (*result));
- result->magic = 0xcfc87522;
- return result;
-}
-struct tl_ds_nearest_dc *fetch_ds_constructor_nearest_dc (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8e1a1775 && T->type->name != 0x71e5e88a)) { return 0; }
- struct tl_ds_nearest_dc * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->country = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->this_dc = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->nearest_dc = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_notify_peer *fetch_ds_constructor_notify_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return 0; }
- struct tl_ds_notify_peer * result = talloc0 (sizeof (*result));
- result->magic = 0x9fd40bd8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->peer = fetch_ds_type_peer (field1);
- return result;
-}
-struct tl_ds_notify_peer *fetch_ds_constructor_notify_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return 0; }
- struct tl_ds_notify_peer * result = talloc0 (sizeof (*result));
- result->magic = 0xb4c83b4c;
- return result;
-}
-struct tl_ds_notify_peer *fetch_ds_constructor_notify_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return 0; }
- struct tl_ds_notify_peer * result = talloc0 (sizeof (*result));
- result->magic = 0xc007cec3;
- return result;
-}
-struct tl_ds_notify_peer *fetch_ds_constructor_notify_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return 0; }
- struct tl_ds_notify_peer * result = talloc0 (sizeof (*result));
- result->magic = 0x74d07c60;
- return result;
-}
-struct tl_ds_null *fetch_ds_constructor_null (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56730bcc && T->type->name != 0xa98cf433)) { return 0; }
- struct tl_ds_null * result = talloc0 (sizeof (*result));
- return result;
-}
-struct tl_ds_p_q_inner_data *fetch_ds_constructor_p_q_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return 0; }
- struct tl_ds_p_q_inner_data * result = talloc0 (sizeof (*result));
- result->magic = 0x83c95aec;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pq = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->p = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->q = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->nonce = fetch_ds_type_bare_int128 (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->server_nonce = fetch_ds_type_bare_int128 (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->new_nonce = fetch_ds_type_bare_int256 (field6);
- return result;
-}
-struct tl_ds_p_q_inner_data *fetch_ds_constructor_p_q_inner_data_temp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return 0; }
- struct tl_ds_p_q_inner_data * result = talloc0 (sizeof (*result));
- result->magic = 0x3c6a84d4;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pq = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->p = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->q = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->nonce = fetch_ds_type_bare_int128 (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->server_nonce = fetch_ds_type_bare_int128 (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->new_nonce = fetch_ds_type_bare_int256 (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->expires_in = fetch_ds_type_bare_int (field7);
- return result;
-}
-struct tl_ds_peer *fetch_ds_constructor_peer_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return 0; }
- struct tl_ds_peer * result = talloc0 (sizeof (*result));
- result->magic = 0x9db1bc6d;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_peer *fetch_ds_constructor_peer_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return 0; }
- struct tl_ds_peer * result = talloc0 (sizeof (*result));
- result->magic = 0xbad0e5bb;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_peer_notify_events *fetch_ds_constructor_peer_notify_events_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return 0; }
- struct tl_ds_peer_notify_events * result = talloc0 (sizeof (*result));
- result->magic = 0xadd53cb3;
- return result;
-}
-struct tl_ds_peer_notify_events *fetch_ds_constructor_peer_notify_events_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return 0; }
- struct tl_ds_peer_notify_events * result = talloc0 (sizeof (*result));
- result->magic = 0x6d1ded88;
- return result;
-}
-struct tl_ds_peer_notify_settings *fetch_ds_constructor_peer_notify_settings_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return 0; }
- struct tl_ds_peer_notify_settings * result = talloc0 (sizeof (*result));
- result->magic = 0x70a68512;
- return result;
-}
-struct tl_ds_peer_notify_settings *fetch_ds_constructor_peer_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return 0; }
- struct tl_ds_peer_notify_settings * result = talloc0 (sizeof (*result));
- result->magic = 0x8d5e11ee;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mute_until = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->sound = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->show_previews = fetch_ds_type_bool (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->events_mask = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_photo *fetch_ds_constructor_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return 0; }
- struct tl_ds_photo * result = talloc0 (sizeof (*result));
- result->magic = 0x2331b22d;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- return result;
-}
-struct tl_ds_photo *fetch_ds_constructor_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return 0; }
- struct tl_ds_photo * result = talloc0 (sizeof (*result));
- result->magic = 0xc3838076;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->geo = fetch_ds_type_geo_point (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->sizes = (void *)fetch_ds_type_vector (field6);
- return result;
-}
-struct tl_ds_photo *fetch_ds_constructor_photo_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return 0; }
- struct tl_ds_photo * result = talloc0 (sizeof (*result));
- result->magic = 0x22b56751;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->caption = fetch_ds_type_bare_string (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->geo = fetch_ds_type_geo_point (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->sizes = (void *)fetch_ds_type_vector (field7);
- return result;
-}
-struct tl_ds_photo_size *fetch_ds_constructor_photo_size_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return 0; }
- struct tl_ds_photo_size * result = talloc0 (sizeof (*result));
- result->magic = 0x0e17e23c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->type = fetch_ds_type_bare_string (field1);
- return result;
-}
-struct tl_ds_photo_size *fetch_ds_constructor_photo_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return 0; }
- struct tl_ds_photo_size * result = talloc0 (sizeof (*result));
- result->magic = 0x77bfb61b;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->type = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->location = fetch_ds_type_file_location (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->w = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->h = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field5);
- return result;
-}
-struct tl_ds_photo_size *fetch_ds_constructor_photo_cached_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return 0; }
- struct tl_ds_photo_size * result = talloc0 (sizeof (*result));
- result->magic = 0xe9a734fa;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->type = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->location = fetch_ds_type_file_location (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->w = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->h = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->bytes = fetch_ds_type_bare_bytes (field5);
- return result;
-}
-struct tl_ds_privacy_key *fetch_ds_constructor_privacy_key_status_timestamp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbc2eab30 && T->type->name != 0x43d154cf)) { return 0; }
- struct tl_ds_privacy_key * result = talloc0 (sizeof (*result));
- return result;
-}
-struct tl_ds_privacy_rule *fetch_ds_constructor_privacy_value_allow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return 0; }
- struct tl_ds_privacy_rule * result = talloc0 (sizeof (*result));
- result->magic = 0xfffe1bac;
- return result;
-}
-struct tl_ds_privacy_rule *fetch_ds_constructor_privacy_value_allow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return 0; }
- struct tl_ds_privacy_rule * result = talloc0 (sizeof (*result));
- result->magic = 0x65427b82;
- return result;
-}
-struct tl_ds_privacy_rule *fetch_ds_constructor_privacy_value_allow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return 0; }
- struct tl_ds_privacy_rule * result = talloc0 (sizeof (*result));
- result->magic = 0x4d5bbe0c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field1);
- return result;
-}
-struct tl_ds_privacy_rule *fetch_ds_constructor_privacy_value_disallow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return 0; }
- struct tl_ds_privacy_rule * result = talloc0 (sizeof (*result));
- result->magic = 0xf888fa1a;
- return result;
-}
-struct tl_ds_privacy_rule *fetch_ds_constructor_privacy_value_disallow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return 0; }
- struct tl_ds_privacy_rule * result = talloc0 (sizeof (*result));
- result->magic = 0x8b73e763;
- return result;
-}
-struct tl_ds_privacy_rule *fetch_ds_constructor_privacy_value_disallow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return 0; }
- struct tl_ds_privacy_rule * result = talloc0 (sizeof (*result));
- result->magic = 0x0c7f49b7;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field1);
- return result;
-}
-struct tl_ds_received_notify_message *fetch_ds_constructor_received_notify_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa384b779 && T->type->name != 0x5c7b4886)) { return 0; }
- struct tl_ds_received_notify_message * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->flags = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_reply_markup *fetch_ds_constructor_reply_keyboard_hide (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return 0; }
- struct tl_ds_reply_markup * result = talloc0 (sizeof (*result));
- result->magic = 0xa03e5b85;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->flags = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_reply_markup *fetch_ds_constructor_reply_keyboard_force_reply (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return 0; }
- struct tl_ds_reply_markup * result = talloc0 (sizeof (*result));
- result->magic = 0xf4108aa0;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->flags = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_reply_markup *fetch_ds_constructor_reply_keyboard_markup (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return 0; }
- struct tl_ds_reply_markup * result = talloc0 (sizeof (*result));
- result->magic = 0x3502758c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->flags = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77608b83, .id = "KeyboardButtonRow", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->rows = (void *)fetch_ds_type_vector (field2);
- return result;
-}
-struct tl_ds_res_p_q *fetch_ds_constructor_res_p_q (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x05162463 && T->type->name != 0xfae9db9c)) { return 0; }
- struct tl_ds_res_p_q * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->nonce = fetch_ds_type_bare_int128 (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->server_nonce = fetch_ds_type_bare_int128 (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pq = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->server_public_key_fingerprints = (void *)fetch_ds_type_vector (field4);
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_typing_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x16bf744e;
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_cancel_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xfd5ec8f5;
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_record_video_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xa187d66f;
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_video_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x92042ff7;
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_video_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xe9763aec;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->progress = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_record_audio_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xd52f73f7;
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_audio_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xe6ac8a6f;
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_audio_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xf351d7ab;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->progress = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_photo_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xd1d34a26;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->progress = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_document_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x8faee98e;
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_document_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0xaa0cd9e4;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->progress = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_geo_location_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x176f8ba1;
- return result;
-}
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_choose_contact_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return 0; }
- struct tl_ds_send_message_action * result = talloc0 (sizeof (*result));
- result->magic = 0x628cbc6f;
- return result;
-}
-struct tl_ds_server_d_h_params *fetch_ds_constructor_server_d_h_params_fail (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return 0; }
- struct tl_ds_server_d_h_params * result = talloc0 (sizeof (*result));
- result->magic = 0x79cb045d;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->nonce = fetch_ds_type_bare_int128 (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->server_nonce = fetch_ds_type_bare_int128 (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->new_nonce_hash = fetch_ds_type_bare_int128 (field3);
- return result;
-}
-struct tl_ds_server_d_h_params *fetch_ds_constructor_server_d_h_params_ok (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return 0; }
- struct tl_ds_server_d_h_params * result = talloc0 (sizeof (*result));
- result->magic = 0xd0e8075c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->nonce = fetch_ds_type_bare_int128 (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->server_nonce = fetch_ds_type_bare_int128 (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->encrypted_answer = fetch_ds_type_bare_string (field3);
- return result;
-}
-struct tl_ds_server_d_h_inner_data *fetch_ds_constructor_server_d_h_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5890dba && T->type->name != 0x4a76f245)) { return 0; }
- struct tl_ds_server_d_h_inner_data * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->nonce = fetch_ds_type_bare_int128 (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->server_nonce = fetch_ds_type_bare_int128 (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->g = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dh_prime = fetch_ds_type_bare_string (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->g_a = fetch_ds_type_bare_string (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->server_time = fetch_ds_type_bare_int (field6);
- return result;
-}
-struct tl_ds_set_client_d_h_params_answer *fetch_ds_constructor_dh_gen_ok (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return 0; }
- struct tl_ds_set_client_d_h_params_answer * result = talloc0 (sizeof (*result));
- result->magic = 0x3bcbf734;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->nonce = fetch_ds_type_bare_int128 (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->server_nonce = fetch_ds_type_bare_int128 (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->new_nonce_hash1 = fetch_ds_type_bare_int128 (field3);
- return result;
-}
-struct tl_ds_set_client_d_h_params_answer *fetch_ds_constructor_dh_gen_retry (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return 0; }
- struct tl_ds_set_client_d_h_params_answer * result = talloc0 (sizeof (*result));
- result->magic = 0x46dc1fb9;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->nonce = fetch_ds_type_bare_int128 (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->server_nonce = fetch_ds_type_bare_int128 (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->new_nonce_hash2 = fetch_ds_type_bare_int128 (field3);
- return result;
-}
-struct tl_ds_set_client_d_h_params_answer *fetch_ds_constructor_dh_gen_fail (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return 0; }
- struct tl_ds_set_client_d_h_params_answer * result = talloc0 (sizeof (*result));
- result->magic = 0xa69dae02;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->nonce = fetch_ds_type_bare_int128 (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->server_nonce = fetch_ds_type_bare_int128 (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->new_nonce_hash3 = fetch_ds_type_bare_int128 (field3);
- return result;
-}
-struct tl_ds_sticker_pack *fetch_ds_constructor_sticker_pack (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x12b299d4 && T->type->name != 0xed4d662b)) { return 0; }
- struct tl_ds_sticker_pack * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->emoticon = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->documents = (void *)fetch_ds_type_vector (field2);
- return result;
-}
-struct tl_ds_sticker_set *fetch_ds_constructor_sticker_set (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa7a43b17 && T->type->name != 0x585bc4e8)) { return 0; }
- struct tl_ds_sticker_set * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->short_name = fetch_ds_type_bare_string (field4);
- return result;
-}
-struct tl_ds_string *fetch_ds_constructor_string (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5286e24 && T->type->name != 0x4ad791db)) { return 0; }
- struct tl_ds_string * result = talloc0 (sizeof (*result));
- assert (in_remaining () >= 4);
- int l = prefetch_strlen ();
- assert (l >= 0);
- result->len = l;
- result->data = talloc (l + 1);
- result->data[l] = 0;
- memcpy (result->data, fetch_str (l), l);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_new_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x1f2b0afd;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->message = fetch_ds_type_message (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts_count = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_message_i_d (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x4e90bfd6;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->random_id = fetch_ds_type_bare_long (field2);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_delete_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0xa20db0e5;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->messages = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts_count = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_user_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x5c486927;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->action = fetch_ds_type_send_message_action (field2);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_chat_user_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x9a65ea1f;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->action = fetch_ds_type_send_message_action (field3);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_chat_participants (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x07761198;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->participants = fetch_ds_type_chat_participants (field1);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_user_status (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x1bfbd823;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->status = fetch_ds_type_user_status (field2);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_user_name (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0xa7332b73;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->first_name = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->last_name = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->username = fetch_ds_type_bare_string (field4);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_user_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x95313b0c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo = fetch_ds_type_user_profile_photo (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->previous = fetch_ds_type_bool (field4);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_contact_registered (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x2575bbb9;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_contact_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x9d2e67c5;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->my_link = fetch_ds_type_contact_link (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->foreign_link = fetch_ds_type_contact_link (field3);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_new_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x8f06529a;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->auth_key_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->device = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->location = fetch_ds_type_bare_string (field4);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_new_geo_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x5a68e3f7;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->geo_message = fetch_ds_type_geo_chat_message (field1);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_new_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x12bcbd9a;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->encr_message = fetch_ds_type_encrypted_message (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->qts = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_encrypted_chat_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x1710f156;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_encryption (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0xb4a2e88d;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb1718213, .id = "EncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->encr_chat = fetch_ds_type_encrypted_chat (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_encrypted_messages_read (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x38fe25b7;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->max_date = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_chat_participant_add (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x3a0eeb22;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->inviter_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->version = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_chat_participant_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x6e5f8c22;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->version = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_dc_options (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x8e5e9873;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->dc_options = (void *)fetch_ds_type_vector (field1);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_user_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x80ece81a;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->blocked = fetch_ds_type_bool (field2);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0xbec268ef;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fcb8237, .id = "NotifyPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->notify_peer = fetch_ds_type_notify_peer (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->notify_settings = fetch_ds_type_peer_notify_settings (field2);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_service_notification (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x382dd3e4;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->type = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->message_text = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->media = fetch_ds_type_message_media (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->popup = fetch_ds_type_bool (field4);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_privacy (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0xee3b272a;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbc2eab30, .id = "PrivacyKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key = fetch_ds_type_privacy_key (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->rules = (void *)fetch_ds_type_vector (field2);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_user_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x12b9417b;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone = fetch_ds_type_bare_string (field2);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_read_history_inbox (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x9961fd5c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->peer = fetch_ds_type_peer (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->max_id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts_count = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_read_history_outbox (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x2f2f21bf;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->peer = fetch_ds_type_peer (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->max_id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts_count = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x2cc36971;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->webpage = fetch_ds_type_web_page (field1);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_read_messages_contents (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x68c13933;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->messages = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts_count = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_update *fetch_ds_constructor_update_msg_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return 0; }
- struct tl_ds_update * result = talloc0 (sizeof (*result));
- result->magic = 0x03114739;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts_count = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_updates *fetch_ds_constructor_updates_too_long (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return 0; }
- struct tl_ds_updates * result = talloc0 (sizeof (*result));
- result->magic = 0xe317af7e;
- return result;
-}
-struct tl_ds_updates *fetch_ds_constructor_update_short_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return 0; }
- struct tl_ds_updates * result = talloc0 (sizeof (*result));
- result->magic = 0xed5c2127;
- assert (in_remaining () >= 4);
- result->flags = talloc (4); *result->flags = prefetch_int (); struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->message = fetch_ds_type_bare_string (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts_count = fetch_ds_type_bare_int (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field7);
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->fwd_from_id = fetch_ds_type_bare_int (field8);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->fwd_date = fetch_ds_type_bare_int (field9);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->reply_to_msg_id = fetch_ds_type_bare_int (field10);
- }
- return result;
-}
-struct tl_ds_updates *fetch_ds_constructor_update_short_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return 0; }
- struct tl_ds_updates * result = talloc0 (sizeof (*result));
- result->magic = 0x52238b3c;
- assert (in_remaining () >= 4);
- result->flags = talloc (4); *result->flags = prefetch_int (); struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->from_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_id = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->message = fetch_ds_type_bare_string (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts_count = fetch_ds_type_bare_int (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field8);
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->fwd_from_id = fetch_ds_type_bare_int (field9);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->fwd_date = fetch_ds_type_bare_int (field10);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->reply_to_msg_id = fetch_ds_type_bare_int (field11);
- }
- return result;
-}
-struct tl_ds_updates *fetch_ds_constructor_update_short (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return 0; }
- struct tl_ds_updates * result = talloc0 (sizeof (*result));
- result->magic = 0x78d4dec1;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->update = fetch_ds_type_update (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_updates *fetch_ds_constructor_updates_combined (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return 0; }
- struct tl_ds_updates * result = talloc0 (sizeof (*result));
- result->magic = 0x725b04c3;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->updates = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->seq_start = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->seq = fetch_ds_type_bare_int (field6);
- return result;
-}
-struct tl_ds_updates *fetch_ds_constructor_updates (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return 0; }
- struct tl_ds_updates * result = talloc0 (sizeof (*result));
- result->magic = 0x74ae4240;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->updates = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->seq = fetch_ds_type_bare_int (field5);
- return result;
-}
-struct tl_ds_user *fetch_ds_constructor_user_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return 0; }
- struct tl_ds_user * result = talloc0 (sizeof (*result));
- result->magic = 0x200250ba;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_user *fetch_ds_constructor_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return 0; }
- struct tl_ds_user * result = talloc0 (sizeof (*result));
- result->magic = 0x22e49072;
- assert (in_remaining () >= 4);
- result->flags = talloc (4); *result->flags = prefetch_int (); struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field3);
- }
- if (PTR2INT (var0) & (1 << 1)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->first_name = fetch_ds_type_bare_string (field4);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->last_name = fetch_ds_type_bare_string (field5);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->username = fetch_ds_type_bare_string (field6);
- }
- if (PTR2INT (var0) & (1 << 4)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone = fetch_ds_type_bare_string (field7);
- }
- if (PTR2INT (var0) & (1 << 5)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo = fetch_ds_type_user_profile_photo (field8);
- }
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->status = fetch_ds_type_user_status (field9);
- }
- if (PTR2INT (var0) & (1 << 14)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->bot_info_version = fetch_ds_type_bare_int (field10);
- }
- return result;
-}
-struct tl_ds_user_full *fetch_ds_constructor_user_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5a89ac5b && T->type->name != 0xa57653a4)) { return 0; }
- struct tl_ds_user_full * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user = fetch_ds_type_user (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->link = fetch_ds_type_contacts_link (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->profile_photo = fetch_ds_type_photo (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->notify_settings = fetch_ds_type_peer_notify_settings (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->blocked = fetch_ds_type_bool (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->bot_info = fetch_ds_type_bot_info (field6);
- return result;
-}
-struct tl_ds_user_profile_photo *fetch_ds_constructor_user_profile_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return 0; }
- struct tl_ds_user_profile_photo * result = talloc0 (sizeof (*result));
- result->magic = 0x4f11bae1;
- return result;
-}
-struct tl_ds_user_profile_photo *fetch_ds_constructor_user_profile_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return 0; }
- struct tl_ds_user_profile_photo * result = talloc0 (sizeof (*result));
- result->magic = 0xd559d8c8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo_small = fetch_ds_type_file_location (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo_big = fetch_ds_type_file_location (field3);
- return result;
-}
-struct tl_ds_user_status *fetch_ds_constructor_user_status_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return 0; }
- struct tl_ds_user_status * result = talloc0 (sizeof (*result));
- result->magic = 0x09d05049;
- return result;
-}
-struct tl_ds_user_status *fetch_ds_constructor_user_status_online (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return 0; }
- struct tl_ds_user_status * result = talloc0 (sizeof (*result));
- result->magic = 0xedb93949;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->expires = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_user_status *fetch_ds_constructor_user_status_offline (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return 0; }
- struct tl_ds_user_status * result = talloc0 (sizeof (*result));
- result->magic = 0x008c703f;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->was_online = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_user_status *fetch_ds_constructor_user_status_recently (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return 0; }
- struct tl_ds_user_status * result = talloc0 (sizeof (*result));
- result->magic = 0xe26f42f1;
- return result;
-}
-struct tl_ds_user_status *fetch_ds_constructor_user_status_last_week (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return 0; }
- struct tl_ds_user_status * result = talloc0 (sizeof (*result));
- result->magic = 0x07bf09fc;
- return result;
-}
-struct tl_ds_user_status *fetch_ds_constructor_user_status_last_month (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return 0; }
- struct tl_ds_user_status * result = talloc0 (sizeof (*result));
- result->magic = 0x77ebc742;
- return result;
-}
-struct tl_ds_vector *fetch_ds_constructor_vector (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1cb5c415 && T->type->name != 0xe34a3bea)) { return 0; }
- if (ODDP(T->params[0])) { return 0; }
- struct paramed_type *var0 = T->params[0]; assert (var0);
- struct tl_ds_vector * result = talloc0 (sizeof (*result));
- assert (in_remaining () >= 4);
- result->f1 = talloc (4); *result->f1 = prefetch_int (); struct paramed_type *var1 = INT2PTR (fetch_int ());
- int multiplicity3 = PTR2INT (
- ((void *)var1) + 0 );
- struct paramed_type *field3 =
- var0;
- result->f2 = talloc0 (multiplicity3 * sizeof (void *));
- {
- int i = 0;
- while (i < multiplicity3) {
- result->f2[i ++] = fetch_ds_type_any (field3);
- }
- }
- return result;
-}
-struct tl_ds_video *fetch_ds_constructor_video_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return 0; }
- struct tl_ds_video * result = talloc0 (sizeof (*result));
- result->magic = 0xc10658a8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- return result;
-}
-struct tl_ds_video *fetch_ds_constructor_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return 0; }
- struct tl_ds_video * result = talloc0 (sizeof (*result));
- result->magic = 0xee9f4a4d;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb = fetch_ds_type_photo_size (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc_id = fetch_ds_type_bare_int (field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->w = fetch_ds_type_bare_int (field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->h = fetch_ds_type_bare_int (field10);
- return result;
-}
-struct tl_ds_video *fetch_ds_constructor_video_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return 0; }
- struct tl_ds_video * result = talloc0 (sizeof (*result));
- result->magic = 0x388fa391;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->caption = fetch_ds_type_bare_string (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mime_type = fetch_ds_type_bare_string (field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->size = fetch_ds_type_bare_int (field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->thumb = fetch_ds_type_photo_size (field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc_id = fetch_ds_type_bare_int (field10);
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->w = fetch_ds_type_bare_int (field11);
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->h = fetch_ds_type_bare_int (field12);
- return result;
-}
-struct tl_ds_wall_paper *fetch_ds_constructor_wall_paper (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return 0; }
- struct tl_ds_wall_paper * result = talloc0 (sizeof (*result));
- result->magic = 0xccb03657;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->sizes = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->color = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_wall_paper *fetch_ds_constructor_wall_paper_solid (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return 0; }
- struct tl_ds_wall_paper * result = talloc0 (sizeof (*result));
- result->magic = 0x63117f24;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->bg_color = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->color = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_web_page *fetch_ds_constructor_web_page_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return 0; }
- struct tl_ds_web_page * result = talloc0 (sizeof (*result));
- result->magic = 0xeb1477e8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- return result;
-}
-struct tl_ds_web_page *fetch_ds_constructor_web_page_pending (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return 0; }
- struct tl_ds_web_page * result = talloc0 (sizeof (*result));
- result->magic = 0xc586da1c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_web_page *fetch_ds_constructor_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return 0; }
- struct tl_ds_web_page * result = talloc0 (sizeof (*result));
- result->magic = 0xa31ea0b5;
- assert (in_remaining () >= 4);
- result->flags = talloc (4); *result->flags = prefetch_int (); struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_long (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->url = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->display_url = fetch_ds_type_bare_string (field4);
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->type = fetch_ds_type_bare_string (field5);
- }
- if (PTR2INT (var0) & (1 << 1)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->site_name = fetch_ds_type_bare_string (field6);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field7);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->description = fetch_ds_type_bare_string (field8);
- }
- if (PTR2INT (var0) & (1 << 4)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo = fetch_ds_type_photo (field9);
- }
- if (PTR2INT (var0) & (1 << 5)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->embed_url = fetch_ds_type_bare_string (field10);
- }
- if (PTR2INT (var0) & (1 << 5)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->embed_type = fetch_ds_type_bare_string (field11);
- }
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->embed_width = fetch_ds_type_bare_int (field12);
- }
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->embed_height = fetch_ds_type_bare_int (field13);
- }
- if (PTR2INT (var0) & (1 << 7)) {
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->duration = fetch_ds_type_bare_int (field14);
- }
- if (PTR2INT (var0) & (1 << 8)) {
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->author = fetch_ds_type_bare_string (field15);
- }
- return result;
-}
-struct tl_ds_account_authorizations *fetch_ds_constructor_account_authorizations (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1250abde && T->type->name != 0xedaf5421)) { return 0; }
- struct tl_ds_account_authorizations * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bf2e6f6, .id = "Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->authorizations = (void *)fetch_ds_type_vector (field1);
- return result;
-}
-struct tl_ds_account_password *fetch_ds_constructor_account_no_password (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return 0; }
- struct tl_ds_account_password * result = talloc0 (sizeof (*result));
- result->magic = 0x96dabc18;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->new_salt = fetch_ds_type_bare_bytes (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->email_unconfirmed_pattern = fetch_ds_type_bare_string (field2);
- return result;
-}
-struct tl_ds_account_password *fetch_ds_constructor_account_password (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return 0; }
- struct tl_ds_account_password * result = talloc0 (sizeof (*result));
- result->magic = 0x7c18141c;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->current_salt = fetch_ds_type_bare_bytes (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->new_salt = fetch_ds_type_bare_bytes (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->hint = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->has_recovery = fetch_ds_type_bool (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->email_unconfirmed_pattern = fetch_ds_type_bare_string (field5);
- return result;
-}
-struct tl_ds_account_password_input_settings *fetch_ds_constructor_account_password_input_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbcfc532c && T->type->name != 0x4303acd3)) { return 0; }
- struct tl_ds_account_password_input_settings * result = talloc0 (sizeof (*result));
- assert (in_remaining () >= 4);
- result->flags = talloc (4); *result->flags = prefetch_int (); struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->new_salt = fetch_ds_type_bare_bytes (field2);
- }
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->new_password_hash = fetch_ds_type_bare_bytes (field3);
- }
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->hint = fetch_ds_type_bare_string (field4);
- }
- if (PTR2INT (var0) & (1 << 1)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->email = fetch_ds_type_bare_string (field5);
- }
- return result;
-}
-struct tl_ds_account_password_settings *fetch_ds_constructor_account_password_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb7b72ab3 && T->type->name != 0x4848d54c)) { return 0; }
- struct tl_ds_account_password_settings * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->email = fetch_ds_type_bare_string (field1);
- return result;
-}
-struct tl_ds_account_privacy_rules *fetch_ds_constructor_account_privacy_rules (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x554abb6f && T->type->name != 0xaab54490)) { return 0; }
- struct tl_ds_account_privacy_rules * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->rules = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field2);
- return result;
-}
-struct tl_ds_account_sent_change_phone_code *fetch_ds_constructor_account_sent_change_phone_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa4f58c4c && T->type->name != 0x5b0a73b3)) { return 0; }
- struct tl_ds_account_sent_change_phone_code * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone_code_hash = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->send_call_timeout = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_auth_authorization *fetch_ds_constructor_auth_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xff036af1 && T->type->name != 0x00fc950e)) { return 0; }
- struct tl_ds_auth_authorization * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user = fetch_ds_type_user (field1);
- return result;
-}
-struct tl_ds_auth_checked_phone *fetch_ds_constructor_auth_checked_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x811ea28e && T->type->name != 0x7ee15d71)) { return 0; }
- struct tl_ds_auth_checked_phone * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone_registered = fetch_ds_type_bool (field1);
- return result;
-}
-struct tl_ds_auth_exported_authorization *fetch_ds_constructor_auth_exported_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdf969c2d && T->type->name != 0x206963d2)) { return 0; }
- struct tl_ds_auth_exported_authorization * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->bytes = fetch_ds_type_bare_bytes (field2);
- return result;
-}
-struct tl_ds_auth_password_recovery *fetch_ds_constructor_auth_password_recovery (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x137948a5 && T->type->name != 0xec86b75a)) { return 0; }
- struct tl_ds_auth_password_recovery * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->email_pattern = fetch_ds_type_bare_string (field1);
- return result;
-}
-struct tl_ds_auth_sent_code *fetch_ds_constructor_auth_sent_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return 0; }
- struct tl_ds_auth_sent_code * result = talloc0 (sizeof (*result));
- result->magic = 0xefed51d9;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone_registered = fetch_ds_type_bool (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone_code_hash = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->send_call_timeout = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->is_password = fetch_ds_type_bool (field4);
- return result;
-}
-struct tl_ds_auth_sent_code *fetch_ds_constructor_auth_sent_app_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return 0; }
- struct tl_ds_auth_sent_code * result = talloc0 (sizeof (*result));
- result->magic = 0xe325edcf;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone_registered = fetch_ds_type_bool (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone_code_hash = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->send_call_timeout = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->is_password = fetch_ds_type_bool (field4);
- return result;
-}
-struct tl_ds_binlog_encr_key *fetch_ds_constructor_binlog_encr_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0377168f && T->type->name != 0xfc88e970)) { return 0; }
- struct tl_ds_binlog_encr_key * result = talloc0 (sizeof (*result));
- int multiplicity1 = PTR2INT (
- INT2PTR (64) );
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key = talloc0 (multiplicity1 * sizeof (void *));
- {
- int i = 0;
- while (i < multiplicity1) {
- result->key[i ++] =fetch_ds_type_any (field1);
- }
- }
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_start (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x3b06de69;
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_dc_option (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0xf96feb32;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->name = fetch_ds_type_bare_string (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->ip = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->port = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_dc_option_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x7c0d22d8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->flags = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->name = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->ip = fetch_ds_type_bare_string (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->port = fetch_ds_type_bare_int (field5);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_auth_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x71e8c156;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key = fetch_ds_type_bare_binlog_encr_key (field2);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_default_dc (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x9e83dbdc;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_dc_signed (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x26451bb5;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->dc = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_our_id (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x68a870e8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_set_dh_params (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0xeaeb7826;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->root = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->prime = fetch_ds_type_bare_binlog_encr_key (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->version = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_set_pts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x2ca8c939;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_set_qts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0xd95738ac;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->qts = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_set_date (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x1d0f4b52;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_set_seq (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x6eeb2989;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->seq = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_encr_chat_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0xee1b38e8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_encr_chat_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x84977251;
- assert (in_remaining () >= 4);
- result->flags = talloc (4); *result->flags = prefetch_int (); struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field3);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field4);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->admin = fetch_ds_type_bare_int (field5);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field6);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key = fetch_ds_type_bare_binlog_encr_key (field7);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->g_key = fetch_ds_type_bare_binlog_encr_key (field8);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->state = fetch_ds_type_bare_int (field9);
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->ttl = fetch_ds_type_bare_int (field10);
- }
- if (PTR2INT (var0) & (1 << 25)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->layer = fetch_ds_type_bare_int (field11);
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->in_seq_no = fetch_ds_type_bare_int (field12);
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->last_in_seq_no = fetch_ds_type_bare_int (field13);
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->out_seq_no = fetch_ds_type_bare_int (field14);
- }
- if (PTR2INT (var0) & (1 << 27)) {
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key_fingerprint = fetch_ds_type_bare_long (field15);
- }
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_encr_chat_exchange_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x9d49488d;
- assert (in_remaining () >= 4);
- result->flags = talloc (4); *result->flags = prefetch_int (); struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->exchange_id = fetch_ds_type_bare_long (field3);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->key = fetch_ds_type_bare_binlog_encr_key (field4);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->state = fetch_ds_type_bare_int (field5);
- }
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_user_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0xac55d447;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_user_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x127cf2f9;
- assert (in_remaining () >= 4);
- result->flags = talloc (4); *result->flags = prefetch_int (); struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->access_hash = fetch_ds_type_bare_long (field3);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->first_name = fetch_ds_type_bare_string (field4);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->last_name = fetch_ds_type_bare_string (field5);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone = fetch_ds_type_bare_string (field6);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->username = fetch_ds_type_bare_string (field7);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo = fetch_ds_type_photo (field8);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->real_first_name = fetch_ds_type_bare_string (field9);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->real_last_name = fetch_ds_type_bare_string (field10);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_photo = fetch_ds_type_user_profile_photo (field11);
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->last_read_in = fetch_ds_type_bare_int (field12);
- }
- if (PTR2INT (var0) & (1 << 25)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->last_read_out = fetch_ds_type_bare_int (field13);
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->bot_info = fetch_ds_type_bot_info (field14);
- }
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_chat_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x0a10aa92;
- assert (in_remaining () >= 4);
- result->flags = talloc (4); *result->flags = prefetch_int (); struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->title = fetch_ds_type_bare_string (field3);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_num = fetch_ds_type_bare_int (field4);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field5);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->version = fetch_ds_type_bare_int (field6);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->participants = (void *)fetch_ds_type_vector (field7);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->chat_photo = fetch_ds_type_chat_photo (field8);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo = fetch_ds_type_photo (field9);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->admin = fetch_ds_type_bare_int (field10);
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->last_read_in = fetch_ds_type_bare_int (field11);
- }
- if (PTR2INT (var0) & (1 << 25)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->last_read_out = fetch_ds_type_bare_int (field12);
- }
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_chat_add_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x535475ea;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->version = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->inviter_id = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field5);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_chat_del_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x7dd1a1a2;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->version = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user_id = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_set_msg_id (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x3c873416;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->old_id = fetch_ds_type_bare_long (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->new_id = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_message_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x847e77b1;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->lid = fetch_ds_type_bare_long (field1);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_message_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x427cfcdb;
- assert (in_remaining () >= 4);
- result->flags = talloc (4); *result->flags = prefetch_int (); struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->lid = fetch_ds_type_bare_long (field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->from_id = fetch_ds_type_bare_int (field3);
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->to_type = fetch_ds_type_bare_int (field4);
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->to_id = fetch_ds_type_bare_int (field5);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->fwd_from_id = fetch_ds_type_bare_int (field6);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->fwd_date = fetch_ds_type_bare_int (field7);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field8);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->message = fetch_ds_type_bare_string (field9);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->media = fetch_ds_type_message_media (field10);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->action = fetch_ds_type_message_action (field11);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->reply_id = fetch_ds_type_bare_int (field12);
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->reply_markup = fetch_ds_type_reply_markup (field13);
- }
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_message_encr_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x6cf7cabc;
- assert (in_remaining () >= 4);
- result->flags = talloc (4); *result->flags = prefetch_int (); struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->lid = fetch_ds_type_bare_long (field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->from_id = fetch_ds_type_bare_int (field3);
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->to_type = fetch_ds_type_bare_int (field4);
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->to_id = fetch_ds_type_bare_int (field5);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field6);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->message = fetch_ds_type_bare_string (field7);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->encr_media = fetch_ds_type_decrypted_message_media (field8);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->encr_action = fetch_ds_type_decrypted_message_action (field9);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file = fetch_ds_type_encrypted_file (field10);
- }
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_msg_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x6dd4d85f;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->lid = fetch_ds_type_bare_long (field1);
- return result;
-}
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_reset_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return 0; }
- struct tl_ds_binlog_update * result = talloc0 (sizeof (*result));
- result->magic = 0x83327955;
- return result;
-}
-struct tl_ds_contacts_blocked *fetch_ds_constructor_contacts_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return 0; }
- struct tl_ds_contacts_blocked * result = talloc0 (sizeof (*result));
- result->magic = 0x1c138d15;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->blocked = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field2);
- return result;
-}
-struct tl_ds_contacts_blocked *fetch_ds_constructor_contacts_blocked_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return 0; }
- struct tl_ds_contacts_blocked * result = talloc0 (sizeof (*result));
- result->magic = 0x900802a1;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->count = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->blocked = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field3);
- return result;
-}
-struct tl_ds_contacts_contacts *fetch_ds_constructor_contacts_contacts_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return 0; }
- struct tl_ds_contacts_contacts * result = talloc0 (sizeof (*result));
- result->magic = 0xb74ba9d2;
- return result;
-}
-struct tl_ds_contacts_contacts *fetch_ds_constructor_contacts_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return 0; }
- struct tl_ds_contacts_contacts * result = talloc0 (sizeof (*result));
- result->magic = 0x6f8b8cb2;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf911c994, .id = "Contact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->contacts = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field2);
- return result;
-}
-struct tl_ds_contacts_found *fetch_ds_constructor_contacts_found (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0566000e && T->type->name != 0xfa99fff1)) { return 0; }
- struct tl_ds_contacts_found * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xea879f95, .id = "ContactFound", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->results = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field2);
- return result;
-}
-struct tl_ds_contacts_imported_contacts *fetch_ds_constructor_contacts_imported_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xad524315 && T->type->name != 0x52adbcea)) { return 0; }
- struct tl_ds_contacts_imported_contacts * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xd0028438, .id = "ImportedContact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->imported = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->retry_contacts = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field3);
- return result;
-}
-struct tl_ds_contacts_link *fetch_ds_constructor_contacts_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3ace484c && T->type->name != 0xc531b7b3)) { return 0; }
- struct tl_ds_contacts_link * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->my_link = fetch_ds_type_contact_link (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->foreign_link = fetch_ds_type_contact_link (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user = fetch_ds_type_user (field3);
- return result;
-}
-struct tl_ds_contacts_suggested *fetch_ds_constructor_contacts_suggested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5649dcc5 && T->type->name != 0xa9b6233a)) { return 0; }
- struct tl_ds_contacts_suggested * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3de191a1, .id = "ContactSuggested", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->results = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field2);
- return result;
-}
-struct tl_ds_geochats_located *fetch_ds_constructor_geochats_located (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x48feb267 && T->type->name != 0xb7014d98)) { return 0; }
- struct tl_ds_geochats_located * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3631cf4c, .id = "ChatLocated", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->results = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->messages = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field4);
- return result;
-}
-struct tl_ds_geochats_messages *fetch_ds_constructor_geochats_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return 0; }
- struct tl_ds_geochats_messages * result = talloc0 (sizeof (*result));
- result->magic = 0xd1526db1;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->messages = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field3);
- return result;
-}
-struct tl_ds_geochats_messages *fetch_ds_constructor_geochats_messages_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return 0; }
- struct tl_ds_geochats_messages * result = talloc0 (sizeof (*result));
- result->magic = 0xbc5863e8;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->count = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->messages = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field4);
- return result;
-}
-struct tl_ds_geochats_stated_message *fetch_ds_constructor_geochats_stated_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17b1578b && T->type->name != 0xe84ea874)) { return 0; }
- struct tl_ds_geochats_stated_message * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->message = fetch_ds_type_geo_chat_message (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->seq = fetch_ds_type_bare_int (field4);
- return result;
-}
-struct tl_ds_help_app_update *fetch_ds_constructor_help_app_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return 0; }
- struct tl_ds_help_app_update * result = talloc0 (sizeof (*result));
- result->magic = 0x8987f311;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->critical = fetch_ds_type_bool (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->url = fetch_ds_type_bare_string (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->text = fetch_ds_type_bare_string (field4);
- return result;
-}
-struct tl_ds_help_app_update *fetch_ds_constructor_help_no_app_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return 0; }
- struct tl_ds_help_app_update * result = talloc0 (sizeof (*result));
- result->magic = 0xc45a6536;
- return result;
-}
-struct tl_ds_help_invite_text *fetch_ds_constructor_help_invite_text (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x18cb9f78 && T->type->name != 0xe7346087)) { return 0; }
- struct tl_ds_help_invite_text * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->message = fetch_ds_type_bare_string (field1);
- return result;
-}
-struct tl_ds_help_support *fetch_ds_constructor_help_support (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17c6b5f6 && T->type->name != 0xe8394a09)) { return 0; }
- struct tl_ds_help_support * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->phone_number = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->user = fetch_ds_type_user (field2);
- return result;
-}
-struct tl_ds_messages_affected_history *fetch_ds_constructor_messages_affected_history (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb45c69d1 && T->type->name != 0x4ba3962e)) { return 0; }
- struct tl_ds_messages_affected_history * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts_count = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->offset = fetch_ds_type_bare_int (field3);
- return result;
-}
-struct tl_ds_messages_affected_messages *fetch_ds_constructor_messages_affected_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x84d19185 && T->type->name != 0x7b2e6e7a)) { return 0; }
- struct tl_ds_messages_affected_messages * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts_count = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_messages_all_stickers *fetch_ds_constructor_messages_all_stickers_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return 0; }
- struct tl_ds_messages_all_stickers * result = talloc0 (sizeof (*result));
- result->magic = 0xe86602c3;
- return result;
-}
-struct tl_ds_messages_all_stickers *fetch_ds_constructor_messages_all_stickers (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return 0; }
- struct tl_ds_messages_all_stickers * result = talloc0 (sizeof (*result));
- result->magic = 0x5ce352ec;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->hash = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->packs = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->sets = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->documents = (void *)fetch_ds_type_vector (field4);
- return result;
-}
-struct tl_ds_messages_chat_full *fetch_ds_constructor_messages_chat_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe5d7d19c && T->type->name != 0x1a282e63)) { return 0; }
- struct tl_ds_messages_chat_full * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02a614, .id = "ChatFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->full_chat = fetch_ds_type_chat_full (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field3);
- return result;
-}
-struct tl_ds_messages_chats *fetch_ds_constructor_messages_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x64ff9fd5 && T->type->name != 0x9b00602a)) { return 0; }
- struct tl_ds_messages_chats * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field1);
- return result;
-}
-struct tl_ds_messages_dh_config *fetch_ds_constructor_messages_dh_config_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return 0; }
- struct tl_ds_messages_dh_config * result = talloc0 (sizeof (*result));
- result->magic = 0xc0e24635;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->random = fetch_ds_type_bare_bytes (field1);
- return result;
-}
-struct tl_ds_messages_dh_config *fetch_ds_constructor_messages_dh_config (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return 0; }
- struct tl_ds_messages_dh_config * result = talloc0 (sizeof (*result));
- result->magic = 0x2c221edd;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->g = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->p = fetch_ds_type_bare_bytes (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->version = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->random = fetch_ds_type_bare_bytes (field4);
- return result;
-}
-struct tl_ds_messages_dialogs *fetch_ds_constructor_messages_dialogs (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return 0; }
- struct tl_ds_messages_dialogs * result = talloc0 (sizeof (*result));
- result->magic = 0x15ba6c40;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->dialogs = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->messages = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field4);
- return result;
-}
-struct tl_ds_messages_dialogs *fetch_ds_constructor_messages_dialogs_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return 0; }
- struct tl_ds_messages_dialogs * result = talloc0 (sizeof (*result));
- result->magic = 0x71e094f3;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->count = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->dialogs = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->messages = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field5);
- return result;
-}
-struct tl_ds_messages_message *fetch_ds_constructor_messages_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3f4e0648 && T->type->name != 0xc0b1f9b7)) { return 0; }
- struct tl_ds_messages_message * result = talloc0 (sizeof (*result));
- return result;
-}
-struct tl_ds_messages_messages *fetch_ds_constructor_messages_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return 0; }
- struct tl_ds_messages_messages * result = talloc0 (sizeof (*result));
- result->magic = 0x8c718e87;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->messages = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field3);
- return result;
-}
-struct tl_ds_messages_messages *fetch_ds_constructor_messages_messages_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return 0; }
- struct tl_ds_messages_messages * result = talloc0 (sizeof (*result));
- result->magic = 0x0b446ae3;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->count = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->messages = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field4);
- return result;
-}
-struct tl_ds_messages_sent_encrypted_message *fetch_ds_constructor_messages_sent_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return 0; }
- struct tl_ds_messages_sent_encrypted_message * result = talloc0 (sizeof (*result));
- result->magic = 0x560f8935;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field1);
- return result;
-}
-struct tl_ds_messages_sent_encrypted_message *fetch_ds_constructor_messages_sent_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return 0; }
- struct tl_ds_messages_sent_encrypted_message * result = talloc0 (sizeof (*result));
- result->magic = 0x9493ff32;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->file = fetch_ds_type_encrypted_file (field2);
- return result;
-}
-struct tl_ds_messages_sent_message *fetch_ds_constructor_messages_sent_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return 0; }
- struct tl_ds_messages_sent_message * result = talloc0 (sizeof (*result));
- result->magic = 0x4c3d47f3;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->media = fetch_ds_type_message_media (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts_count = fetch_ds_type_bare_int (field5);
- return result;
-}
-struct tl_ds_messages_sent_message *fetch_ds_constructor_messages_sent_message_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return 0; }
- struct tl_ds_messages_sent_message * result = talloc0 (sizeof (*result));
- result->magic = 0x35a1a663;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->id = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->media = fetch_ds_type_message_media (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts_count = fetch_ds_type_bare_int (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->links = (void *)fetch_ds_type_vector (field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->seq = fetch_ds_type_bare_int (field7);
- return result;
-}
-struct tl_ds_messages_sticker_set *fetch_ds_constructor_messages_sticker_set (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb60a24a6 && T->type->name != 0x49f5db59)) { return 0; }
- struct tl_ds_messages_sticker_set * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->set = fetch_ds_type_sticker_set (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->packs = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->documents = (void *)fetch_ds_type_vector (field3);
- return result;
-}
-struct tl_ds_messages_stickers *fetch_ds_constructor_messages_stickers_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return 0; }
- struct tl_ds_messages_stickers * result = talloc0 (sizeof (*result));
- result->magic = 0xf1749a22;
- return result;
-}
-struct tl_ds_messages_stickers *fetch_ds_constructor_messages_stickers (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return 0; }
- struct tl_ds_messages_stickers * result = talloc0 (sizeof (*result));
- result->magic = 0x8a8ecd32;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->hash = fetch_ds_type_bare_string (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->stickers = (void *)fetch_ds_type_vector (field2);
- return result;
-}
-struct tl_ds_photos_photo *fetch_ds_constructor_photos_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x20212ca8 && T->type->name != 0xdfded357)) { return 0; }
- struct tl_ds_photos_photo * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->photo = fetch_ds_type_photo (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field2);
- return result;
-}
-struct tl_ds_photos_photos *fetch_ds_constructor_photos_photos (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return 0; }
- struct tl_ds_photos_photos * result = talloc0 (sizeof (*result));
- result->magic = 0x8dca6aa5;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->photos = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field2);
- return result;
-}
-struct tl_ds_photos_photos *fetch_ds_constructor_photos_photos_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return 0; }
- struct tl_ds_photos_photos * result = talloc0 (sizeof (*result));
- result->magic = 0x15051f54;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->count = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->photos = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field3);
- return result;
-}
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_unknown (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return 0; }
- struct tl_ds_storage_file_type * result = talloc0 (sizeof (*result));
- result->magic = 0xaa963b05;
- return result;
-}
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_jpeg (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return 0; }
- struct tl_ds_storage_file_type * result = talloc0 (sizeof (*result));
- result->magic = 0x007efe0e;
- return result;
-}
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_gif (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return 0; }
- struct tl_ds_storage_file_type * result = talloc0 (sizeof (*result));
- result->magic = 0xcae1aadf;
- return result;
-}
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_png (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return 0; }
- struct tl_ds_storage_file_type * result = talloc0 (sizeof (*result));
- result->magic = 0x0a4f63c0;
- return result;
-}
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_pdf (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return 0; }
- struct tl_ds_storage_file_type * result = talloc0 (sizeof (*result));
- result->magic = 0xae1e508d;
- return result;
-}
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_mp3 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return 0; }
- struct tl_ds_storage_file_type * result = talloc0 (sizeof (*result));
- result->magic = 0x528a0677;
- return result;
-}
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_mov (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return 0; }
- struct tl_ds_storage_file_type * result = talloc0 (sizeof (*result));
- result->magic = 0x4b09ebbc;
- return result;
-}
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_partial (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return 0; }
- struct tl_ds_storage_file_type * result = talloc0 (sizeof (*result));
- result->magic = 0x40bc6f52;
- return result;
-}
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_mp4 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return 0; }
- struct tl_ds_storage_file_type * result = talloc0 (sizeof (*result));
- result->magic = 0xb3cea0e4;
- return result;
-}
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_webp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return 0; }
- struct tl_ds_storage_file_type * result = talloc0 (sizeof (*result));
- result->magic = 0x1081464c;
- return result;
-}
-struct tl_ds_updates_difference *fetch_ds_constructor_updates_difference_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return 0; }
- struct tl_ds_updates_difference * result = talloc0 (sizeof (*result));
- result->magic = 0x5d75a138;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->seq = fetch_ds_type_bare_int (field2);
- return result;
-}
-struct tl_ds_updates_difference *fetch_ds_constructor_updates_difference (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return 0; }
- struct tl_ds_updates_difference * result = talloc0 (sizeof (*result));
- result->magic = 0x00f49ca0;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->new_messages = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->new_encrypted_messages = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->other_updates = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->state = fetch_ds_type_updates_state (field6);
- return result;
-}
-struct tl_ds_updates_difference *fetch_ds_constructor_updates_difference_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return 0; }
- struct tl_ds_updates_difference * result = talloc0 (sizeof (*result));
- result->magic = 0xa8fb1981;
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->new_messages = (void *)fetch_ds_type_vector (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->new_encrypted_messages = (void *)fetch_ds_type_vector (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->other_updates = (void *)fetch_ds_type_vector (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->chats = (void *)fetch_ds_type_vector (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- result->users = (void *)fetch_ds_type_vector (field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->intermediate_state = fetch_ds_type_updates_state (field6);
- return result;
-}
-struct tl_ds_updates_state *fetch_ds_constructor_updates_state (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa56c2a3e && T->type->name != 0x5a93d5c1)) { return 0; }
- struct tl_ds_updates_state * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->pts = fetch_ds_type_bare_int (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->qts = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->date = fetch_ds_type_bare_int (field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->seq = fetch_ds_type_bare_int (field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->unread_count = fetch_ds_type_bare_int (field5);
- return result;
-}
-struct tl_ds_upload_file *fetch_ds_constructor_upload_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x096a18d5 && T->type->name != 0xf695e72a)) { return 0; }
- struct tl_ds_upload_file * result = talloc0 (sizeof (*result));
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3e2838a8, .id = "storage.FileType", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->type = fetch_ds_type_storage_file_type (field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->mtime = fetch_ds_type_bare_int (field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- result->bytes = fetch_ds_type_bare_bytes (field3);
- return result;
-}
-struct tl_ds_account_days_t_t_l *fetch_ds_type_account_days_t_t_l (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xb8d0afdf: return fetch_ds_constructor_account_days_t_t_l (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_account_days_t_t_l *fetch_ds_type_bare_account_days_t_t_l (struct paramed_type *T) {
- return fetch_ds_constructor_account_days_t_t_l (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_audio *fetch_ds_type_audio (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x586988d8: return fetch_ds_constructor_audio_empty (T); break;
- case 0xc7ac6496: return fetch_ds_constructor_audio (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_audio *fetch_ds_type_bare_audio (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_audio_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_audio_empty (T); }
- if (skip_constructor_audio (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_audio (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_authorization *fetch_ds_type_authorization (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x7bf2e6f6: return fetch_ds_constructor_authorization (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_authorization *fetch_ds_type_bare_authorization (struct paramed_type *T) {
- return fetch_ds_constructor_authorization (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_bool *fetch_ds_type_bool (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xbc799737: return fetch_ds_constructor_bool_false (T); break;
- case 0x997275b5: return fetch_ds_constructor_bool_true (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_bool *fetch_ds_type_bare_bool (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_bool_false (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_bool_false (T); }
- if (skip_constructor_bool_true (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_bool_true (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_bot_command *fetch_ds_type_bot_command (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xc27ac8c7: return fetch_ds_constructor_bot_command (T); break;
- case 0xb79d22ab: return fetch_ds_constructor_bot_command_old (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_bot_command *fetch_ds_type_bare_bot_command (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_bot_command (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_bot_command (T); }
- if (skip_constructor_bot_command_old (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_bot_command_old (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_bot_info *fetch_ds_type_bot_info (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xbb2e37ce: return fetch_ds_constructor_bot_info_empty (T); break;
- case 0x09cf585d: return fetch_ds_constructor_bot_info (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_bot_info *fetch_ds_type_bare_bot_info (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_bot_info_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_bot_info_empty (T); }
- if (skip_constructor_bot_info (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_bot_info (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_string *fetch_ds_type_bytes (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x0ee1379f: return fetch_ds_constructor_bytes (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_string *fetch_ds_type_bare_bytes (struct paramed_type *T) {
- return fetch_ds_constructor_bytes (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_chat *fetch_ds_type_chat (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x9ba2d800: return fetch_ds_constructor_chat_empty (T); break;
- case 0x6e9c9bc7: return fetch_ds_constructor_chat (T); break;
- case 0xfb0ccc41: return fetch_ds_constructor_chat_forbidden (T); break;
- case 0x75eaea5a: return fetch_ds_constructor_geo_chat (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_chat *fetch_ds_type_bare_chat (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_chat_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_chat_empty (T); }
- if (skip_constructor_chat (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_chat (T); }
- if (skip_constructor_chat_forbidden (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_chat_forbidden (T); }
- if (skip_constructor_geo_chat (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_geo_chat (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_chat_full *fetch_ds_type_chat_full (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x2e02a614: return fetch_ds_constructor_chat_full (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_chat_full *fetch_ds_type_bare_chat_full (struct paramed_type *T) {
- return fetch_ds_constructor_chat_full (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_chat_invite *fetch_ds_type_chat_invite (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x5a686d7c: return fetch_ds_constructor_chat_invite_already (T); break;
- case 0xce917dcd: return fetch_ds_constructor_chat_invite (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_chat_invite *fetch_ds_type_bare_chat_invite (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_chat_invite_already (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_chat_invite_already (T); }
- if (skip_constructor_chat_invite (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_chat_invite (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_chat_located *fetch_ds_type_chat_located (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x3631cf4c: return fetch_ds_constructor_chat_located (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_chat_located *fetch_ds_type_bare_chat_located (struct paramed_type *T) {
- return fetch_ds_constructor_chat_located (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_chat_participant *fetch_ds_type_chat_participant (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xc8d7493e: return fetch_ds_constructor_chat_participant (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_chat_participant *fetch_ds_type_bare_chat_participant (struct paramed_type *T) {
- return fetch_ds_constructor_chat_participant (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_chat_participants *fetch_ds_type_chat_participants (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x0fd2bb8a: return fetch_ds_constructor_chat_participants_forbidden (T); break;
- case 0x7841b415: return fetch_ds_constructor_chat_participants (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_chat_participants *fetch_ds_type_bare_chat_participants (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_chat_participants_forbidden (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_chat_participants_forbidden (T); }
- if (skip_constructor_chat_participants (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_chat_participants (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_chat_photo *fetch_ds_type_chat_photo (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x37c1011c: return fetch_ds_constructor_chat_photo_empty (T); break;
- case 0x6153276a: return fetch_ds_constructor_chat_photo (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_chat_photo *fetch_ds_type_bare_chat_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_chat_photo_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_chat_photo_empty (T); }
- if (skip_constructor_chat_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_chat_photo (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_client_d_h_inner_data *fetch_ds_type_client_d_h_inner_data (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x6643b654: return fetch_ds_constructor_client_d_h_inner_data (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_client_d_h_inner_data *fetch_ds_type_bare_client_d_h_inner_data (struct paramed_type *T) {
- return fetch_ds_constructor_client_d_h_inner_data (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_config *fetch_ds_type_config (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x4e32b894: return fetch_ds_constructor_config (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_config *fetch_ds_type_bare_config (struct paramed_type *T) {
- return fetch_ds_constructor_config (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_contact *fetch_ds_type_contact (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xf911c994: return fetch_ds_constructor_contact (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_contact *fetch_ds_type_bare_contact (struct paramed_type *T) {
- return fetch_ds_constructor_contact (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_contact_blocked *fetch_ds_type_contact_blocked (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x561bc879: return fetch_ds_constructor_contact_blocked (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_contact_blocked *fetch_ds_type_bare_contact_blocked (struct paramed_type *T) {
- return fetch_ds_constructor_contact_blocked (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_contact_found *fetch_ds_type_contact_found (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xea879f95: return fetch_ds_constructor_contact_found (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_contact_found *fetch_ds_type_bare_contact_found (struct paramed_type *T) {
- return fetch_ds_constructor_contact_found (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_contact_link *fetch_ds_type_contact_link (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x5f4f9247: return fetch_ds_constructor_contact_link_unknown (T); break;
- case 0xfeedd3ad: return fetch_ds_constructor_contact_link_none (T); break;
- case 0x268f3f59: return fetch_ds_constructor_contact_link_has_phone (T); break;
- case 0xd502c2d0: return fetch_ds_constructor_contact_link_contact (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_contact_link *fetch_ds_type_bare_contact_link (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_contact_link_unknown (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_contact_link_unknown (T); }
- if (skip_constructor_contact_link_none (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_contact_link_none (T); }
- if (skip_constructor_contact_link_has_phone (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_contact_link_has_phone (T); }
- if (skip_constructor_contact_link_contact (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_contact_link_contact (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_contact_status *fetch_ds_type_contact_status (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xd3680c61: return fetch_ds_constructor_contact_status (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_contact_status *fetch_ds_type_bare_contact_status (struct paramed_type *T) {
- return fetch_ds_constructor_contact_status (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_contact_suggested *fetch_ds_type_contact_suggested (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x3de191a1: return fetch_ds_constructor_contact_suggested (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_contact_suggested *fetch_ds_type_bare_contact_suggested (struct paramed_type *T) {
- return fetch_ds_constructor_contact_suggested (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_dc_option *fetch_ds_type_dc_option (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x2ec2a43c: return fetch_ds_constructor_dc_option_l28 (T); break;
- case 0x05d8c6cc: return fetch_ds_constructor_dc_option (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_dc_option *fetch_ds_type_bare_dc_option (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_dc_option_l28 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_dc_option_l28 (T); }
- if (skip_constructor_dc_option (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_dc_option (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_decrypted_message *fetch_ds_type_decrypted_message (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x204d3878: return fetch_ds_constructor_decrypted_message (T); break;
- case 0x73164160: return fetch_ds_constructor_decrypted_message_service (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_decrypted_message *fetch_ds_type_bare_decrypted_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_decrypted_message (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message (T); }
- if (skip_constructor_decrypted_message_service (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_service (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_decrypted_message_action *fetch_ds_type_decrypted_message_action (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xa1733aec: return fetch_ds_constructor_decrypted_message_action_set_message_t_t_l (T); break;
- case 0x0c4f40be: return fetch_ds_constructor_decrypted_message_action_read_messages (T); break;
- case 0x65614304: return fetch_ds_constructor_decrypted_message_action_delete_messages (T); break;
- case 0x8ac1f475: return fetch_ds_constructor_decrypted_message_action_screenshot_messages (T); break;
- case 0x6719e45c: return fetch_ds_constructor_decrypted_message_action_flush_history (T); break;
- case 0x511110b0: return fetch_ds_constructor_decrypted_message_action_resend (T); break;
- case 0xf3048883: return fetch_ds_constructor_decrypted_message_action_notify_layer (T); break;
- case 0xccb27641: return fetch_ds_constructor_decrypted_message_action_typing (T); break;
- case 0xf3c9611b: return fetch_ds_constructor_decrypted_message_action_request_key (T); break;
- case 0x6fe1735b: return fetch_ds_constructor_decrypted_message_action_accept_key (T); break;
- case 0xdd05ec6b: return fetch_ds_constructor_decrypted_message_action_abort_key (T); break;
- case 0xec2e0b9b: return fetch_ds_constructor_decrypted_message_action_commit_key (T); break;
- case 0xa82fdd63: return fetch_ds_constructor_decrypted_message_action_noop (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_decrypted_message_action *fetch_ds_type_bare_decrypted_message_action (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_decrypted_message_action_set_message_t_t_l (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_set_message_t_t_l (T); }
- if (skip_constructor_decrypted_message_action_read_messages (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_read_messages (T); }
- if (skip_constructor_decrypted_message_action_delete_messages (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_delete_messages (T); }
- if (skip_constructor_decrypted_message_action_screenshot_messages (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_screenshot_messages (T); }
- if (skip_constructor_decrypted_message_action_flush_history (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_flush_history (T); }
- if (skip_constructor_decrypted_message_action_resend (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_resend (T); }
- if (skip_constructor_decrypted_message_action_notify_layer (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_notify_layer (T); }
- if (skip_constructor_decrypted_message_action_typing (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_typing (T); }
- if (skip_constructor_decrypted_message_action_request_key (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_request_key (T); }
- if (skip_constructor_decrypted_message_action_accept_key (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_accept_key (T); }
- if (skip_constructor_decrypted_message_action_abort_key (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_abort_key (T); }
- if (skip_constructor_decrypted_message_action_commit_key (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_commit_key (T); }
- if (skip_constructor_decrypted_message_action_noop (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_action_noop (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_decrypted_message_layer *fetch_ds_type_decrypted_message_layer (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x1be31789: return fetch_ds_constructor_decrypted_message_layer (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_decrypted_message_layer *fetch_ds_type_bare_decrypted_message_layer (struct paramed_type *T) {
- return fetch_ds_constructor_decrypted_message_layer (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_decrypted_message_media *fetch_ds_type_decrypted_message_media (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x089f5c4a: return fetch_ds_constructor_decrypted_message_media_empty (T); break;
- case 0x32798a8c: return fetch_ds_constructor_decrypted_message_media_photo (T); break;
- case 0x35480a59: return fetch_ds_constructor_decrypted_message_media_geo_point (T); break;
- case 0x588a0a97: return fetch_ds_constructor_decrypted_message_media_contact (T); break;
- case 0xb095434b: return fetch_ds_constructor_decrypted_message_media_document (T); break;
- case 0x524a415d: return fetch_ds_constructor_decrypted_message_media_video (T); break;
- case 0x57e0a9cb: return fetch_ds_constructor_decrypted_message_media_audio (T); break;
- case 0xfa95b0dd: return fetch_ds_constructor_decrypted_message_media_external_document (T); break;
- case 0x4cee6ef3: return fetch_ds_constructor_decrypted_message_media_video_l12 (T); break;
- case 0x6080758f: return fetch_ds_constructor_decrypted_message_media_audio_l12 (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_decrypted_message_media *fetch_ds_type_bare_decrypted_message_media (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_decrypted_message_media_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_media_empty (T); }
- if (skip_constructor_decrypted_message_media_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_media_photo (T); }
- if (skip_constructor_decrypted_message_media_geo_point (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_media_geo_point (T); }
- if (skip_constructor_decrypted_message_media_contact (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_media_contact (T); }
- if (skip_constructor_decrypted_message_media_document (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_media_document (T); }
- if (skip_constructor_decrypted_message_media_video (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_media_video (T); }
- if (skip_constructor_decrypted_message_media_audio (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_media_audio (T); }
- if (skip_constructor_decrypted_message_media_external_document (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_media_external_document (T); }
- if (skip_constructor_decrypted_message_media_video_l12 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_media_video_l12 (T); }
- if (skip_constructor_decrypted_message_media_audio_l12 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_decrypted_message_media_audio_l12 (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_dialog *fetch_ds_type_dialog (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xc1dd804a: return fetch_ds_constructor_dialog (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_dialog *fetch_ds_type_bare_dialog (struct paramed_type *T) {
- return fetch_ds_constructor_dialog (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_disabled_feature *fetch_ds_type_disabled_feature (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xae636f24: return fetch_ds_constructor_disabled_feature (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_disabled_feature *fetch_ds_type_bare_disabled_feature (struct paramed_type *T) {
- return fetch_ds_constructor_disabled_feature (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_document *fetch_ds_type_document (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x36f8c871: return fetch_ds_constructor_document_empty (T); break;
- case 0xf9a39f4f: return fetch_ds_constructor_document (T); break;
- case 0x9efc6326: return fetch_ds_constructor_document_l19 (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_document *fetch_ds_type_bare_document (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_document_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_document_empty (T); }
- if (skip_constructor_document (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_document (T); }
- if (skip_constructor_document_l19 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_document_l19 (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_document_attribute *fetch_ds_type_document_attribute (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x6c37c15c: return fetch_ds_constructor_document_attribute_image_size (T); break;
- case 0x11b58939: return fetch_ds_constructor_document_attribute_animated (T); break;
- case 0x994c9882: return fetch_ds_constructor_document_attribute_sticker_l28 (T); break;
- case 0x3a556302: return fetch_ds_constructor_document_attribute_sticker (T); break;
- case 0x5910cccb: return fetch_ds_constructor_document_attribute_video (T); break;
- case 0x051448e5: return fetch_ds_constructor_document_attribute_audio (T); break;
- case 0x15590068: return fetch_ds_constructor_document_attribute_filename (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_document_attribute *fetch_ds_type_bare_document_attribute (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_document_attribute_image_size (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_document_attribute_image_size (T); }
- if (skip_constructor_document_attribute_animated (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_document_attribute_animated (T); }
- if (skip_constructor_document_attribute_sticker_l28 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_document_attribute_sticker_l28 (T); }
- if (skip_constructor_document_attribute_sticker (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_document_attribute_sticker (T); }
- if (skip_constructor_document_attribute_video (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_document_attribute_video (T); }
- if (skip_constructor_document_attribute_audio (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_document_attribute_audio (T); }
- if (skip_constructor_document_attribute_filename (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_document_attribute_filename (T); }
- assert (0);
- return NULL;
-}
-double *fetch_ds_type_double (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x2210c154: return fetch_ds_constructor_double (T); break;
- default: assert (0); return NULL;
- }
-}
-double *fetch_ds_type_bare_double (struct paramed_type *T) {
- return fetch_ds_constructor_double (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_encrypted_chat *fetch_ds_type_encrypted_chat (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xab7ec0a0: return fetch_ds_constructor_encrypted_chat_empty (T); break;
- case 0x3bf703dc: return fetch_ds_constructor_encrypted_chat_waiting (T); break;
- case 0xc878527e: return fetch_ds_constructor_encrypted_chat_requested (T); break;
- case 0xfa56ce36: return fetch_ds_constructor_encrypted_chat (T); break;
- case 0x13d6dd27: return fetch_ds_constructor_encrypted_chat_discarded (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_encrypted_chat *fetch_ds_type_bare_encrypted_chat (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_encrypted_chat_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_encrypted_chat_empty (T); }
- if (skip_constructor_encrypted_chat_waiting (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_encrypted_chat_waiting (T); }
- if (skip_constructor_encrypted_chat_requested (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_encrypted_chat_requested (T); }
- if (skip_constructor_encrypted_chat (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_encrypted_chat (T); }
- if (skip_constructor_encrypted_chat_discarded (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_encrypted_chat_discarded (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_encrypted_file *fetch_ds_type_encrypted_file (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xc21f497e: return fetch_ds_constructor_encrypted_file_empty (T); break;
- case 0x4a70994c: return fetch_ds_constructor_encrypted_file (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_encrypted_file *fetch_ds_type_bare_encrypted_file (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_encrypted_file_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_encrypted_file_empty (T); }
- if (skip_constructor_encrypted_file (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_encrypted_file (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_encrypted_message *fetch_ds_type_encrypted_message (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xed18c118: return fetch_ds_constructor_encrypted_message (T); break;
- case 0x23734b06: return fetch_ds_constructor_encrypted_message_service (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_encrypted_message *fetch_ds_type_bare_encrypted_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_encrypted_message (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_encrypted_message (T); }
- if (skip_constructor_encrypted_message_service (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_encrypted_message_service (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_error *fetch_ds_type_error (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xc4b9f9bb: return fetch_ds_constructor_error (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_error *fetch_ds_type_bare_error (struct paramed_type *T) {
- return fetch_ds_constructor_error (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_exported_chat_invite *fetch_ds_type_exported_chat_invite (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x69df3769: return fetch_ds_constructor_chat_invite_empty (T); break;
- case 0xfc2e05bc: return fetch_ds_constructor_chat_invite_exported (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_exported_chat_invite *fetch_ds_type_bare_exported_chat_invite (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_chat_invite_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_chat_invite_empty (T); }
- if (skip_constructor_chat_invite_exported (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_chat_invite_exported (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_file_location *fetch_ds_type_file_location (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x7c596b46: return fetch_ds_constructor_file_location_unavailable (T); break;
- case 0x53d69076: return fetch_ds_constructor_file_location (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_file_location *fetch_ds_type_bare_file_location (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_file_location_unavailable (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_file_location_unavailable (T); }
- if (skip_constructor_file_location (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_file_location (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_geo_chat_message *fetch_ds_type_geo_chat_message (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x60311a9b: return fetch_ds_constructor_geo_chat_message_empty (T); break;
- case 0x4505f8e1: return fetch_ds_constructor_geo_chat_message (T); break;
- case 0xd34fa24e: return fetch_ds_constructor_geo_chat_message_service (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_geo_chat_message *fetch_ds_type_bare_geo_chat_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_geo_chat_message_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_geo_chat_message_empty (T); }
- if (skip_constructor_geo_chat_message (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_geo_chat_message (T); }
- if (skip_constructor_geo_chat_message_service (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_geo_chat_message_service (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_geo_point *fetch_ds_type_geo_point (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x1117dd5f: return fetch_ds_constructor_geo_point_empty (T); break;
- case 0x2049d70c: return fetch_ds_constructor_geo_point (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_geo_point *fetch_ds_type_bare_geo_point (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_geo_point_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_geo_point_empty (T); }
- if (skip_constructor_geo_point (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_geo_point (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_imported_contact *fetch_ds_type_imported_contact (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xd0028438: return fetch_ds_constructor_imported_contact (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_imported_contact *fetch_ds_type_bare_imported_contact (struct paramed_type *T) {
- return fetch_ds_constructor_imported_contact (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_input_app_event *fetch_ds_type_input_app_event (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x770656a8: return fetch_ds_constructor_input_app_event (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_app_event *fetch_ds_type_bare_input_app_event (struct paramed_type *T) {
- return fetch_ds_constructor_input_app_event (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_input_audio *fetch_ds_type_input_audio (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xd95adc84: return fetch_ds_constructor_input_audio_empty (T); break;
- case 0x77d440ff: return fetch_ds_constructor_input_audio (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_audio *fetch_ds_type_bare_input_audio (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_audio_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_audio_empty (T); }
- if (skip_constructor_input_audio (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_audio (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_chat_photo *fetch_ds_type_input_chat_photo (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x1ca48f57: return fetch_ds_constructor_input_chat_photo_empty (T); break;
- case 0x94254732: return fetch_ds_constructor_input_chat_uploaded_photo (T); break;
- case 0xb2e1bf08: return fetch_ds_constructor_input_chat_photo (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_chat_photo *fetch_ds_type_bare_input_chat_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_chat_photo_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_chat_photo_empty (T); }
- if (skip_constructor_input_chat_uploaded_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_chat_uploaded_photo (T); }
- if (skip_constructor_input_chat_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_chat_photo (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_contact *fetch_ds_type_input_contact (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xf392b7f4: return fetch_ds_constructor_input_phone_contact (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_contact *fetch_ds_type_bare_input_contact (struct paramed_type *T) {
- return fetch_ds_constructor_input_phone_contact (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_input_document *fetch_ds_type_input_document (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x72f0eaae: return fetch_ds_constructor_input_document_empty (T); break;
- case 0x18798952: return fetch_ds_constructor_input_document (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_document *fetch_ds_type_bare_input_document (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_document_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_document_empty (T); }
- if (skip_constructor_input_document (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_document (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_encrypted_chat *fetch_ds_type_input_encrypted_chat (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xf141b5e1: return fetch_ds_constructor_input_encrypted_chat (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_encrypted_chat *fetch_ds_type_bare_input_encrypted_chat (struct paramed_type *T) {
- return fetch_ds_constructor_input_encrypted_chat (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_input_encrypted_file *fetch_ds_type_input_encrypted_file (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x1837c364: return fetch_ds_constructor_input_encrypted_file_empty (T); break;
- case 0x64bd0306: return fetch_ds_constructor_input_encrypted_file_uploaded (T); break;
- case 0x5a17b5e5: return fetch_ds_constructor_input_encrypted_file (T); break;
- case 0x2dc173c8: return fetch_ds_constructor_input_encrypted_file_big_uploaded (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_encrypted_file *fetch_ds_type_bare_input_encrypted_file (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_encrypted_file_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_encrypted_file_empty (T); }
- if (skip_constructor_input_encrypted_file_uploaded (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_encrypted_file_uploaded (T); }
- if (skip_constructor_input_encrypted_file (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_encrypted_file (T); }
- if (skip_constructor_input_encrypted_file_big_uploaded (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_encrypted_file_big_uploaded (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_file *fetch_ds_type_input_file (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xf52ff27f: return fetch_ds_constructor_input_file (T); break;
- case 0xfa4f0bb5: return fetch_ds_constructor_input_file_big (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_file *fetch_ds_type_bare_input_file (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_file (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_file (T); }
- if (skip_constructor_input_file_big (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_file_big (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_file_location *fetch_ds_type_input_file_location (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x14637196: return fetch_ds_constructor_input_file_location (T); break;
- case 0x3d0364ec: return fetch_ds_constructor_input_video_file_location (T); break;
- case 0xf5235d55: return fetch_ds_constructor_input_encrypted_file_location (T); break;
- case 0x74dc404d: return fetch_ds_constructor_input_audio_file_location (T); break;
- case 0x4e45abe9: return fetch_ds_constructor_input_document_file_location (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_file_location *fetch_ds_type_bare_input_file_location (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_file_location (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_file_location (T); }
- if (skip_constructor_input_video_file_location (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_video_file_location (T); }
- if (skip_constructor_input_encrypted_file_location (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_encrypted_file_location (T); }
- if (skip_constructor_input_audio_file_location (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_audio_file_location (T); }
- if (skip_constructor_input_document_file_location (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_document_file_location (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_geo_chat *fetch_ds_type_input_geo_chat (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x74d456fa: return fetch_ds_constructor_input_geo_chat (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_geo_chat *fetch_ds_type_bare_input_geo_chat (struct paramed_type *T) {
- return fetch_ds_constructor_input_geo_chat (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_input_geo_point *fetch_ds_type_input_geo_point (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xe4c123d6: return fetch_ds_constructor_input_geo_point_empty (T); break;
- case 0xf3b7acc9: return fetch_ds_constructor_input_geo_point (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_geo_point *fetch_ds_type_bare_input_geo_point (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_geo_point_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_geo_point_empty (T); }
- if (skip_constructor_input_geo_point (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_geo_point (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_media *fetch_ds_type_input_media (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x9664f57f: return fetch_ds_constructor_input_media_empty (T); break;
- case 0xf7aff1c0: return fetch_ds_constructor_input_media_uploaded_photo (T); break;
- case 0xe9bfb4f3: return fetch_ds_constructor_input_media_photo (T); break;
- case 0xf9c44144: return fetch_ds_constructor_input_media_geo_point (T); break;
- case 0xa6e45987: return fetch_ds_constructor_input_media_contact (T); break;
- case 0xe13fd4bc: return fetch_ds_constructor_input_media_uploaded_video (T); break;
- case 0x96fb97dc: return fetch_ds_constructor_input_media_uploaded_thumb_video (T); break;
- case 0x936a4ebd: return fetch_ds_constructor_input_media_video (T); break;
- case 0x4e498cab: return fetch_ds_constructor_input_media_uploaded_audio (T); break;
- case 0x89938781: return fetch_ds_constructor_input_media_audio (T); break;
- case 0xffe76b78: return fetch_ds_constructor_input_media_uploaded_document (T); break;
- case 0x41481486: return fetch_ds_constructor_input_media_uploaded_thumb_document (T); break;
- case 0xd184e841: return fetch_ds_constructor_input_media_document (T); break;
- case 0x2827a81a: return fetch_ds_constructor_input_media_venue (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_media *fetch_ds_type_bare_input_media (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_media_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_empty (T); }
- if (skip_constructor_input_media_uploaded_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_uploaded_photo (T); }
- if (skip_constructor_input_media_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_photo (T); }
- if (skip_constructor_input_media_geo_point (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_geo_point (T); }
- if (skip_constructor_input_media_contact (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_contact (T); }
- if (skip_constructor_input_media_uploaded_video (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_uploaded_video (T); }
- if (skip_constructor_input_media_uploaded_thumb_video (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_uploaded_thumb_video (T); }
- if (skip_constructor_input_media_video (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_video (T); }
- if (skip_constructor_input_media_uploaded_audio (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_uploaded_audio (T); }
- if (skip_constructor_input_media_audio (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_audio (T); }
- if (skip_constructor_input_media_uploaded_document (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_uploaded_document (T); }
- if (skip_constructor_input_media_uploaded_thumb_document (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_uploaded_thumb_document (T); }
- if (skip_constructor_input_media_document (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_document (T); }
- if (skip_constructor_input_media_venue (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_media_venue (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_notify_peer *fetch_ds_type_input_notify_peer (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xb8bc5b0c: return fetch_ds_constructor_input_notify_peer (T); break;
- case 0x193b4417: return fetch_ds_constructor_input_notify_users (T); break;
- case 0x4a95e84e: return fetch_ds_constructor_input_notify_chats (T); break;
- case 0xa429b886: return fetch_ds_constructor_input_notify_all (T); break;
- case 0x4d8ddec8: return fetch_ds_constructor_input_notify_geo_chat_peer (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_notify_peer *fetch_ds_type_bare_input_notify_peer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_notify_peer (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_notify_peer (T); }
- if (skip_constructor_input_notify_users (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_notify_users (T); }
- if (skip_constructor_input_notify_chats (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_notify_chats (T); }
- if (skip_constructor_input_notify_all (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_notify_all (T); }
- if (skip_constructor_input_notify_geo_chat_peer (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_notify_geo_chat_peer (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_peer *fetch_ds_type_input_peer (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x7f3b18ea: return fetch_ds_constructor_input_peer_empty (T); break;
- case 0x7da07ec9: return fetch_ds_constructor_input_peer_self (T); break;
- case 0x1023dbe8: return fetch_ds_constructor_input_peer_contact (T); break;
- case 0x9b447325: return fetch_ds_constructor_input_peer_foreign (T); break;
- case 0x179be863: return fetch_ds_constructor_input_peer_chat (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_peer *fetch_ds_type_bare_input_peer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_peer_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_peer_empty (T); }
- if (skip_constructor_input_peer_self (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_peer_self (T); }
- if (skip_constructor_input_peer_contact (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_peer_contact (T); }
- if (skip_constructor_input_peer_foreign (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_peer_foreign (T); }
- if (skip_constructor_input_peer_chat (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_peer_chat (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_peer_notify_events *fetch_ds_type_input_peer_notify_events (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xf03064d8: return fetch_ds_constructor_input_peer_notify_events_empty (T); break;
- case 0xe86a2c74: return fetch_ds_constructor_input_peer_notify_events_all (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_peer_notify_events *fetch_ds_type_bare_input_peer_notify_events (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_peer_notify_events_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_peer_notify_events_empty (T); }
- if (skip_constructor_input_peer_notify_events_all (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_peer_notify_events_all (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_peer_notify_settings *fetch_ds_type_input_peer_notify_settings (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x46a2ce98: return fetch_ds_constructor_input_peer_notify_settings (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_peer_notify_settings *fetch_ds_type_bare_input_peer_notify_settings (struct paramed_type *T) {
- return fetch_ds_constructor_input_peer_notify_settings (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_input_photo *fetch_ds_type_input_photo (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x1cd7bf0d: return fetch_ds_constructor_input_photo_empty (T); break;
- case 0xfb95c6c4: return fetch_ds_constructor_input_photo (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_photo *fetch_ds_type_bare_input_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_photo_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_photo_empty (T); }
- if (skip_constructor_input_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_photo (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_photo_crop *fetch_ds_type_input_photo_crop (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xade6b004: return fetch_ds_constructor_input_photo_crop_auto (T); break;
- case 0xd9915325: return fetch_ds_constructor_input_photo_crop (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_photo_crop *fetch_ds_type_bare_input_photo_crop (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_photo_crop_auto (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_photo_crop_auto (T); }
- if (skip_constructor_input_photo_crop (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_photo_crop (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_privacy_key *fetch_ds_type_input_privacy_key (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x4f96cb18: return fetch_ds_constructor_input_privacy_key_status_timestamp (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_privacy_key *fetch_ds_type_bare_input_privacy_key (struct paramed_type *T) {
- return fetch_ds_constructor_input_privacy_key_status_timestamp (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_input_privacy_rule *fetch_ds_type_input_privacy_rule (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x0d09e07b: return fetch_ds_constructor_input_privacy_value_allow_contacts (T); break;
- case 0x184b35ce: return fetch_ds_constructor_input_privacy_value_allow_all (T); break;
- case 0x131cc67f: return fetch_ds_constructor_input_privacy_value_allow_users (T); break;
- case 0x0ba52007: return fetch_ds_constructor_input_privacy_value_disallow_contacts (T); break;
- case 0xd66b66c9: return fetch_ds_constructor_input_privacy_value_disallow_all (T); break;
- case 0x90110467: return fetch_ds_constructor_input_privacy_value_disallow_users (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_privacy_rule *fetch_ds_type_bare_input_privacy_rule (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_privacy_value_allow_contacts (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_privacy_value_allow_contacts (T); }
- if (skip_constructor_input_privacy_value_allow_all (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_privacy_value_allow_all (T); }
- if (skip_constructor_input_privacy_value_allow_users (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_privacy_value_allow_users (T); }
- if (skip_constructor_input_privacy_value_disallow_contacts (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_privacy_value_disallow_contacts (T); }
- if (skip_constructor_input_privacy_value_disallow_all (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_privacy_value_disallow_all (T); }
- if (skip_constructor_input_privacy_value_disallow_users (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_privacy_value_disallow_users (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_sticker_set *fetch_ds_type_input_sticker_set (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xffb62b95: return fetch_ds_constructor_input_sticker_set_empty (T); break;
- case 0x9de7a269: return fetch_ds_constructor_input_sticker_set_i_d (T); break;
- case 0x861cc8a0: return fetch_ds_constructor_input_sticker_set_short_name (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_sticker_set *fetch_ds_type_bare_input_sticker_set (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_sticker_set_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_sticker_set_empty (T); }
- if (skip_constructor_input_sticker_set_i_d (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_sticker_set_i_d (T); }
- if (skip_constructor_input_sticker_set_short_name (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_sticker_set_short_name (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_user *fetch_ds_type_input_user (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xb98886cf: return fetch_ds_constructor_input_user_empty (T); break;
- case 0xf7c1b13f: return fetch_ds_constructor_input_user_self (T); break;
- case 0x86e94f65: return fetch_ds_constructor_input_user_contact (T); break;
- case 0x655e74ff: return fetch_ds_constructor_input_user_foreign (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_user *fetch_ds_type_bare_input_user (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_user_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_user_empty (T); }
- if (skip_constructor_input_user_self (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_user_self (T); }
- if (skip_constructor_input_user_contact (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_user_contact (T); }
- if (skip_constructor_input_user_foreign (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_user_foreign (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_input_video *fetch_ds_type_input_video (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x5508ec75: return fetch_ds_constructor_input_video_empty (T); break;
- case 0xee579652: return fetch_ds_constructor_input_video (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_input_video *fetch_ds_type_bare_input_video (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_video_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_video_empty (T); }
- if (skip_constructor_input_video (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_video (T); }
- assert (0);
- return NULL;
-}
-int *fetch_ds_type_int (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xa8509bda: return fetch_ds_constructor_int (T); break;
- default: assert (0); return NULL;
- }
-}
-int *fetch_ds_type_bare_int (struct paramed_type *T) {
- return fetch_ds_constructor_int (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_int128 *fetch_ds_type_int128 (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x7d36c439: return fetch_ds_constructor_int128 (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_int128 *fetch_ds_type_bare_int128 (struct paramed_type *T) {
- return fetch_ds_constructor_int128 (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_int256 *fetch_ds_type_int256 (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xf2c798b3: return fetch_ds_constructor_int256 (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_int256 *fetch_ds_type_bare_int256 (struct paramed_type *T) {
- return fetch_ds_constructor_int256 (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_keyboard_button *fetch_ds_type_keyboard_button (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xa2fa4880: return fetch_ds_constructor_keyboard_button (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_keyboard_button *fetch_ds_type_bare_keyboard_button (struct paramed_type *T) {
- return fetch_ds_constructor_keyboard_button (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_keyboard_button_row *fetch_ds_type_keyboard_button_row (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x77608b83: return fetch_ds_constructor_keyboard_button_row (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_keyboard_button_row *fetch_ds_type_bare_keyboard_button_row (struct paramed_type *T) {
- return fetch_ds_constructor_keyboard_button_row (T);
- assert (0);
- return NULL;
-}
-long long *fetch_ds_type_long (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x22076cba: return fetch_ds_constructor_long (T); break;
- default: assert (0); return NULL;
- }
-}
-long long *fetch_ds_type_bare_long (struct paramed_type *T) {
- return fetch_ds_constructor_long (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_message *fetch_ds_type_message (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x83e5de54: return fetch_ds_constructor_message_empty (T); break;
- case 0xc3060325: return fetch_ds_constructor_message (T); break;
- case 0x1d86f70e: return fetch_ds_constructor_message_service (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_message *fetch_ds_type_bare_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_message_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_empty (T); }
- if (skip_constructor_message (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message (T); }
- if (skip_constructor_message_service (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_service (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_message_action *fetch_ds_type_message_action (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xb6aef7b0: return fetch_ds_constructor_message_action_empty (T); break;
- case 0xa6638b9a: return fetch_ds_constructor_message_action_chat_create (T); break;
- case 0xb5a1ce5a: return fetch_ds_constructor_message_action_chat_edit_title (T); break;
- case 0x7fcb13a8: return fetch_ds_constructor_message_action_chat_edit_photo (T); break;
- case 0x95e3fbef: return fetch_ds_constructor_message_action_chat_delete_photo (T); break;
- case 0x5e3cfc4b: return fetch_ds_constructor_message_action_chat_add_user (T); break;
- case 0xb2ae9b0c: return fetch_ds_constructor_message_action_chat_delete_user (T); break;
- case 0x6f038ebc: return fetch_ds_constructor_message_action_geo_chat_create (T); break;
- case 0x0c7d53de: return fetch_ds_constructor_message_action_geo_chat_checkin (T); break;
- case 0xf89cf5e8: return fetch_ds_constructor_message_action_chat_joined_by_link (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_message_action *fetch_ds_type_bare_message_action (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_message_action_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_action_empty (T); }
- if (skip_constructor_message_action_chat_create (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_action_chat_create (T); }
- if (skip_constructor_message_action_chat_edit_title (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_action_chat_edit_title (T); }
- if (skip_constructor_message_action_chat_edit_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_action_chat_edit_photo (T); }
- if (skip_constructor_message_action_chat_delete_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_action_chat_delete_photo (T); }
- if (skip_constructor_message_action_chat_add_user (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_action_chat_add_user (T); }
- if (skip_constructor_message_action_chat_delete_user (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_action_chat_delete_user (T); }
- if (skip_constructor_message_action_geo_chat_create (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_action_geo_chat_create (T); }
- if (skip_constructor_message_action_geo_chat_checkin (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_action_geo_chat_checkin (T); }
- if (skip_constructor_message_action_chat_joined_by_link (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_action_chat_joined_by_link (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_message_media *fetch_ds_type_message_media (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x3ded6320: return fetch_ds_constructor_message_media_empty (T); break;
- case 0x3d8ce53d: return fetch_ds_constructor_message_media_photo (T); break;
- case 0x5bcf1675: return fetch_ds_constructor_message_media_video (T); break;
- case 0x56e0d474: return fetch_ds_constructor_message_media_geo (T); break;
- case 0x5e7d2f39: return fetch_ds_constructor_message_media_contact (T); break;
- case 0x9f84f49e: return fetch_ds_constructor_message_media_unsupported (T); break;
- case 0x2fda2204: return fetch_ds_constructor_message_media_document (T); break;
- case 0xc6b68300: return fetch_ds_constructor_message_media_audio (T); break;
- case 0xa32dd600: return fetch_ds_constructor_message_media_web_page (T); break;
- case 0x7912b71f: return fetch_ds_constructor_message_media_venue (T); break;
- case 0xc8c45a2a: return fetch_ds_constructor_message_media_photo_l27 (T); break;
- case 0xa2d24290: return fetch_ds_constructor_message_media_video_l27 (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_message_media *fetch_ds_type_bare_message_media (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_message_media_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_media_empty (T); }
- if (skip_constructor_message_media_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_media_photo (T); }
- if (skip_constructor_message_media_video (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_media_video (T); }
- if (skip_constructor_message_media_geo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_media_geo (T); }
- if (skip_constructor_message_media_contact (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_media_contact (T); }
- if (skip_constructor_message_media_unsupported (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_media_unsupported (T); }
- if (skip_constructor_message_media_document (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_media_document (T); }
- if (skip_constructor_message_media_audio (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_media_audio (T); }
- if (skip_constructor_message_media_web_page (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_media_web_page (T); }
- if (skip_constructor_message_media_venue (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_media_venue (T); }
- if (skip_constructor_message_media_photo_l27 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_media_photo_l27 (T); }
- if (skip_constructor_message_media_video_l27 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_message_media_video_l27 (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_filter *fetch_ds_type_messages_filter (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x57e2f66c: return fetch_ds_constructor_input_messages_filter_empty (T); break;
- case 0x9609a51c: return fetch_ds_constructor_input_messages_filter_photos (T); break;
- case 0x9fc00e65: return fetch_ds_constructor_input_messages_filter_video (T); break;
- case 0x56e9f0e4: return fetch_ds_constructor_input_messages_filter_photo_video (T); break;
- case 0xd95e73bb: return fetch_ds_constructor_input_messages_filter_photo_video_documents (T); break;
- case 0x9eddf188: return fetch_ds_constructor_input_messages_filter_document (T); break;
- case 0xcfc87522: return fetch_ds_constructor_input_messages_filter_audio (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_filter *fetch_ds_type_bare_messages_filter (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_messages_filter_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_messages_filter_empty (T); }
- if (skip_constructor_input_messages_filter_photos (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_messages_filter_photos (T); }
- if (skip_constructor_input_messages_filter_video (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_messages_filter_video (T); }
- if (skip_constructor_input_messages_filter_photo_video (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_messages_filter_photo_video (T); }
- if (skip_constructor_input_messages_filter_photo_video_documents (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_messages_filter_photo_video_documents (T); }
- if (skip_constructor_input_messages_filter_document (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_messages_filter_document (T); }
- if (skip_constructor_input_messages_filter_audio (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_input_messages_filter_audio (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_nearest_dc *fetch_ds_type_nearest_dc (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x8e1a1775: return fetch_ds_constructor_nearest_dc (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_nearest_dc *fetch_ds_type_bare_nearest_dc (struct paramed_type *T) {
- return fetch_ds_constructor_nearest_dc (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_notify_peer *fetch_ds_type_notify_peer (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x9fd40bd8: return fetch_ds_constructor_notify_peer (T); break;
- case 0xb4c83b4c: return fetch_ds_constructor_notify_users (T); break;
- case 0xc007cec3: return fetch_ds_constructor_notify_chats (T); break;
- case 0x74d07c60: return fetch_ds_constructor_notify_all (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_notify_peer *fetch_ds_type_bare_notify_peer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_notify_peer (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_notify_peer (T); }
- if (skip_constructor_notify_users (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_notify_users (T); }
- if (skip_constructor_notify_chats (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_notify_chats (T); }
- if (skip_constructor_notify_all (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_notify_all (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_null *fetch_ds_type_null (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x56730bcc: return fetch_ds_constructor_null (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_null *fetch_ds_type_bare_null (struct paramed_type *T) {
- return fetch_ds_constructor_null (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_p_q_inner_data *fetch_ds_type_p_q_inner_data (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x83c95aec: return fetch_ds_constructor_p_q_inner_data (T); break;
- case 0x3c6a84d4: return fetch_ds_constructor_p_q_inner_data_temp (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_p_q_inner_data *fetch_ds_type_bare_p_q_inner_data (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_p_q_inner_data (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_p_q_inner_data (T); }
- if (skip_constructor_p_q_inner_data_temp (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_p_q_inner_data_temp (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_peer *fetch_ds_type_peer (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x9db1bc6d: return fetch_ds_constructor_peer_user (T); break;
- case 0xbad0e5bb: return fetch_ds_constructor_peer_chat (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_peer *fetch_ds_type_bare_peer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_peer_user (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_peer_user (T); }
- if (skip_constructor_peer_chat (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_peer_chat (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_peer_notify_events *fetch_ds_type_peer_notify_events (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xadd53cb3: return fetch_ds_constructor_peer_notify_events_empty (T); break;
- case 0x6d1ded88: return fetch_ds_constructor_peer_notify_events_all (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_peer_notify_events *fetch_ds_type_bare_peer_notify_events (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_peer_notify_events_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_peer_notify_events_empty (T); }
- if (skip_constructor_peer_notify_events_all (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_peer_notify_events_all (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_peer_notify_settings *fetch_ds_type_peer_notify_settings (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x70a68512: return fetch_ds_constructor_peer_notify_settings_empty (T); break;
- case 0x8d5e11ee: return fetch_ds_constructor_peer_notify_settings (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_peer_notify_settings *fetch_ds_type_bare_peer_notify_settings (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_peer_notify_settings_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_peer_notify_settings_empty (T); }
- if (skip_constructor_peer_notify_settings (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_peer_notify_settings (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_photo *fetch_ds_type_photo (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x2331b22d: return fetch_ds_constructor_photo_empty (T); break;
- case 0xc3838076: return fetch_ds_constructor_photo (T); break;
- case 0x22b56751: return fetch_ds_constructor_photo_l27 (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_photo *fetch_ds_type_bare_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_photo_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_photo_empty (T); }
- if (skip_constructor_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_photo (T); }
- if (skip_constructor_photo_l27 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_photo_l27 (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_photo_size *fetch_ds_type_photo_size (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x0e17e23c: return fetch_ds_constructor_photo_size_empty (T); break;
- case 0x77bfb61b: return fetch_ds_constructor_photo_size (T); break;
- case 0xe9a734fa: return fetch_ds_constructor_photo_cached_size (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_photo_size *fetch_ds_type_bare_photo_size (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_photo_size_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_photo_size_empty (T); }
- if (skip_constructor_photo_size (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_photo_size (T); }
- if (skip_constructor_photo_cached_size (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_photo_cached_size (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_privacy_key *fetch_ds_type_privacy_key (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xbc2eab30: return fetch_ds_constructor_privacy_key_status_timestamp (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_privacy_key *fetch_ds_type_bare_privacy_key (struct paramed_type *T) {
- return fetch_ds_constructor_privacy_key_status_timestamp (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_privacy_rule *fetch_ds_type_privacy_rule (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xfffe1bac: return fetch_ds_constructor_privacy_value_allow_contacts (T); break;
- case 0x65427b82: return fetch_ds_constructor_privacy_value_allow_all (T); break;
- case 0x4d5bbe0c: return fetch_ds_constructor_privacy_value_allow_users (T); break;
- case 0xf888fa1a: return fetch_ds_constructor_privacy_value_disallow_contacts (T); break;
- case 0x8b73e763: return fetch_ds_constructor_privacy_value_disallow_all (T); break;
- case 0x0c7f49b7: return fetch_ds_constructor_privacy_value_disallow_users (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_privacy_rule *fetch_ds_type_bare_privacy_rule (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_privacy_value_allow_contacts (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_privacy_value_allow_contacts (T); }
- if (skip_constructor_privacy_value_allow_all (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_privacy_value_allow_all (T); }
- if (skip_constructor_privacy_value_allow_users (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_privacy_value_allow_users (T); }
- if (skip_constructor_privacy_value_disallow_contacts (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_privacy_value_disallow_contacts (T); }
- if (skip_constructor_privacy_value_disallow_all (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_privacy_value_disallow_all (T); }
- if (skip_constructor_privacy_value_disallow_users (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_privacy_value_disallow_users (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_received_notify_message *fetch_ds_type_received_notify_message (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xa384b779: return fetch_ds_constructor_received_notify_message (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_received_notify_message *fetch_ds_type_bare_received_notify_message (struct paramed_type *T) {
- return fetch_ds_constructor_received_notify_message (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_reply_markup *fetch_ds_type_reply_markup (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xa03e5b85: return fetch_ds_constructor_reply_keyboard_hide (T); break;
- case 0xf4108aa0: return fetch_ds_constructor_reply_keyboard_force_reply (T); break;
- case 0x3502758c: return fetch_ds_constructor_reply_keyboard_markup (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_reply_markup *fetch_ds_type_bare_reply_markup (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_reply_keyboard_hide (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_reply_keyboard_hide (T); }
- if (skip_constructor_reply_keyboard_force_reply (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_reply_keyboard_force_reply (T); }
- if (skip_constructor_reply_keyboard_markup (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_reply_keyboard_markup (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_res_p_q *fetch_ds_type_res_p_q (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x05162463: return fetch_ds_constructor_res_p_q (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_res_p_q *fetch_ds_type_bare_res_p_q (struct paramed_type *T) {
- return fetch_ds_constructor_res_p_q (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_send_message_action *fetch_ds_type_send_message_action (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x16bf744e: return fetch_ds_constructor_send_message_typing_action (T); break;
- case 0xfd5ec8f5: return fetch_ds_constructor_send_message_cancel_action (T); break;
- case 0xa187d66f: return fetch_ds_constructor_send_message_record_video_action (T); break;
- case 0x92042ff7: return fetch_ds_constructor_send_message_upload_video_action_l27 (T); break;
- case 0xe9763aec: return fetch_ds_constructor_send_message_upload_video_action (T); break;
- case 0xd52f73f7: return fetch_ds_constructor_send_message_record_audio_action (T); break;
- case 0xe6ac8a6f: return fetch_ds_constructor_send_message_upload_audio_action_l27 (T); break;
- case 0xf351d7ab: return fetch_ds_constructor_send_message_upload_audio_action (T); break;
- case 0xd1d34a26: return fetch_ds_constructor_send_message_upload_photo_action (T); break;
- case 0x8faee98e: return fetch_ds_constructor_send_message_upload_document_action_l27 (T); break;
- case 0xaa0cd9e4: return fetch_ds_constructor_send_message_upload_document_action (T); break;
- case 0x176f8ba1: return fetch_ds_constructor_send_message_geo_location_action (T); break;
- case 0x628cbc6f: return fetch_ds_constructor_send_message_choose_contact_action (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_send_message_action *fetch_ds_type_bare_send_message_action (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_send_message_typing_action (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_typing_action (T); }
- if (skip_constructor_send_message_cancel_action (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_cancel_action (T); }
- if (skip_constructor_send_message_record_video_action (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_record_video_action (T); }
- if (skip_constructor_send_message_upload_video_action_l27 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_upload_video_action_l27 (T); }
- if (skip_constructor_send_message_upload_video_action (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_upload_video_action (T); }
- if (skip_constructor_send_message_record_audio_action (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_record_audio_action (T); }
- if (skip_constructor_send_message_upload_audio_action_l27 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_upload_audio_action_l27 (T); }
- if (skip_constructor_send_message_upload_audio_action (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_upload_audio_action (T); }
- if (skip_constructor_send_message_upload_photo_action (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_upload_photo_action (T); }
- if (skip_constructor_send_message_upload_document_action_l27 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_upload_document_action_l27 (T); }
- if (skip_constructor_send_message_upload_document_action (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_upload_document_action (T); }
- if (skip_constructor_send_message_geo_location_action (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_geo_location_action (T); }
- if (skip_constructor_send_message_choose_contact_action (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_send_message_choose_contact_action (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_server_d_h_params *fetch_ds_type_server_d_h_params (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x79cb045d: return fetch_ds_constructor_server_d_h_params_fail (T); break;
- case 0xd0e8075c: return fetch_ds_constructor_server_d_h_params_ok (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_server_d_h_params *fetch_ds_type_bare_server_d_h_params (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_server_d_h_params_fail (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_server_d_h_params_fail (T); }
- if (skip_constructor_server_d_h_params_ok (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_server_d_h_params_ok (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_server_d_h_inner_data *fetch_ds_type_server_d_h_inner_data (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xb5890dba: return fetch_ds_constructor_server_d_h_inner_data (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_server_d_h_inner_data *fetch_ds_type_bare_server_d_h_inner_data (struct paramed_type *T) {
- return fetch_ds_constructor_server_d_h_inner_data (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_set_client_d_h_params_answer *fetch_ds_type_set_client_d_h_params_answer (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x3bcbf734: return fetch_ds_constructor_dh_gen_ok (T); break;
- case 0x46dc1fb9: return fetch_ds_constructor_dh_gen_retry (T); break;
- case 0xa69dae02: return fetch_ds_constructor_dh_gen_fail (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_set_client_d_h_params_answer *fetch_ds_type_bare_set_client_d_h_params_answer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_dh_gen_ok (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_dh_gen_ok (T); }
- if (skip_constructor_dh_gen_retry (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_dh_gen_retry (T); }
- if (skip_constructor_dh_gen_fail (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_dh_gen_fail (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_sticker_pack *fetch_ds_type_sticker_pack (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x12b299d4: return fetch_ds_constructor_sticker_pack (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_sticker_pack *fetch_ds_type_bare_sticker_pack (struct paramed_type *T) {
- return fetch_ds_constructor_sticker_pack (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_sticker_set *fetch_ds_type_sticker_set (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xa7a43b17: return fetch_ds_constructor_sticker_set (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_sticker_set *fetch_ds_type_bare_sticker_set (struct paramed_type *T) {
- return fetch_ds_constructor_sticker_set (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_string *fetch_ds_type_string (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xb5286e24: return fetch_ds_constructor_string (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_string *fetch_ds_type_bare_string (struct paramed_type *T) {
- return fetch_ds_constructor_string (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_update *fetch_ds_type_update (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x1f2b0afd: return fetch_ds_constructor_update_new_message (T); break;
- case 0x4e90bfd6: return fetch_ds_constructor_update_message_i_d (T); break;
- case 0xa20db0e5: return fetch_ds_constructor_update_delete_messages (T); break;
- case 0x5c486927: return fetch_ds_constructor_update_user_typing (T); break;
- case 0x9a65ea1f: return fetch_ds_constructor_update_chat_user_typing (T); break;
- case 0x07761198: return fetch_ds_constructor_update_chat_participants (T); break;
- case 0x1bfbd823: return fetch_ds_constructor_update_user_status (T); break;
- case 0xa7332b73: return fetch_ds_constructor_update_user_name (T); break;
- case 0x95313b0c: return fetch_ds_constructor_update_user_photo (T); break;
- case 0x2575bbb9: return fetch_ds_constructor_update_contact_registered (T); break;
- case 0x9d2e67c5: return fetch_ds_constructor_update_contact_link (T); break;
- case 0x8f06529a: return fetch_ds_constructor_update_new_authorization (T); break;
- case 0x5a68e3f7: return fetch_ds_constructor_update_new_geo_chat_message (T); break;
- case 0x12bcbd9a: return fetch_ds_constructor_update_new_encrypted_message (T); break;
- case 0x1710f156: return fetch_ds_constructor_update_encrypted_chat_typing (T); break;
- case 0xb4a2e88d: return fetch_ds_constructor_update_encryption (T); break;
- case 0x38fe25b7: return fetch_ds_constructor_update_encrypted_messages_read (T); break;
- case 0x3a0eeb22: return fetch_ds_constructor_update_chat_participant_add (T); break;
- case 0x6e5f8c22: return fetch_ds_constructor_update_chat_participant_delete (T); break;
- case 0x8e5e9873: return fetch_ds_constructor_update_dc_options (T); break;
- case 0x80ece81a: return fetch_ds_constructor_update_user_blocked (T); break;
- case 0xbec268ef: return fetch_ds_constructor_update_notify_settings (T); break;
- case 0x382dd3e4: return fetch_ds_constructor_update_service_notification (T); break;
- case 0xee3b272a: return fetch_ds_constructor_update_privacy (T); break;
- case 0x12b9417b: return fetch_ds_constructor_update_user_phone (T); break;
- case 0x9961fd5c: return fetch_ds_constructor_update_read_history_inbox (T); break;
- case 0x2f2f21bf: return fetch_ds_constructor_update_read_history_outbox (T); break;
- case 0x2cc36971: return fetch_ds_constructor_update_web_page (T); break;
- case 0x68c13933: return fetch_ds_constructor_update_read_messages_contents (T); break;
- case 0x03114739: return fetch_ds_constructor_update_msg_update (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_update *fetch_ds_type_bare_update (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_update_new_message (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_new_message (T); }
- if (skip_constructor_update_message_i_d (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_message_i_d (T); }
- if (skip_constructor_update_delete_messages (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_delete_messages (T); }
- if (skip_constructor_update_user_typing (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_user_typing (T); }
- if (skip_constructor_update_chat_user_typing (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_chat_user_typing (T); }
- if (skip_constructor_update_chat_participants (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_chat_participants (T); }
- if (skip_constructor_update_user_status (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_user_status (T); }
- if (skip_constructor_update_user_name (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_user_name (T); }
- if (skip_constructor_update_user_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_user_photo (T); }
- if (skip_constructor_update_contact_registered (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_contact_registered (T); }
- if (skip_constructor_update_contact_link (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_contact_link (T); }
- if (skip_constructor_update_new_authorization (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_new_authorization (T); }
- if (skip_constructor_update_new_geo_chat_message (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_new_geo_chat_message (T); }
- if (skip_constructor_update_new_encrypted_message (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_new_encrypted_message (T); }
- if (skip_constructor_update_encrypted_chat_typing (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_encrypted_chat_typing (T); }
- if (skip_constructor_update_encryption (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_encryption (T); }
- if (skip_constructor_update_encrypted_messages_read (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_encrypted_messages_read (T); }
- if (skip_constructor_update_chat_participant_add (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_chat_participant_add (T); }
- if (skip_constructor_update_chat_participant_delete (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_chat_participant_delete (T); }
- if (skip_constructor_update_dc_options (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_dc_options (T); }
- if (skip_constructor_update_user_blocked (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_user_blocked (T); }
- if (skip_constructor_update_notify_settings (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_notify_settings (T); }
- if (skip_constructor_update_service_notification (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_service_notification (T); }
- if (skip_constructor_update_privacy (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_privacy (T); }
- if (skip_constructor_update_user_phone (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_user_phone (T); }
- if (skip_constructor_update_read_history_inbox (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_read_history_inbox (T); }
- if (skip_constructor_update_read_history_outbox (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_read_history_outbox (T); }
- if (skip_constructor_update_web_page (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_web_page (T); }
- if (skip_constructor_update_read_messages_contents (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_read_messages_contents (T); }
- if (skip_constructor_update_msg_update (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_msg_update (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_updates *fetch_ds_type_updates (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xe317af7e: return fetch_ds_constructor_updates_too_long (T); break;
- case 0xed5c2127: return fetch_ds_constructor_update_short_message (T); break;
- case 0x52238b3c: return fetch_ds_constructor_update_short_chat_message (T); break;
- case 0x78d4dec1: return fetch_ds_constructor_update_short (T); break;
- case 0x725b04c3: return fetch_ds_constructor_updates_combined (T); break;
- case 0x74ae4240: return fetch_ds_constructor_updates (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_updates *fetch_ds_type_bare_updates (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_updates_too_long (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_updates_too_long (T); }
- if (skip_constructor_update_short_message (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_short_message (T); }
- if (skip_constructor_update_short_chat_message (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_short_chat_message (T); }
- if (skip_constructor_update_short (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_update_short (T); }
- if (skip_constructor_updates_combined (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_updates_combined (T); }
- if (skip_constructor_updates (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_updates (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_user *fetch_ds_type_user (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x200250ba: return fetch_ds_constructor_user_empty (T); break;
- case 0x22e49072: return fetch_ds_constructor_user (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_user *fetch_ds_type_bare_user (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_user_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_user_empty (T); }
- if (skip_constructor_user (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_user (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_user_full *fetch_ds_type_user_full (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x5a89ac5b: return fetch_ds_constructor_user_full (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_user_full *fetch_ds_type_bare_user_full (struct paramed_type *T) {
- return fetch_ds_constructor_user_full (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_user_profile_photo *fetch_ds_type_user_profile_photo (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x4f11bae1: return fetch_ds_constructor_user_profile_photo_empty (T); break;
- case 0xd559d8c8: return fetch_ds_constructor_user_profile_photo (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_user_profile_photo *fetch_ds_type_bare_user_profile_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_user_profile_photo_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_user_profile_photo_empty (T); }
- if (skip_constructor_user_profile_photo (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_user_profile_photo (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_user_status *fetch_ds_type_user_status (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x09d05049: return fetch_ds_constructor_user_status_empty (T); break;
- case 0xedb93949: return fetch_ds_constructor_user_status_online (T); break;
- case 0x008c703f: return fetch_ds_constructor_user_status_offline (T); break;
- case 0xe26f42f1: return fetch_ds_constructor_user_status_recently (T); break;
- case 0x07bf09fc: return fetch_ds_constructor_user_status_last_week (T); break;
- case 0x77ebc742: return fetch_ds_constructor_user_status_last_month (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_user_status *fetch_ds_type_bare_user_status (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_user_status_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_user_status_empty (T); }
- if (skip_constructor_user_status_online (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_user_status_online (T); }
- if (skip_constructor_user_status_offline (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_user_status_offline (T); }
- if (skip_constructor_user_status_recently (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_user_status_recently (T); }
- if (skip_constructor_user_status_last_week (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_user_status_last_week (T); }
- if (skip_constructor_user_status_last_month (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_user_status_last_month (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_vector *fetch_ds_type_vector (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x1cb5c415: return fetch_ds_constructor_vector (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_vector *fetch_ds_type_bare_vector (struct paramed_type *T) {
- return fetch_ds_constructor_vector (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_video *fetch_ds_type_video (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xc10658a8: return fetch_ds_constructor_video_empty (T); break;
- case 0xee9f4a4d: return fetch_ds_constructor_video (T); break;
- case 0x388fa391: return fetch_ds_constructor_video_l27 (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_video *fetch_ds_type_bare_video (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_video_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_video_empty (T); }
- if (skip_constructor_video (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_video (T); }
- if (skip_constructor_video_l27 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_video_l27 (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_wall_paper *fetch_ds_type_wall_paper (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xccb03657: return fetch_ds_constructor_wall_paper (T); break;
- case 0x63117f24: return fetch_ds_constructor_wall_paper_solid (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_wall_paper *fetch_ds_type_bare_wall_paper (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_wall_paper (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_wall_paper (T); }
- if (skip_constructor_wall_paper_solid (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_wall_paper_solid (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_web_page *fetch_ds_type_web_page (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xeb1477e8: return fetch_ds_constructor_web_page_empty (T); break;
- case 0xc586da1c: return fetch_ds_constructor_web_page_pending (T); break;
- case 0xa31ea0b5: return fetch_ds_constructor_web_page (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_web_page *fetch_ds_type_bare_web_page (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_web_page_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_web_page_empty (T); }
- if (skip_constructor_web_page_pending (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_web_page_pending (T); }
- if (skip_constructor_web_page (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_web_page (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_account_authorizations *fetch_ds_type_account_authorizations (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x1250abde: return fetch_ds_constructor_account_authorizations (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_account_authorizations *fetch_ds_type_bare_account_authorizations (struct paramed_type *T) {
- return fetch_ds_constructor_account_authorizations (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_account_password *fetch_ds_type_account_password (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x96dabc18: return fetch_ds_constructor_account_no_password (T); break;
- case 0x7c18141c: return fetch_ds_constructor_account_password (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_account_password *fetch_ds_type_bare_account_password (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_account_no_password (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_account_no_password (T); }
- if (skip_constructor_account_password (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_account_password (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_account_password_input_settings *fetch_ds_type_account_password_input_settings (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xbcfc532c: return fetch_ds_constructor_account_password_input_settings (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_account_password_input_settings *fetch_ds_type_bare_account_password_input_settings (struct paramed_type *T) {
- return fetch_ds_constructor_account_password_input_settings (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_account_password_settings *fetch_ds_type_account_password_settings (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xb7b72ab3: return fetch_ds_constructor_account_password_settings (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_account_password_settings *fetch_ds_type_bare_account_password_settings (struct paramed_type *T) {
- return fetch_ds_constructor_account_password_settings (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_account_privacy_rules *fetch_ds_type_account_privacy_rules (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x554abb6f: return fetch_ds_constructor_account_privacy_rules (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_account_privacy_rules *fetch_ds_type_bare_account_privacy_rules (struct paramed_type *T) {
- return fetch_ds_constructor_account_privacy_rules (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_account_sent_change_phone_code *fetch_ds_type_account_sent_change_phone_code (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xa4f58c4c: return fetch_ds_constructor_account_sent_change_phone_code (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_account_sent_change_phone_code *fetch_ds_type_bare_account_sent_change_phone_code (struct paramed_type *T) {
- return fetch_ds_constructor_account_sent_change_phone_code (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_auth_authorization *fetch_ds_type_auth_authorization (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xff036af1: return fetch_ds_constructor_auth_authorization (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_auth_authorization *fetch_ds_type_bare_auth_authorization (struct paramed_type *T) {
- return fetch_ds_constructor_auth_authorization (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_auth_checked_phone *fetch_ds_type_auth_checked_phone (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x811ea28e: return fetch_ds_constructor_auth_checked_phone (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_auth_checked_phone *fetch_ds_type_bare_auth_checked_phone (struct paramed_type *T) {
- return fetch_ds_constructor_auth_checked_phone (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_auth_exported_authorization *fetch_ds_type_auth_exported_authorization (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xdf969c2d: return fetch_ds_constructor_auth_exported_authorization (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_auth_exported_authorization *fetch_ds_type_bare_auth_exported_authorization (struct paramed_type *T) {
- return fetch_ds_constructor_auth_exported_authorization (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_auth_password_recovery *fetch_ds_type_auth_password_recovery (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x137948a5: return fetch_ds_constructor_auth_password_recovery (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_auth_password_recovery *fetch_ds_type_bare_auth_password_recovery (struct paramed_type *T) {
- return fetch_ds_constructor_auth_password_recovery (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_auth_sent_code *fetch_ds_type_auth_sent_code (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xefed51d9: return fetch_ds_constructor_auth_sent_code (T); break;
- case 0xe325edcf: return fetch_ds_constructor_auth_sent_app_code (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_auth_sent_code *fetch_ds_type_bare_auth_sent_code (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_auth_sent_code (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_auth_sent_code (T); }
- if (skip_constructor_auth_sent_app_code (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_auth_sent_app_code (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_binlog_encr_key *fetch_ds_type_binlog_encr_key (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x0377168f: return fetch_ds_constructor_binlog_encr_key (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_binlog_encr_key *fetch_ds_type_bare_binlog_encr_key (struct paramed_type *T) {
- return fetch_ds_constructor_binlog_encr_key (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_binlog_update *fetch_ds_type_binlog_update (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x3b06de69: return fetch_ds_constructor_binlog_start (T); break;
- case 0xf96feb32: return fetch_ds_constructor_binlog_dc_option (T); break;
- case 0x7c0d22d8: return fetch_ds_constructor_binlog_dc_option_new (T); break;
- case 0x71e8c156: return fetch_ds_constructor_binlog_auth_key (T); break;
- case 0x9e83dbdc: return fetch_ds_constructor_binlog_default_dc (T); break;
- case 0x26451bb5: return fetch_ds_constructor_binlog_dc_signed (T); break;
- case 0x68a870e8: return fetch_ds_constructor_binlog_our_id (T); break;
- case 0xeaeb7826: return fetch_ds_constructor_binlog_set_dh_params (T); break;
- case 0x2ca8c939: return fetch_ds_constructor_binlog_set_pts (T); break;
- case 0xd95738ac: return fetch_ds_constructor_binlog_set_qts (T); break;
- case 0x1d0f4b52: return fetch_ds_constructor_binlog_set_date (T); break;
- case 0x6eeb2989: return fetch_ds_constructor_binlog_set_seq (T); break;
- case 0xee1b38e8: return fetch_ds_constructor_binlog_encr_chat_delete (T); break;
- case 0x84977251: return fetch_ds_constructor_binlog_encr_chat_new (T); break;
- case 0x9d49488d: return fetch_ds_constructor_binlog_encr_chat_exchange_new (T); break;
- case 0xac55d447: return fetch_ds_constructor_binlog_user_delete (T); break;
- case 0x127cf2f9: return fetch_ds_constructor_binlog_user_new (T); break;
- case 0x0a10aa92: return fetch_ds_constructor_binlog_chat_new (T); break;
- case 0x535475ea: return fetch_ds_constructor_binlog_chat_add_participant (T); break;
- case 0x7dd1a1a2: return fetch_ds_constructor_binlog_chat_del_participant (T); break;
- case 0x3c873416: return fetch_ds_constructor_binlog_set_msg_id (T); break;
- case 0x847e77b1: return fetch_ds_constructor_binlog_message_delete (T); break;
- case 0x427cfcdb: return fetch_ds_constructor_binlog_message_new (T); break;
- case 0x6cf7cabc: return fetch_ds_constructor_binlog_message_encr_new (T); break;
- case 0x6dd4d85f: return fetch_ds_constructor_binlog_msg_update (T); break;
- case 0x83327955: return fetch_ds_constructor_binlog_reset_authorization (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_binlog_update *fetch_ds_type_bare_binlog_update (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_binlog_start (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_start (T); }
- if (skip_constructor_binlog_dc_option (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_dc_option (T); }
- if (skip_constructor_binlog_dc_option_new (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_dc_option_new (T); }
- if (skip_constructor_binlog_auth_key (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_auth_key (T); }
- if (skip_constructor_binlog_default_dc (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_default_dc (T); }
- if (skip_constructor_binlog_dc_signed (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_dc_signed (T); }
- if (skip_constructor_binlog_our_id (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_our_id (T); }
- if (skip_constructor_binlog_set_dh_params (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_set_dh_params (T); }
- if (skip_constructor_binlog_set_pts (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_set_pts (T); }
- if (skip_constructor_binlog_set_qts (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_set_qts (T); }
- if (skip_constructor_binlog_set_date (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_set_date (T); }
- if (skip_constructor_binlog_set_seq (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_set_seq (T); }
- if (skip_constructor_binlog_encr_chat_delete (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_encr_chat_delete (T); }
- if (skip_constructor_binlog_encr_chat_new (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_encr_chat_new (T); }
- if (skip_constructor_binlog_encr_chat_exchange_new (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_encr_chat_exchange_new (T); }
- if (skip_constructor_binlog_user_delete (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_user_delete (T); }
- if (skip_constructor_binlog_user_new (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_user_new (T); }
- if (skip_constructor_binlog_chat_new (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_chat_new (T); }
- if (skip_constructor_binlog_chat_add_participant (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_chat_add_participant (T); }
- if (skip_constructor_binlog_chat_del_participant (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_chat_del_participant (T); }
- if (skip_constructor_binlog_set_msg_id (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_set_msg_id (T); }
- if (skip_constructor_binlog_message_delete (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_message_delete (T); }
- if (skip_constructor_binlog_message_new (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_message_new (T); }
- if (skip_constructor_binlog_message_encr_new (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_message_encr_new (T); }
- if (skip_constructor_binlog_msg_update (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_msg_update (T); }
- if (skip_constructor_binlog_reset_authorization (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_binlog_reset_authorization (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_contacts_blocked *fetch_ds_type_contacts_blocked (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x1c138d15: return fetch_ds_constructor_contacts_blocked (T); break;
- case 0x900802a1: return fetch_ds_constructor_contacts_blocked_slice (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_contacts_blocked *fetch_ds_type_bare_contacts_blocked (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_contacts_blocked (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_contacts_blocked (T); }
- if (skip_constructor_contacts_blocked_slice (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_contacts_blocked_slice (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_contacts_contacts *fetch_ds_type_contacts_contacts (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xb74ba9d2: return fetch_ds_constructor_contacts_contacts_not_modified (T); break;
- case 0x6f8b8cb2: return fetch_ds_constructor_contacts_contacts (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_contacts_contacts *fetch_ds_type_bare_contacts_contacts (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_contacts_contacts_not_modified (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_contacts_contacts_not_modified (T); }
- if (skip_constructor_contacts_contacts (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_contacts_contacts (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_contacts_found *fetch_ds_type_contacts_found (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x0566000e: return fetch_ds_constructor_contacts_found (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_contacts_found *fetch_ds_type_bare_contacts_found (struct paramed_type *T) {
- return fetch_ds_constructor_contacts_found (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_contacts_imported_contacts *fetch_ds_type_contacts_imported_contacts (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xad524315: return fetch_ds_constructor_contacts_imported_contacts (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_contacts_imported_contacts *fetch_ds_type_bare_contacts_imported_contacts (struct paramed_type *T) {
- return fetch_ds_constructor_contacts_imported_contacts (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_contacts_link *fetch_ds_type_contacts_link (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x3ace484c: return fetch_ds_constructor_contacts_link (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_contacts_link *fetch_ds_type_bare_contacts_link (struct paramed_type *T) {
- return fetch_ds_constructor_contacts_link (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_contacts_suggested *fetch_ds_type_contacts_suggested (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x5649dcc5: return fetch_ds_constructor_contacts_suggested (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_contacts_suggested *fetch_ds_type_bare_contacts_suggested (struct paramed_type *T) {
- return fetch_ds_constructor_contacts_suggested (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_geochats_located *fetch_ds_type_geochats_located (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x48feb267: return fetch_ds_constructor_geochats_located (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_geochats_located *fetch_ds_type_bare_geochats_located (struct paramed_type *T) {
- return fetch_ds_constructor_geochats_located (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_geochats_messages *fetch_ds_type_geochats_messages (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xd1526db1: return fetch_ds_constructor_geochats_messages (T); break;
- case 0xbc5863e8: return fetch_ds_constructor_geochats_messages_slice (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_geochats_messages *fetch_ds_type_bare_geochats_messages (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_geochats_messages (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_geochats_messages (T); }
- if (skip_constructor_geochats_messages_slice (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_geochats_messages_slice (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_geochats_stated_message *fetch_ds_type_geochats_stated_message (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x17b1578b: return fetch_ds_constructor_geochats_stated_message (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_geochats_stated_message *fetch_ds_type_bare_geochats_stated_message (struct paramed_type *T) {
- return fetch_ds_constructor_geochats_stated_message (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_help_app_update *fetch_ds_type_help_app_update (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x8987f311: return fetch_ds_constructor_help_app_update (T); break;
- case 0xc45a6536: return fetch_ds_constructor_help_no_app_update (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_help_app_update *fetch_ds_type_bare_help_app_update (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_help_app_update (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_help_app_update (T); }
- if (skip_constructor_help_no_app_update (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_help_no_app_update (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_help_invite_text *fetch_ds_type_help_invite_text (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x18cb9f78: return fetch_ds_constructor_help_invite_text (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_help_invite_text *fetch_ds_type_bare_help_invite_text (struct paramed_type *T) {
- return fetch_ds_constructor_help_invite_text (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_help_support *fetch_ds_type_help_support (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x17c6b5f6: return fetch_ds_constructor_help_support (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_help_support *fetch_ds_type_bare_help_support (struct paramed_type *T) {
- return fetch_ds_constructor_help_support (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_affected_history *fetch_ds_type_messages_affected_history (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xb45c69d1: return fetch_ds_constructor_messages_affected_history (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_affected_history *fetch_ds_type_bare_messages_affected_history (struct paramed_type *T) {
- return fetch_ds_constructor_messages_affected_history (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_affected_messages *fetch_ds_type_messages_affected_messages (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x84d19185: return fetch_ds_constructor_messages_affected_messages (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_affected_messages *fetch_ds_type_bare_messages_affected_messages (struct paramed_type *T) {
- return fetch_ds_constructor_messages_affected_messages (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_all_stickers *fetch_ds_type_messages_all_stickers (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xe86602c3: return fetch_ds_constructor_messages_all_stickers_not_modified (T); break;
- case 0x5ce352ec: return fetch_ds_constructor_messages_all_stickers (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_all_stickers *fetch_ds_type_bare_messages_all_stickers (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_all_stickers_not_modified (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_all_stickers_not_modified (T); }
- if (skip_constructor_messages_all_stickers (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_all_stickers (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_chat_full *fetch_ds_type_messages_chat_full (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xe5d7d19c: return fetch_ds_constructor_messages_chat_full (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_chat_full *fetch_ds_type_bare_messages_chat_full (struct paramed_type *T) {
- return fetch_ds_constructor_messages_chat_full (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_chats *fetch_ds_type_messages_chats (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x64ff9fd5: return fetch_ds_constructor_messages_chats (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_chats *fetch_ds_type_bare_messages_chats (struct paramed_type *T) {
- return fetch_ds_constructor_messages_chats (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_dh_config *fetch_ds_type_messages_dh_config (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xc0e24635: return fetch_ds_constructor_messages_dh_config_not_modified (T); break;
- case 0x2c221edd: return fetch_ds_constructor_messages_dh_config (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_dh_config *fetch_ds_type_bare_messages_dh_config (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_dh_config_not_modified (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_dh_config_not_modified (T); }
- if (skip_constructor_messages_dh_config (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_dh_config (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_dialogs *fetch_ds_type_messages_dialogs (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x15ba6c40: return fetch_ds_constructor_messages_dialogs (T); break;
- case 0x71e094f3: return fetch_ds_constructor_messages_dialogs_slice (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_dialogs *fetch_ds_type_bare_messages_dialogs (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_dialogs (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_dialogs (T); }
- if (skip_constructor_messages_dialogs_slice (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_dialogs_slice (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_message *fetch_ds_type_messages_message (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x3f4e0648: return fetch_ds_constructor_messages_message_empty (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_message *fetch_ds_type_bare_messages_message (struct paramed_type *T) {
- return fetch_ds_constructor_messages_message_empty (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_messages *fetch_ds_type_messages_messages (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x8c718e87: return fetch_ds_constructor_messages_messages (T); break;
- case 0x0b446ae3: return fetch_ds_constructor_messages_messages_slice (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_messages *fetch_ds_type_bare_messages_messages (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_messages (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_messages (T); }
- if (skip_constructor_messages_messages_slice (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_messages_slice (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_sent_encrypted_message *fetch_ds_type_messages_sent_encrypted_message (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x560f8935: return fetch_ds_constructor_messages_sent_encrypted_message (T); break;
- case 0x9493ff32: return fetch_ds_constructor_messages_sent_encrypted_file (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_sent_encrypted_message *fetch_ds_type_bare_messages_sent_encrypted_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_sent_encrypted_message (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_sent_encrypted_message (T); }
- if (skip_constructor_messages_sent_encrypted_file (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_sent_encrypted_file (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_sent_message *fetch_ds_type_messages_sent_message (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x4c3d47f3: return fetch_ds_constructor_messages_sent_message (T); break;
- case 0x35a1a663: return fetch_ds_constructor_messages_sent_message_link (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_sent_message *fetch_ds_type_bare_messages_sent_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_sent_message (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_sent_message (T); }
- if (skip_constructor_messages_sent_message_link (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_sent_message_link (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_sticker_set *fetch_ds_type_messages_sticker_set (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xb60a24a6: return fetch_ds_constructor_messages_sticker_set (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_sticker_set *fetch_ds_type_bare_messages_sticker_set (struct paramed_type *T) {
- return fetch_ds_constructor_messages_sticker_set (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_messages_stickers *fetch_ds_type_messages_stickers (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xf1749a22: return fetch_ds_constructor_messages_stickers_not_modified (T); break;
- case 0x8a8ecd32: return fetch_ds_constructor_messages_stickers (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_messages_stickers *fetch_ds_type_bare_messages_stickers (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_stickers_not_modified (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_stickers_not_modified (T); }
- if (skip_constructor_messages_stickers (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_messages_stickers (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_photos_photo *fetch_ds_type_photos_photo (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x20212ca8: return fetch_ds_constructor_photos_photo (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_photos_photo *fetch_ds_type_bare_photos_photo (struct paramed_type *T) {
- return fetch_ds_constructor_photos_photo (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_photos_photos *fetch_ds_type_photos_photos (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x8dca6aa5: return fetch_ds_constructor_photos_photos (T); break;
- case 0x15051f54: return fetch_ds_constructor_photos_photos_slice (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_photos_photos *fetch_ds_type_bare_photos_photos (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_photos_photos (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_photos_photos (T); }
- if (skip_constructor_photos_photos_slice (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_photos_photos_slice (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_storage_file_type *fetch_ds_type_storage_file_type (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xaa963b05: return fetch_ds_constructor_storage_file_unknown (T); break;
- case 0x007efe0e: return fetch_ds_constructor_storage_file_jpeg (T); break;
- case 0xcae1aadf: return fetch_ds_constructor_storage_file_gif (T); break;
- case 0x0a4f63c0: return fetch_ds_constructor_storage_file_png (T); break;
- case 0xae1e508d: return fetch_ds_constructor_storage_file_pdf (T); break;
- case 0x528a0677: return fetch_ds_constructor_storage_file_mp3 (T); break;
- case 0x4b09ebbc: return fetch_ds_constructor_storage_file_mov (T); break;
- case 0x40bc6f52: return fetch_ds_constructor_storage_file_partial (T); break;
- case 0xb3cea0e4: return fetch_ds_constructor_storage_file_mp4 (T); break;
- case 0x1081464c: return fetch_ds_constructor_storage_file_webp (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_storage_file_type *fetch_ds_type_bare_storage_file_type (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_storage_file_unknown (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_storage_file_unknown (T); }
- if (skip_constructor_storage_file_jpeg (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_storage_file_jpeg (T); }
- if (skip_constructor_storage_file_gif (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_storage_file_gif (T); }
- if (skip_constructor_storage_file_png (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_storage_file_png (T); }
- if (skip_constructor_storage_file_pdf (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_storage_file_pdf (T); }
- if (skip_constructor_storage_file_mp3 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_storage_file_mp3 (T); }
- if (skip_constructor_storage_file_mov (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_storage_file_mov (T); }
- if (skip_constructor_storage_file_partial (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_storage_file_partial (T); }
- if (skip_constructor_storage_file_mp4 (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_storage_file_mp4 (T); }
- if (skip_constructor_storage_file_webp (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_storage_file_webp (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_updates_difference *fetch_ds_type_updates_difference (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x5d75a138: return fetch_ds_constructor_updates_difference_empty (T); break;
- case 0x00f49ca0: return fetch_ds_constructor_updates_difference (T); break;
- case 0xa8fb1981: return fetch_ds_constructor_updates_difference_slice (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_updates_difference *fetch_ds_type_bare_updates_difference (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_updates_difference_empty (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_updates_difference_empty (T); }
- if (skip_constructor_updates_difference (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_updates_difference (T); }
- if (skip_constructor_updates_difference_slice (T) >= 0) { in_ptr = save_in_ptr; return fetch_ds_constructor_updates_difference_slice (T); }
- assert (0);
- return NULL;
-}
-struct tl_ds_updates_state *fetch_ds_type_updates_state (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0xa56c2a3e: return fetch_ds_constructor_updates_state (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_updates_state *fetch_ds_type_bare_updates_state (struct paramed_type *T) {
- return fetch_ds_constructor_updates_state (T);
- assert (0);
- return NULL;
-}
-struct tl_ds_upload_file *fetch_ds_type_upload_file (struct paramed_type *T) {
- assert (in_remaining () >= 4);
- int magic = fetch_int ();
- switch (magic) {
- case 0x096a18d5: return fetch_ds_constructor_upload_file (T); break;
- default: assert (0); return NULL;
- }
-}
-struct tl_ds_upload_file *fetch_ds_type_bare_upload_file (struct paramed_type *T) {
- return fetch_ds_constructor_upload_file (T);
- assert (0);
- return NULL;
-}
-void *fetch_ds_type_any (struct paramed_type *T) {
- switch (T->type->name) {
- case 0xb8d0afdf: return fetch_ds_type_account_days_t_t_l (T);
- case 0x472f5020: return fetch_ds_type_bare_account_days_t_t_l (T);
- case 0x9fc5ec4e: return fetch_ds_type_audio (T);
- case 0x603a13b1: return fetch_ds_type_bare_audio (T);
- case 0x7bf2e6f6: return fetch_ds_type_authorization (T);
- case 0x840d1909: return fetch_ds_type_bare_authorization (T);
- case 0x250be282: return fetch_ds_type_bool (T);
- case 0xdaf41d7d: return fetch_ds_type_bare_bool (T);
- case 0x75e7ea6c: return fetch_ds_type_bot_command (T);
- case 0x8a181593: return fetch_ds_type_bare_bot_command (T);
- case 0xb2e16f93: return fetch_ds_type_bot_info (T);
- case 0x4d1e906c: return fetch_ds_type_bare_bot_info (T);
- case 0x0ee1379f: return fetch_ds_type_bytes (T);
- case 0xf11ec860: return fetch_ds_type_bare_bytes (T);
- case 0x7bd865dc: return fetch_ds_type_chat (T);
- case 0x84279a23: return fetch_ds_type_bare_chat (T);
- case 0x2e02a614: return fetch_ds_type_chat_full (T);
- case 0xd1fd59eb: return fetch_ds_type_bare_chat_full (T);
- case 0x94f910b1: return fetch_ds_type_chat_invite (T);
- case 0x6b06ef4e: return fetch_ds_type_bare_chat_invite (T);
- case 0x3631cf4c: return fetch_ds_type_chat_located (T);
- case 0xc9ce30b3: return fetch_ds_type_bare_chat_located (T);
- case 0xc8d7493e: return fetch_ds_type_chat_participant (T);
- case 0x3728b6c1: return fetch_ds_type_bare_chat_participant (T);
- case 0x77930f9f: return fetch_ds_type_chat_participants (T);
- case 0x886cf060: return fetch_ds_type_bare_chat_participants (T);
- case 0x56922676: return fetch_ds_type_chat_photo (T);
- case 0xa96dd989: return fetch_ds_type_bare_chat_photo (T);
- case 0x6643b654: return fetch_ds_type_client_d_h_inner_data (T);
- case 0x99bc49ab: return fetch_ds_type_bare_client_d_h_inner_data (T);
- case 0x4e32b894: return fetch_ds_type_config (T);
- case 0xb1cd476b: return fetch_ds_type_bare_config (T);
- case 0xf911c994: return fetch_ds_type_contact (T);
- case 0x06ee366b: return fetch_ds_type_bare_contact (T);
- case 0x561bc879: return fetch_ds_type_contact_blocked (T);
- case 0xa9e43786: return fetch_ds_type_bare_contact_blocked (T);
- case 0xea879f95: return fetch_ds_type_contact_found (T);
- case 0x1578606a: return fetch_ds_type_bare_contact_found (T);
- case 0x522fbc63: return fetch_ds_type_contact_link (T);
- case 0xadd0439c: return fetch_ds_type_bare_contact_link (T);
- case 0xd3680c61: return fetch_ds_type_contact_status (T);
- case 0x2c97f39e: return fetch_ds_type_bare_contact_status (T);
- case 0x3de191a1: return fetch_ds_type_contact_suggested (T);
- case 0xc21e6e5e: return fetch_ds_type_bare_contact_suggested (T);
- case 0x2b1a62f0: return fetch_ds_type_dc_option (T);
- case 0xd4e59d0f: return fetch_ds_type_bare_dc_option (T);
- case 0x535b7918: return fetch_ds_type_decrypted_message (T);
- case 0xaca486e7: return fetch_ds_type_bare_decrypted_message (T);
- case 0x4e0eefde: return fetch_ds_type_decrypted_message_action (T);
- case 0xb1f11021: return fetch_ds_type_bare_decrypted_message_action (T);
- case 0x1be31789: return fetch_ds_type_decrypted_message_layer (T);
- case 0xe41ce876: return fetch_ds_type_bare_decrypted_message_layer (T);
- case 0x34e0d674: return fetch_ds_type_decrypted_message_media (T);
- case 0xcb1f298b: return fetch_ds_type_bare_decrypted_message_media (T);
- case 0xc1dd804a: return fetch_ds_type_dialog (T);
- case 0x3e227fb5: return fetch_ds_type_bare_dialog (T);
- case 0xae636f24: return fetch_ds_type_disabled_feature (T);
- case 0x519c90db: return fetch_ds_type_bare_disabled_feature (T);
- case 0x51a73418: return fetch_ds_type_document (T);
- case 0xae58cbe7: return fetch_ds_type_bare_document (T);
- case 0x97c637a3: return fetch_ds_type_document_attribute (T);
- case 0x6839c85c: return fetch_ds_type_bare_document_attribute (T);
- case 0x2210c154: return fetch_ds_type_double (T);
- case 0xddef3eab: return fetch_ds_type_bare_double (T);
- case 0xb1718213: return fetch_ds_type_encrypted_chat (T);
- case 0x4e8e7dec: return fetch_ds_type_bare_encrypted_chat (T);
- case 0x886fd032: return fetch_ds_type_encrypted_file (T);
- case 0x77902fcd: return fetch_ds_type_bare_encrypted_file (T);
- case 0xce6b8a1e: return fetch_ds_type_encrypted_message (T);
- case 0x319475e1: return fetch_ds_type_bare_encrypted_message (T);
- case 0xc4b9f9bb: return fetch_ds_type_error (T);
- case 0x3b460644: return fetch_ds_type_bare_error (T);
- case 0x95f132d5: return fetch_ds_type_exported_chat_invite (T);
- case 0x6a0ecd2a: return fetch_ds_type_bare_exported_chat_invite (T);
- case 0x2f8ffb30: return fetch_ds_type_file_location (T);
- case 0xd07004cf: return fetch_ds_type_bare_file_location (T);
- case 0xf67b4034: return fetch_ds_type_geo_chat_message (T);
- case 0x0984bfcb: return fetch_ds_type_bare_geo_chat_message (T);
- case 0x315e0a53: return fetch_ds_type_geo_point (T);
- case 0xcea1f5ac: return fetch_ds_type_bare_geo_point (T);
- case 0xd0028438: return fetch_ds_type_imported_contact (T);
- case 0x2ffd7bc7: return fetch_ds_type_bare_imported_contact (T);
- case 0x770656a8: return fetch_ds_type_input_app_event (T);
- case 0x88f9a957: return fetch_ds_type_bare_input_app_event (T);
- case 0xae8e9c7b: return fetch_ds_type_input_audio (T);
- case 0x51716384: return fetch_ds_type_bare_input_audio (T);
- case 0x3a60776d: return fetch_ds_type_input_chat_photo (T);
- case 0xc59f8892: return fetch_ds_type_bare_input_chat_photo (T);
- case 0xf392b7f4: return fetch_ds_type_input_contact (T);
- case 0x0c6d480b: return fetch_ds_type_bare_input_contact (T);
- case 0x6a8963fc: return fetch_ds_type_input_document (T);
- case 0x95769c03: return fetch_ds_type_bare_input_document (T);
- case 0xf141b5e1: return fetch_ds_type_input_encrypted_chat (T);
- case 0x0ebe4a1e: return fetch_ds_type_bare_input_encrypted_chat (T);
- case 0x0b5c064f: return fetch_ds_type_input_encrypted_file (T);
- case 0xf4a3f9b0: return fetch_ds_type_bare_input_encrypted_file (T);
- case 0x0f60f9ca: return fetch_ds_type_input_file (T);
- case 0xf09f0635: return fetch_ds_type_bare_input_file (T);
- case 0xe6daa38b: return fetch_ds_type_input_file_location (T);
- case 0x19255c74: return fetch_ds_type_bare_input_file_location (T);
- case 0x74d456fa: return fetch_ds_type_input_geo_chat (T);
- case 0x8b2ba905: return fetch_ds_type_bare_input_geo_chat (T);
- case 0x17768f1f: return fetch_ds_type_input_geo_point (T);
- case 0xe88970e0: return fetch_ds_type_bare_input_geo_point (T);
- case 0xb32c91dd: return fetch_ds_type_input_media (T);
- case 0x4cd36e22: return fetch_ds_type_bare_input_media (T);
- case 0x02b6911b: return fetch_ds_type_input_notify_peer (T);
- case 0xfd496ee4: return fetch_ds_type_bare_input_notify_peer (T);
- case 0x9e67268d: return fetch_ds_type_input_peer (T);
- case 0x6198d972: return fetch_ds_type_bare_input_peer (T);
- case 0x185a48ac: return fetch_ds_type_input_peer_notify_events (T);
- case 0xe7a5b753: return fetch_ds_type_bare_input_peer_notify_events (T);
- case 0x46a2ce98: return fetch_ds_type_input_peer_notify_settings (T);
- case 0xb95d3167: return fetch_ds_type_bare_input_peer_notify_settings (T);
- case 0xe74279c9: return fetch_ds_type_input_photo (T);
- case 0x18bd8636: return fetch_ds_type_bare_input_photo (T);
- case 0x7477e321: return fetch_ds_type_input_photo_crop (T);
- case 0x8b881cde: return fetch_ds_type_bare_input_photo_crop (T);
- case 0x4f96cb18: return fetch_ds_type_input_privacy_key (T);
- case 0xb06934e7: return fetch_ds_type_bare_input_privacy_key (T);
- case 0x4b815163: return fetch_ds_type_input_privacy_rule (T);
- case 0xb47eae9c: return fetch_ds_type_bare_input_privacy_rule (T);
- case 0xe44d415c: return fetch_ds_type_input_sticker_set (T);
- case 0x1bb2bea3: return fetch_ds_type_bare_input_sticker_set (T);
- case 0xadfe0c6a: return fetch_ds_type_input_user (T);
- case 0x5201f395: return fetch_ds_type_bare_input_user (T);
- case 0xbb5f7a27: return fetch_ds_type_input_video (T);
- case 0x44a085d8: return fetch_ds_type_bare_input_video (T);
- case 0xa8509bda: return fetch_ds_type_int (T);
- case 0x57af6425: return fetch_ds_type_bare_int (T);
- case 0x7d36c439: return fetch_ds_type_int128 (T);
- case 0x82c93bc6: return fetch_ds_type_bare_int128 (T);
- case 0xf2c798b3: return fetch_ds_type_int256 (T);
- case 0x0d38674c: return fetch_ds_type_bare_int256 (T);
- case 0xa2fa4880: return fetch_ds_type_keyboard_button (T);
- case 0x5d05b77f: return fetch_ds_type_bare_keyboard_button (T);
- case 0x77608b83: return fetch_ds_type_keyboard_button_row (T);
- case 0x889f747c: return fetch_ds_type_bare_keyboard_button_row (T);
- case 0x22076cba: return fetch_ds_type_long (T);
- case 0xddf89345: return fetch_ds_type_bare_long (T);
- case 0x5d652a7f: return fetch_ds_type_message (T);
- case 0xa29ad580: return fetch_ds_type_bare_message (T);
- case 0x383415fa: return fetch_ds_type_message_action (T);
- case 0xc7cbea05: return fetch_ds_type_bare_message_action (T);
- case 0x95f2471a: return fetch_ds_type_message_media (T);
- case 0x6a0db8e5: return fetch_ds_type_bare_message_media (T);
- case 0x80895ae0: return fetch_ds_type_messages_filter (T);
- case 0x7f76a51f: return fetch_ds_type_bare_messages_filter (T);
- case 0x8e1a1775: return fetch_ds_type_nearest_dc (T);
- case 0x71e5e88a: return fetch_ds_type_bare_nearest_dc (T);
- case 0x9fcb8237: return fetch_ds_type_notify_peer (T);
- case 0x60347dc8: return fetch_ds_type_bare_notify_peer (T);
- case 0x56730bcc: return fetch_ds_type_null (T);
- case 0xa98cf433: return fetch_ds_type_bare_null (T);
- case 0xbfa3de38: return fetch_ds_type_p_q_inner_data (T);
- case 0x405c21c7: return fetch_ds_type_bare_p_q_inner_data (T);
- case 0x276159d6: return fetch_ds_type_peer (T);
- case 0xd89ea629: return fetch_ds_type_bare_peer (T);
- case 0xc0c8d13b: return fetch_ds_type_peer_notify_events (T);
- case 0x3f372ec4: return fetch_ds_type_bare_peer_notify_events (T);
- case 0xfdf894fc: return fetch_ds_type_peer_notify_settings (T);
- case 0x02076b03: return fetch_ds_type_bare_peer_notify_settings (T);
- case 0xc207550a: return fetch_ds_type_photo (T);
- case 0x3df8aaf5: return fetch_ds_type_bare_photo (T);
- case 0x900f60dd: return fetch_ds_type_photo_size (T);
- case 0x6ff09f22: return fetch_ds_type_bare_photo_size (T);
- case 0xbc2eab30: return fetch_ds_type_privacy_key (T);
- case 0x43d154cf: return fetch_ds_type_bare_privacy_key (T);
- case 0xa8638aec: return fetch_ds_type_privacy_rule (T);
- case 0x579c7513: return fetch_ds_type_bare_privacy_rule (T);
- case 0xa384b779: return fetch_ds_type_received_notify_message (T);
- case 0x5c7b4886: return fetch_ds_type_bare_received_notify_message (T);
- case 0x612ca4a9: return fetch_ds_type_reply_markup (T);
- case 0x9ed35b56: return fetch_ds_type_bare_reply_markup (T);
- case 0x05162463: return fetch_ds_type_res_p_q (T);
- case 0xfae9db9c: return fetch_ds_type_bare_res_p_q (T);
- case 0x70541c7e: return fetch_ds_type_send_message_action (T);
- case 0x8fabe381: return fetch_ds_type_bare_send_message_action (T);
- case 0xa9230301: return fetch_ds_type_server_d_h_params (T);
- case 0x56dcfcfe: return fetch_ds_type_bare_server_d_h_params (T);
- case 0xb5890dba: return fetch_ds_type_server_d_h_inner_data (T);
- case 0x4a76f245: return fetch_ds_type_bare_server_d_h_inner_data (T);
- case 0xdb8a468f: return fetch_ds_type_set_client_d_h_params_answer (T);
- case 0x2475b970: return fetch_ds_type_bare_set_client_d_h_params_answer (T);
- case 0x12b299d4: return fetch_ds_type_sticker_pack (T);
- case 0xed4d662b: return fetch_ds_type_bare_sticker_pack (T);
- case 0xa7a43b17: return fetch_ds_type_sticker_set (T);
- case 0x585bc4e8: return fetch_ds_type_bare_sticker_set (T);
- case 0xb5286e24: return fetch_ds_type_string (T);
- case 0x4ad791db: return fetch_ds_type_bare_string (T);
- case 0x2e02b27e: return fetch_ds_type_update (T);
- case 0xd1fd4d81: return fetch_ds_type_bare_update (T);
- case 0x22499d27: return fetch_ds_type_updates (T);
- case 0xddb662d8: return fetch_ds_type_bare_updates (T);
- case 0x02e6c0c8: return fetch_ds_type_user (T);
- case 0xfd193f37: return fetch_ds_type_bare_user (T);
- case 0x5a89ac5b: return fetch_ds_type_user_full (T);
- case 0xa57653a4: return fetch_ds_type_bare_user_full (T);
- case 0x9a486229: return fetch_ds_type_user_profile_photo (T);
- case 0x65b79dd6: return fetch_ds_type_bare_user_profile_photo (T);
- case 0x76de9570: return fetch_ds_type_user_status (T);
- case 0x89216a8f: return fetch_ds_type_bare_user_status (T);
- case 0x1cb5c415: return fetch_ds_type_vector (T);
- case 0xe34a3bea: return fetch_ds_type_bare_vector (T);
- case 0x1716b174: return fetch_ds_type_video (T);
- case 0xe8e94e8b: return fetch_ds_type_bare_video (T);
- case 0xafa14973: return fetch_ds_type_wall_paper (T);
- case 0x505eb68c: return fetch_ds_type_bare_wall_paper (T);
- case 0x8d8c0d41: return fetch_ds_type_web_page (T);
- case 0x7273f2be: return fetch_ds_type_bare_web_page (T);
- case 0x1250abde: return fetch_ds_type_account_authorizations (T);
- case 0xedaf5421: return fetch_ds_type_bare_account_authorizations (T);
- case 0xeac2a804: return fetch_ds_type_account_password (T);
- case 0x153d57fb: return fetch_ds_type_bare_account_password (T);
- case 0xbcfc532c: return fetch_ds_type_account_password_input_settings (T);
- case 0x4303acd3: return fetch_ds_type_bare_account_password_input_settings (T);
- case 0xb7b72ab3: return fetch_ds_type_account_password_settings (T);
- case 0x4848d54c: return fetch_ds_type_bare_account_password_settings (T);
- case 0x554abb6f: return fetch_ds_type_account_privacy_rules (T);
- case 0xaab54490: return fetch_ds_type_bare_account_privacy_rules (T);
- case 0xa4f58c4c: return fetch_ds_type_account_sent_change_phone_code (T);
- case 0x5b0a73b3: return fetch_ds_type_bare_account_sent_change_phone_code (T);
- case 0xff036af1: return fetch_ds_type_auth_authorization (T);
- case 0x00fc950e: return fetch_ds_type_bare_auth_authorization (T);
- case 0x811ea28e: return fetch_ds_type_auth_checked_phone (T);
- case 0x7ee15d71: return fetch_ds_type_bare_auth_checked_phone (T);
- case 0xdf969c2d: return fetch_ds_type_auth_exported_authorization (T);
- case 0x206963d2: return fetch_ds_type_bare_auth_exported_authorization (T);
- case 0x137948a5: return fetch_ds_type_auth_password_recovery (T);
- case 0xec86b75a: return fetch_ds_type_bare_auth_password_recovery (T);
- case 0x0cc8bc16: return fetch_ds_type_auth_sent_code (T);
- case 0xf33743e9: return fetch_ds_type_bare_auth_sent_code (T);
- case 0x0377168f: return fetch_ds_type_binlog_encr_key (T);
- case 0xfc88e970: return fetch_ds_type_bare_binlog_encr_key (T);
- case 0x66ff03a6: return fetch_ds_type_binlog_update (T);
- case 0x9900fc59: return fetch_ds_type_bare_binlog_update (T);
- case 0x8c1b8fb4: return fetch_ds_type_contacts_blocked (T);
- case 0x73e4704b: return fetch_ds_type_bare_contacts_blocked (T);
- case 0xd8c02560: return fetch_ds_type_contacts_contacts (T);
- case 0x273fda9f: return fetch_ds_type_bare_contacts_contacts (T);
- case 0x0566000e: return fetch_ds_type_contacts_found (T);
- case 0xfa99fff1: return fetch_ds_type_bare_contacts_found (T);
- case 0xad524315: return fetch_ds_type_contacts_imported_contacts (T);
- case 0x52adbcea: return fetch_ds_type_bare_contacts_imported_contacts (T);
- case 0x3ace484c: return fetch_ds_type_contacts_link (T);
- case 0xc531b7b3: return fetch_ds_type_bare_contacts_link (T);
- case 0x5649dcc5: return fetch_ds_type_contacts_suggested (T);
- case 0xa9b6233a: return fetch_ds_type_bare_contacts_suggested (T);
- case 0x48feb267: return fetch_ds_type_geochats_located (T);
- case 0xb7014d98: return fetch_ds_type_bare_geochats_located (T);
- case 0x6d0a0e59: return fetch_ds_type_geochats_messages (T);
- case 0x92f5f1a6: return fetch_ds_type_bare_geochats_messages (T);
- case 0x17b1578b: return fetch_ds_type_geochats_stated_message (T);
- case 0xe84ea874: return fetch_ds_type_bare_geochats_stated_message (T);
- case 0x4ddd9627: return fetch_ds_type_help_app_update (T);
- case 0xb22269d8: return fetch_ds_type_bare_help_app_update (T);
- case 0x18cb9f78: return fetch_ds_type_help_invite_text (T);
- case 0xe7346087: return fetch_ds_type_bare_help_invite_text (T);
- case 0x17c6b5f6: return fetch_ds_type_help_support (T);
- case 0xe8394a09: return fetch_ds_type_bare_help_support (T);
- case 0xb45c69d1: return fetch_ds_type_messages_affected_history (T);
- case 0x4ba3962e: return fetch_ds_type_bare_messages_affected_history (T);
- case 0x84d19185: return fetch_ds_type_messages_affected_messages (T);
- case 0x7b2e6e7a: return fetch_ds_type_bare_messages_affected_messages (T);
- case 0xb485502f: return fetch_ds_type_messages_all_stickers (T);
- case 0x4b7aafd0: return fetch_ds_type_bare_messages_all_stickers (T);
- case 0xe5d7d19c: return fetch_ds_type_messages_chat_full (T);
- case 0x1a282e63: return fetch_ds_type_bare_messages_chat_full (T);
- case 0x64ff9fd5: return fetch_ds_type_messages_chats (T);
- case 0x9b00602a: return fetch_ds_type_bare_messages_chats (T);
- case 0xecc058e8: return fetch_ds_type_messages_dh_config (T);
- case 0x133fa717: return fetch_ds_type_bare_messages_dh_config (T);
- case 0x645af8b3: return fetch_ds_type_messages_dialogs (T);
- case 0x9ba5074c: return fetch_ds_type_bare_messages_dialogs (T);
- case 0x3f4e0648: return fetch_ds_type_messages_message (T);
- case 0xc0b1f9b7: return fetch_ds_type_bare_messages_message (T);
- case 0x8735e464: return fetch_ds_type_messages_messages (T);
- case 0x78ca1b9b: return fetch_ds_type_bare_messages_messages (T);
- case 0xc29c7607: return fetch_ds_type_messages_sent_encrypted_message (T);
- case 0x3d6389f8: return fetch_ds_type_bare_messages_sent_encrypted_message (T);
- case 0x799ce190: return fetch_ds_type_messages_sent_message (T);
- case 0x86631e6f: return fetch_ds_type_bare_messages_sent_message (T);
- case 0xb60a24a6: return fetch_ds_type_messages_sticker_set (T);
- case 0x49f5db59: return fetch_ds_type_bare_messages_sticker_set (T);
- case 0x7bfa5710: return fetch_ds_type_messages_stickers (T);
- case 0x8405a8ef: return fetch_ds_type_bare_messages_stickers (T);
- case 0x20212ca8: return fetch_ds_type_photos_photo (T);
- case 0xdfded357: return fetch_ds_type_bare_photos_photo (T);
- case 0x98cf75f1: return fetch_ds_type_photos_photos (T);
- case 0x67308a0e: return fetch_ds_type_bare_photos_photos (T);
- case 0x3e2838a8: return fetch_ds_type_storage_file_type (T);
- case 0xc1d7c757: return fetch_ds_type_bare_storage_file_type (T);
- case 0xf57a2419: return fetch_ds_type_updates_difference (T);
- case 0x0a85dbe6: return fetch_ds_type_bare_updates_difference (T);
- case 0xa56c2a3e: return fetch_ds_type_updates_state (T);
- case 0x5a93d5c1: return fetch_ds_type_bare_updates_state (T);
- case 0x096a18d5: return fetch_ds_type_upload_file (T);
- case 0xf695e72a: return fetch_ds_type_bare_upload_file (T);
- default: return NULL; }
-}
diff --git a/protocols/Telegram/src/tgl/auto/auto-fetch-ds.h b/protocols/Telegram/src/tgl/auto/auto-fetch-ds.h
deleted file mode 100644
index 6c39473b14..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-fetch-ds.h
+++ /dev/null
@@ -1,716 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#else
-#include "auto.h"
-#endif
-#include <assert.h>
-#include <stdio.h>
-struct tgl_state;
-struct tl_ds_account_days_t_t_l *fetch_ds_constructor_account_days_t_t_l (struct paramed_type *T);
-struct tl_ds_audio *fetch_ds_constructor_audio_empty (struct paramed_type *T);
-struct tl_ds_audio *fetch_ds_constructor_audio (struct paramed_type *T);
-struct tl_ds_authorization *fetch_ds_constructor_authorization (struct paramed_type *T);
-struct tl_ds_bool *fetch_ds_constructor_bool_false (struct paramed_type *T);
-struct tl_ds_bool *fetch_ds_constructor_bool_true (struct paramed_type *T);
-struct tl_ds_bot_command *fetch_ds_constructor_bot_command (struct paramed_type *T);
-struct tl_ds_bot_command *fetch_ds_constructor_bot_command_old (struct paramed_type *T);
-struct tl_ds_bot_info *fetch_ds_constructor_bot_info_empty (struct paramed_type *T);
-struct tl_ds_bot_info *fetch_ds_constructor_bot_info (struct paramed_type *T);
-struct tl_ds_string *fetch_ds_constructor_bytes (struct paramed_type *T);
-struct tl_ds_chat *fetch_ds_constructor_chat_empty (struct paramed_type *T);
-struct tl_ds_chat *fetch_ds_constructor_chat (struct paramed_type *T);
-struct tl_ds_chat *fetch_ds_constructor_chat_forbidden (struct paramed_type *T);
-struct tl_ds_chat *fetch_ds_constructor_geo_chat (struct paramed_type *T);
-struct tl_ds_chat_full *fetch_ds_constructor_chat_full (struct paramed_type *T);
-struct tl_ds_chat_invite *fetch_ds_constructor_chat_invite_already (struct paramed_type *T);
-struct tl_ds_chat_invite *fetch_ds_constructor_chat_invite (struct paramed_type *T);
-struct tl_ds_chat_located *fetch_ds_constructor_chat_located (struct paramed_type *T);
-struct tl_ds_chat_participant *fetch_ds_constructor_chat_participant (struct paramed_type *T);
-struct tl_ds_chat_participants *fetch_ds_constructor_chat_participants_forbidden (struct paramed_type *T);
-struct tl_ds_chat_participants *fetch_ds_constructor_chat_participants (struct paramed_type *T);
-struct tl_ds_chat_photo *fetch_ds_constructor_chat_photo_empty (struct paramed_type *T);
-struct tl_ds_chat_photo *fetch_ds_constructor_chat_photo (struct paramed_type *T);
-struct tl_ds_client_d_h_inner_data *fetch_ds_constructor_client_d_h_inner_data (struct paramed_type *T);
-struct tl_ds_config *fetch_ds_constructor_config (struct paramed_type *T);
-struct tl_ds_contact *fetch_ds_constructor_contact (struct paramed_type *T);
-struct tl_ds_contact_blocked *fetch_ds_constructor_contact_blocked (struct paramed_type *T);
-struct tl_ds_contact_found *fetch_ds_constructor_contact_found (struct paramed_type *T);
-struct tl_ds_contact_link *fetch_ds_constructor_contact_link_unknown (struct paramed_type *T);
-struct tl_ds_contact_link *fetch_ds_constructor_contact_link_none (struct paramed_type *T);
-struct tl_ds_contact_link *fetch_ds_constructor_contact_link_has_phone (struct paramed_type *T);
-struct tl_ds_contact_link *fetch_ds_constructor_contact_link_contact (struct paramed_type *T);
-struct tl_ds_contact_status *fetch_ds_constructor_contact_status (struct paramed_type *T);
-struct tl_ds_contact_suggested *fetch_ds_constructor_contact_suggested (struct paramed_type *T);
-struct tl_ds_dc_option *fetch_ds_constructor_dc_option_l28 (struct paramed_type *T);
-struct tl_ds_dc_option *fetch_ds_constructor_dc_option (struct paramed_type *T);
-struct tl_ds_decrypted_message *fetch_ds_constructor_decrypted_message (struct paramed_type *T);
-struct tl_ds_decrypted_message *fetch_ds_constructor_decrypted_message_service (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_set_message_t_t_l (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_read_messages (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_delete_messages (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_screenshot_messages (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_flush_history (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_resend (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_notify_layer (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_typing (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_request_key (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_accept_key (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_abort_key (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_commit_key (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_constructor_decrypted_message_action_noop (struct paramed_type *T);
-struct tl_ds_decrypted_message_layer *fetch_ds_constructor_decrypted_message_layer (struct paramed_type *T);
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_empty (struct paramed_type *T);
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_photo (struct paramed_type *T);
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_geo_point (struct paramed_type *T);
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_contact (struct paramed_type *T);
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_document (struct paramed_type *T);
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_video (struct paramed_type *T);
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_audio (struct paramed_type *T);
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_external_document (struct paramed_type *T);
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_video_l12 (struct paramed_type *T);
-struct tl_ds_decrypted_message_media *fetch_ds_constructor_decrypted_message_media_audio_l12 (struct paramed_type *T);
-struct tl_ds_dialog *fetch_ds_constructor_dialog (struct paramed_type *T);
-struct tl_ds_disabled_feature *fetch_ds_constructor_disabled_feature (struct paramed_type *T);
-struct tl_ds_document *fetch_ds_constructor_document_empty (struct paramed_type *T);
-struct tl_ds_document *fetch_ds_constructor_document (struct paramed_type *T);
-struct tl_ds_document *fetch_ds_constructor_document_l19 (struct paramed_type *T);
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_image_size (struct paramed_type *T);
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_animated (struct paramed_type *T);
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_sticker_l28 (struct paramed_type *T);
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_sticker (struct paramed_type *T);
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_video (struct paramed_type *T);
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_audio (struct paramed_type *T);
-struct tl_ds_document_attribute *fetch_ds_constructor_document_attribute_filename (struct paramed_type *T);
-double *fetch_ds_constructor_double (struct paramed_type *T);
-struct tl_ds_encrypted_chat *fetch_ds_constructor_encrypted_chat_empty (struct paramed_type *T);
-struct tl_ds_encrypted_chat *fetch_ds_constructor_encrypted_chat_waiting (struct paramed_type *T);
-struct tl_ds_encrypted_chat *fetch_ds_constructor_encrypted_chat_requested (struct paramed_type *T);
-struct tl_ds_encrypted_chat *fetch_ds_constructor_encrypted_chat (struct paramed_type *T);
-struct tl_ds_encrypted_chat *fetch_ds_constructor_encrypted_chat_discarded (struct paramed_type *T);
-struct tl_ds_encrypted_file *fetch_ds_constructor_encrypted_file_empty (struct paramed_type *T);
-struct tl_ds_encrypted_file *fetch_ds_constructor_encrypted_file (struct paramed_type *T);
-struct tl_ds_encrypted_message *fetch_ds_constructor_encrypted_message (struct paramed_type *T);
-struct tl_ds_encrypted_message *fetch_ds_constructor_encrypted_message_service (struct paramed_type *T);
-struct tl_ds_error *fetch_ds_constructor_error (struct paramed_type *T);
-struct tl_ds_exported_chat_invite *fetch_ds_constructor_chat_invite_empty (struct paramed_type *T);
-struct tl_ds_exported_chat_invite *fetch_ds_constructor_chat_invite_exported (struct paramed_type *T);
-struct tl_ds_file_location *fetch_ds_constructor_file_location_unavailable (struct paramed_type *T);
-struct tl_ds_file_location *fetch_ds_constructor_file_location (struct paramed_type *T);
-struct tl_ds_geo_chat_message *fetch_ds_constructor_geo_chat_message_empty (struct paramed_type *T);
-struct tl_ds_geo_chat_message *fetch_ds_constructor_geo_chat_message (struct paramed_type *T);
-struct tl_ds_geo_chat_message *fetch_ds_constructor_geo_chat_message_service (struct paramed_type *T);
-struct tl_ds_geo_point *fetch_ds_constructor_geo_point_empty (struct paramed_type *T);
-struct tl_ds_geo_point *fetch_ds_constructor_geo_point (struct paramed_type *T);
-struct tl_ds_imported_contact *fetch_ds_constructor_imported_contact (struct paramed_type *T);
-struct tl_ds_input_app_event *fetch_ds_constructor_input_app_event (struct paramed_type *T);
-struct tl_ds_input_audio *fetch_ds_constructor_input_audio_empty (struct paramed_type *T);
-struct tl_ds_input_audio *fetch_ds_constructor_input_audio (struct paramed_type *T);
-struct tl_ds_input_chat_photo *fetch_ds_constructor_input_chat_photo_empty (struct paramed_type *T);
-struct tl_ds_input_chat_photo *fetch_ds_constructor_input_chat_uploaded_photo (struct paramed_type *T);
-struct tl_ds_input_chat_photo *fetch_ds_constructor_input_chat_photo (struct paramed_type *T);
-struct tl_ds_input_contact *fetch_ds_constructor_input_phone_contact (struct paramed_type *T);
-struct tl_ds_input_document *fetch_ds_constructor_input_document_empty (struct paramed_type *T);
-struct tl_ds_input_document *fetch_ds_constructor_input_document (struct paramed_type *T);
-struct tl_ds_input_encrypted_chat *fetch_ds_constructor_input_encrypted_chat (struct paramed_type *T);
-struct tl_ds_input_encrypted_file *fetch_ds_constructor_input_encrypted_file_empty (struct paramed_type *T);
-struct tl_ds_input_encrypted_file *fetch_ds_constructor_input_encrypted_file_uploaded (struct paramed_type *T);
-struct tl_ds_input_encrypted_file *fetch_ds_constructor_input_encrypted_file (struct paramed_type *T);
-struct tl_ds_input_encrypted_file *fetch_ds_constructor_input_encrypted_file_big_uploaded (struct paramed_type *T);
-struct tl_ds_input_file *fetch_ds_constructor_input_file (struct paramed_type *T);
-struct tl_ds_input_file *fetch_ds_constructor_input_file_big (struct paramed_type *T);
-struct tl_ds_input_file_location *fetch_ds_constructor_input_file_location (struct paramed_type *T);
-struct tl_ds_input_file_location *fetch_ds_constructor_input_video_file_location (struct paramed_type *T);
-struct tl_ds_input_file_location *fetch_ds_constructor_input_encrypted_file_location (struct paramed_type *T);
-struct tl_ds_input_file_location *fetch_ds_constructor_input_audio_file_location (struct paramed_type *T);
-struct tl_ds_input_file_location *fetch_ds_constructor_input_document_file_location (struct paramed_type *T);
-struct tl_ds_input_geo_chat *fetch_ds_constructor_input_geo_chat (struct paramed_type *T);
-struct tl_ds_input_geo_point *fetch_ds_constructor_input_geo_point_empty (struct paramed_type *T);
-struct tl_ds_input_geo_point *fetch_ds_constructor_input_geo_point (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_empty (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_uploaded_photo (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_photo (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_geo_point (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_contact (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_uploaded_video (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_uploaded_thumb_video (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_video (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_uploaded_audio (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_audio (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_uploaded_document (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_uploaded_thumb_document (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_document (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_constructor_input_media_venue (struct paramed_type *T);
-struct tl_ds_input_notify_peer *fetch_ds_constructor_input_notify_peer (struct paramed_type *T);
-struct tl_ds_input_notify_peer *fetch_ds_constructor_input_notify_users (struct paramed_type *T);
-struct tl_ds_input_notify_peer *fetch_ds_constructor_input_notify_chats (struct paramed_type *T);
-struct tl_ds_input_notify_peer *fetch_ds_constructor_input_notify_all (struct paramed_type *T);
-struct tl_ds_input_notify_peer *fetch_ds_constructor_input_notify_geo_chat_peer (struct paramed_type *T);
-struct tl_ds_input_peer *fetch_ds_constructor_input_peer_empty (struct paramed_type *T);
-struct tl_ds_input_peer *fetch_ds_constructor_input_peer_self (struct paramed_type *T);
-struct tl_ds_input_peer *fetch_ds_constructor_input_peer_contact (struct paramed_type *T);
-struct tl_ds_input_peer *fetch_ds_constructor_input_peer_foreign (struct paramed_type *T);
-struct tl_ds_input_peer *fetch_ds_constructor_input_peer_chat (struct paramed_type *T);
-struct tl_ds_input_peer_notify_events *fetch_ds_constructor_input_peer_notify_events_empty (struct paramed_type *T);
-struct tl_ds_input_peer_notify_events *fetch_ds_constructor_input_peer_notify_events_all (struct paramed_type *T);
-struct tl_ds_input_peer_notify_settings *fetch_ds_constructor_input_peer_notify_settings (struct paramed_type *T);
-struct tl_ds_input_photo *fetch_ds_constructor_input_photo_empty (struct paramed_type *T);
-struct tl_ds_input_photo *fetch_ds_constructor_input_photo (struct paramed_type *T);
-struct tl_ds_input_photo_crop *fetch_ds_constructor_input_photo_crop_auto (struct paramed_type *T);
-struct tl_ds_input_photo_crop *fetch_ds_constructor_input_photo_crop (struct paramed_type *T);
-struct tl_ds_input_privacy_key *fetch_ds_constructor_input_privacy_key_status_timestamp (struct paramed_type *T);
-struct tl_ds_input_privacy_rule *fetch_ds_constructor_input_privacy_value_allow_contacts (struct paramed_type *T);
-struct tl_ds_input_privacy_rule *fetch_ds_constructor_input_privacy_value_allow_all (struct paramed_type *T);
-struct tl_ds_input_privacy_rule *fetch_ds_constructor_input_privacy_value_allow_users (struct paramed_type *T);
-struct tl_ds_input_privacy_rule *fetch_ds_constructor_input_privacy_value_disallow_contacts (struct paramed_type *T);
-struct tl_ds_input_privacy_rule *fetch_ds_constructor_input_privacy_value_disallow_all (struct paramed_type *T);
-struct tl_ds_input_privacy_rule *fetch_ds_constructor_input_privacy_value_disallow_users (struct paramed_type *T);
-struct tl_ds_input_sticker_set *fetch_ds_constructor_input_sticker_set_empty (struct paramed_type *T);
-struct tl_ds_input_sticker_set *fetch_ds_constructor_input_sticker_set_i_d (struct paramed_type *T);
-struct tl_ds_input_sticker_set *fetch_ds_constructor_input_sticker_set_short_name (struct paramed_type *T);
-struct tl_ds_input_user *fetch_ds_constructor_input_user_empty (struct paramed_type *T);
-struct tl_ds_input_user *fetch_ds_constructor_input_user_self (struct paramed_type *T);
-struct tl_ds_input_user *fetch_ds_constructor_input_user_contact (struct paramed_type *T);
-struct tl_ds_input_user *fetch_ds_constructor_input_user_foreign (struct paramed_type *T);
-struct tl_ds_input_video *fetch_ds_constructor_input_video_empty (struct paramed_type *T);
-struct tl_ds_input_video *fetch_ds_constructor_input_video (struct paramed_type *T);
-int *fetch_ds_constructor_int (struct paramed_type *T);
-struct tl_ds_int128 *fetch_ds_constructor_int128 (struct paramed_type *T);
-struct tl_ds_int256 *fetch_ds_constructor_int256 (struct paramed_type *T);
-struct tl_ds_keyboard_button *fetch_ds_constructor_keyboard_button (struct paramed_type *T);
-struct tl_ds_keyboard_button_row *fetch_ds_constructor_keyboard_button_row (struct paramed_type *T);
-long long *fetch_ds_constructor_long (struct paramed_type *T);
-struct tl_ds_message *fetch_ds_constructor_message_empty (struct paramed_type *T);
-struct tl_ds_message *fetch_ds_constructor_message (struct paramed_type *T);
-struct tl_ds_message *fetch_ds_constructor_message_service (struct paramed_type *T);
-struct tl_ds_message_action *fetch_ds_constructor_message_action_empty (struct paramed_type *T);
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_create (struct paramed_type *T);
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_edit_title (struct paramed_type *T);
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_edit_photo (struct paramed_type *T);
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_delete_photo (struct paramed_type *T);
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_add_user (struct paramed_type *T);
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_delete_user (struct paramed_type *T);
-struct tl_ds_message_action *fetch_ds_constructor_message_action_geo_chat_create (struct paramed_type *T);
-struct tl_ds_message_action *fetch_ds_constructor_message_action_geo_chat_checkin (struct paramed_type *T);
-struct tl_ds_message_action *fetch_ds_constructor_message_action_chat_joined_by_link (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_constructor_message_media_empty (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_constructor_message_media_photo (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_constructor_message_media_video (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_constructor_message_media_geo (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_constructor_message_media_contact (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_constructor_message_media_unsupported (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_constructor_message_media_document (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_constructor_message_media_audio (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_constructor_message_media_web_page (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_constructor_message_media_venue (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_constructor_message_media_photo_l27 (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_constructor_message_media_video_l27 (struct paramed_type *T);
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_empty (struct paramed_type *T);
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_photos (struct paramed_type *T);
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_video (struct paramed_type *T);
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_photo_video (struct paramed_type *T);
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_photo_video_documents (struct paramed_type *T);
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_document (struct paramed_type *T);
-struct tl_ds_messages_filter *fetch_ds_constructor_input_messages_filter_audio (struct paramed_type *T);
-struct tl_ds_nearest_dc *fetch_ds_constructor_nearest_dc (struct paramed_type *T);
-struct tl_ds_notify_peer *fetch_ds_constructor_notify_peer (struct paramed_type *T);
-struct tl_ds_notify_peer *fetch_ds_constructor_notify_users (struct paramed_type *T);
-struct tl_ds_notify_peer *fetch_ds_constructor_notify_chats (struct paramed_type *T);
-struct tl_ds_notify_peer *fetch_ds_constructor_notify_all (struct paramed_type *T);
-struct tl_ds_null *fetch_ds_constructor_null (struct paramed_type *T);
-struct tl_ds_p_q_inner_data *fetch_ds_constructor_p_q_inner_data (struct paramed_type *T);
-struct tl_ds_p_q_inner_data *fetch_ds_constructor_p_q_inner_data_temp (struct paramed_type *T);
-struct tl_ds_peer *fetch_ds_constructor_peer_user (struct paramed_type *T);
-struct tl_ds_peer *fetch_ds_constructor_peer_chat (struct paramed_type *T);
-struct tl_ds_peer_notify_events *fetch_ds_constructor_peer_notify_events_empty (struct paramed_type *T);
-struct tl_ds_peer_notify_events *fetch_ds_constructor_peer_notify_events_all (struct paramed_type *T);
-struct tl_ds_peer_notify_settings *fetch_ds_constructor_peer_notify_settings_empty (struct paramed_type *T);
-struct tl_ds_peer_notify_settings *fetch_ds_constructor_peer_notify_settings (struct paramed_type *T);
-struct tl_ds_photo *fetch_ds_constructor_photo_empty (struct paramed_type *T);
-struct tl_ds_photo *fetch_ds_constructor_photo (struct paramed_type *T);
-struct tl_ds_photo *fetch_ds_constructor_photo_l27 (struct paramed_type *T);
-struct tl_ds_photo_size *fetch_ds_constructor_photo_size_empty (struct paramed_type *T);
-struct tl_ds_photo_size *fetch_ds_constructor_photo_size (struct paramed_type *T);
-struct tl_ds_photo_size *fetch_ds_constructor_photo_cached_size (struct paramed_type *T);
-struct tl_ds_privacy_key *fetch_ds_constructor_privacy_key_status_timestamp (struct paramed_type *T);
-struct tl_ds_privacy_rule *fetch_ds_constructor_privacy_value_allow_contacts (struct paramed_type *T);
-struct tl_ds_privacy_rule *fetch_ds_constructor_privacy_value_allow_all (struct paramed_type *T);
-struct tl_ds_privacy_rule *fetch_ds_constructor_privacy_value_allow_users (struct paramed_type *T);
-struct tl_ds_privacy_rule *fetch_ds_constructor_privacy_value_disallow_contacts (struct paramed_type *T);
-struct tl_ds_privacy_rule *fetch_ds_constructor_privacy_value_disallow_all (struct paramed_type *T);
-struct tl_ds_privacy_rule *fetch_ds_constructor_privacy_value_disallow_users (struct paramed_type *T);
-struct tl_ds_received_notify_message *fetch_ds_constructor_received_notify_message (struct paramed_type *T);
-struct tl_ds_reply_markup *fetch_ds_constructor_reply_keyboard_hide (struct paramed_type *T);
-struct tl_ds_reply_markup *fetch_ds_constructor_reply_keyboard_force_reply (struct paramed_type *T);
-struct tl_ds_reply_markup *fetch_ds_constructor_reply_keyboard_markup (struct paramed_type *T);
-struct tl_ds_res_p_q *fetch_ds_constructor_res_p_q (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_typing_action (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_cancel_action (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_record_video_action (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_video_action_l27 (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_video_action (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_record_audio_action (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_audio_action_l27 (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_audio_action (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_photo_action (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_document_action_l27 (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_upload_document_action (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_geo_location_action (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_constructor_send_message_choose_contact_action (struct paramed_type *T);
-struct tl_ds_server_d_h_params *fetch_ds_constructor_server_d_h_params_fail (struct paramed_type *T);
-struct tl_ds_server_d_h_params *fetch_ds_constructor_server_d_h_params_ok (struct paramed_type *T);
-struct tl_ds_server_d_h_inner_data *fetch_ds_constructor_server_d_h_inner_data (struct paramed_type *T);
-struct tl_ds_set_client_d_h_params_answer *fetch_ds_constructor_dh_gen_ok (struct paramed_type *T);
-struct tl_ds_set_client_d_h_params_answer *fetch_ds_constructor_dh_gen_retry (struct paramed_type *T);
-struct tl_ds_set_client_d_h_params_answer *fetch_ds_constructor_dh_gen_fail (struct paramed_type *T);
-struct tl_ds_sticker_pack *fetch_ds_constructor_sticker_pack (struct paramed_type *T);
-struct tl_ds_sticker_set *fetch_ds_constructor_sticker_set (struct paramed_type *T);
-struct tl_ds_string *fetch_ds_constructor_string (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_new_message (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_message_i_d (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_delete_messages (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_user_typing (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_chat_user_typing (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_chat_participants (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_user_status (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_user_name (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_user_photo (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_contact_registered (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_contact_link (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_new_authorization (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_new_geo_chat_message (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_new_encrypted_message (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_encrypted_chat_typing (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_encryption (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_encrypted_messages_read (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_chat_participant_add (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_chat_participant_delete (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_dc_options (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_user_blocked (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_notify_settings (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_service_notification (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_privacy (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_user_phone (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_read_history_inbox (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_read_history_outbox (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_web_page (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_read_messages_contents (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_constructor_update_msg_update (struct paramed_type *T);
-struct tl_ds_updates *fetch_ds_constructor_updates_too_long (struct paramed_type *T);
-struct tl_ds_updates *fetch_ds_constructor_update_short_message (struct paramed_type *T);
-struct tl_ds_updates *fetch_ds_constructor_update_short_chat_message (struct paramed_type *T);
-struct tl_ds_updates *fetch_ds_constructor_update_short (struct paramed_type *T);
-struct tl_ds_updates *fetch_ds_constructor_updates_combined (struct paramed_type *T);
-struct tl_ds_updates *fetch_ds_constructor_updates (struct paramed_type *T);
-struct tl_ds_user *fetch_ds_constructor_user_empty (struct paramed_type *T);
-struct tl_ds_user *fetch_ds_constructor_user (struct paramed_type *T);
-struct tl_ds_user_full *fetch_ds_constructor_user_full (struct paramed_type *T);
-struct tl_ds_user_profile_photo *fetch_ds_constructor_user_profile_photo_empty (struct paramed_type *T);
-struct tl_ds_user_profile_photo *fetch_ds_constructor_user_profile_photo (struct paramed_type *T);
-struct tl_ds_user_status *fetch_ds_constructor_user_status_empty (struct paramed_type *T);
-struct tl_ds_user_status *fetch_ds_constructor_user_status_online (struct paramed_type *T);
-struct tl_ds_user_status *fetch_ds_constructor_user_status_offline (struct paramed_type *T);
-struct tl_ds_user_status *fetch_ds_constructor_user_status_recently (struct paramed_type *T);
-struct tl_ds_user_status *fetch_ds_constructor_user_status_last_week (struct paramed_type *T);
-struct tl_ds_user_status *fetch_ds_constructor_user_status_last_month (struct paramed_type *T);
-struct tl_ds_vector *fetch_ds_constructor_vector (struct paramed_type *T);
-struct tl_ds_video *fetch_ds_constructor_video_empty (struct paramed_type *T);
-struct tl_ds_video *fetch_ds_constructor_video (struct paramed_type *T);
-struct tl_ds_video *fetch_ds_constructor_video_l27 (struct paramed_type *T);
-struct tl_ds_wall_paper *fetch_ds_constructor_wall_paper (struct paramed_type *T);
-struct tl_ds_wall_paper *fetch_ds_constructor_wall_paper_solid (struct paramed_type *T);
-struct tl_ds_web_page *fetch_ds_constructor_web_page_empty (struct paramed_type *T);
-struct tl_ds_web_page *fetch_ds_constructor_web_page_pending (struct paramed_type *T);
-struct tl_ds_web_page *fetch_ds_constructor_web_page (struct paramed_type *T);
-struct tl_ds_account_authorizations *fetch_ds_constructor_account_authorizations (struct paramed_type *T);
-struct tl_ds_account_password *fetch_ds_constructor_account_no_password (struct paramed_type *T);
-struct tl_ds_account_password *fetch_ds_constructor_account_password (struct paramed_type *T);
-struct tl_ds_account_password_input_settings *fetch_ds_constructor_account_password_input_settings (struct paramed_type *T);
-struct tl_ds_account_password_settings *fetch_ds_constructor_account_password_settings (struct paramed_type *T);
-struct tl_ds_account_privacy_rules *fetch_ds_constructor_account_privacy_rules (struct paramed_type *T);
-struct tl_ds_account_sent_change_phone_code *fetch_ds_constructor_account_sent_change_phone_code (struct paramed_type *T);
-struct tl_ds_auth_authorization *fetch_ds_constructor_auth_authorization (struct paramed_type *T);
-struct tl_ds_auth_checked_phone *fetch_ds_constructor_auth_checked_phone (struct paramed_type *T);
-struct tl_ds_auth_exported_authorization *fetch_ds_constructor_auth_exported_authorization (struct paramed_type *T);
-struct tl_ds_auth_password_recovery *fetch_ds_constructor_auth_password_recovery (struct paramed_type *T);
-struct tl_ds_auth_sent_code *fetch_ds_constructor_auth_sent_code (struct paramed_type *T);
-struct tl_ds_auth_sent_code *fetch_ds_constructor_auth_sent_app_code (struct paramed_type *T);
-struct tl_ds_binlog_encr_key *fetch_ds_constructor_binlog_encr_key (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_start (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_dc_option (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_dc_option_new (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_auth_key (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_default_dc (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_dc_signed (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_our_id (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_set_dh_params (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_set_pts (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_set_qts (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_set_date (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_set_seq (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_encr_chat_delete (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_encr_chat_new (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_encr_chat_exchange_new (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_user_delete (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_user_new (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_chat_new (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_chat_add_participant (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_chat_del_participant (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_set_msg_id (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_message_delete (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_message_new (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_message_encr_new (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_msg_update (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_constructor_binlog_reset_authorization (struct paramed_type *T);
-struct tl_ds_contacts_blocked *fetch_ds_constructor_contacts_blocked (struct paramed_type *T);
-struct tl_ds_contacts_blocked *fetch_ds_constructor_contacts_blocked_slice (struct paramed_type *T);
-struct tl_ds_contacts_contacts *fetch_ds_constructor_contacts_contacts_not_modified (struct paramed_type *T);
-struct tl_ds_contacts_contacts *fetch_ds_constructor_contacts_contacts (struct paramed_type *T);
-struct tl_ds_contacts_found *fetch_ds_constructor_contacts_found (struct paramed_type *T);
-struct tl_ds_contacts_imported_contacts *fetch_ds_constructor_contacts_imported_contacts (struct paramed_type *T);
-struct tl_ds_contacts_link *fetch_ds_constructor_contacts_link (struct paramed_type *T);
-struct tl_ds_contacts_suggested *fetch_ds_constructor_contacts_suggested (struct paramed_type *T);
-struct tl_ds_geochats_located *fetch_ds_constructor_geochats_located (struct paramed_type *T);
-struct tl_ds_geochats_messages *fetch_ds_constructor_geochats_messages (struct paramed_type *T);
-struct tl_ds_geochats_messages *fetch_ds_constructor_geochats_messages_slice (struct paramed_type *T);
-struct tl_ds_geochats_stated_message *fetch_ds_constructor_geochats_stated_message (struct paramed_type *T);
-struct tl_ds_help_app_update *fetch_ds_constructor_help_app_update (struct paramed_type *T);
-struct tl_ds_help_app_update *fetch_ds_constructor_help_no_app_update (struct paramed_type *T);
-struct tl_ds_help_invite_text *fetch_ds_constructor_help_invite_text (struct paramed_type *T);
-struct tl_ds_help_support *fetch_ds_constructor_help_support (struct paramed_type *T);
-struct tl_ds_messages_affected_history *fetch_ds_constructor_messages_affected_history (struct paramed_type *T);
-struct tl_ds_messages_affected_messages *fetch_ds_constructor_messages_affected_messages (struct paramed_type *T);
-struct tl_ds_messages_all_stickers *fetch_ds_constructor_messages_all_stickers_not_modified (struct paramed_type *T);
-struct tl_ds_messages_all_stickers *fetch_ds_constructor_messages_all_stickers (struct paramed_type *T);
-struct tl_ds_messages_chat_full *fetch_ds_constructor_messages_chat_full (struct paramed_type *T);
-struct tl_ds_messages_chats *fetch_ds_constructor_messages_chats (struct paramed_type *T);
-struct tl_ds_messages_dh_config *fetch_ds_constructor_messages_dh_config_not_modified (struct paramed_type *T);
-struct tl_ds_messages_dh_config *fetch_ds_constructor_messages_dh_config (struct paramed_type *T);
-struct tl_ds_messages_dialogs *fetch_ds_constructor_messages_dialogs (struct paramed_type *T);
-struct tl_ds_messages_dialogs *fetch_ds_constructor_messages_dialogs_slice (struct paramed_type *T);
-struct tl_ds_messages_message *fetch_ds_constructor_messages_message_empty (struct paramed_type *T);
-struct tl_ds_messages_messages *fetch_ds_constructor_messages_messages (struct paramed_type *T);
-struct tl_ds_messages_messages *fetch_ds_constructor_messages_messages_slice (struct paramed_type *T);
-struct tl_ds_messages_sent_encrypted_message *fetch_ds_constructor_messages_sent_encrypted_message (struct paramed_type *T);
-struct tl_ds_messages_sent_encrypted_message *fetch_ds_constructor_messages_sent_encrypted_file (struct paramed_type *T);
-struct tl_ds_messages_sent_message *fetch_ds_constructor_messages_sent_message (struct paramed_type *T);
-struct tl_ds_messages_sent_message *fetch_ds_constructor_messages_sent_message_link (struct paramed_type *T);
-struct tl_ds_messages_sticker_set *fetch_ds_constructor_messages_sticker_set (struct paramed_type *T);
-struct tl_ds_messages_stickers *fetch_ds_constructor_messages_stickers_not_modified (struct paramed_type *T);
-struct tl_ds_messages_stickers *fetch_ds_constructor_messages_stickers (struct paramed_type *T);
-struct tl_ds_photos_photo *fetch_ds_constructor_photos_photo (struct paramed_type *T);
-struct tl_ds_photos_photos *fetch_ds_constructor_photos_photos (struct paramed_type *T);
-struct tl_ds_photos_photos *fetch_ds_constructor_photos_photos_slice (struct paramed_type *T);
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_unknown (struct paramed_type *T);
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_jpeg (struct paramed_type *T);
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_gif (struct paramed_type *T);
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_png (struct paramed_type *T);
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_pdf (struct paramed_type *T);
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_mp3 (struct paramed_type *T);
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_mov (struct paramed_type *T);
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_partial (struct paramed_type *T);
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_mp4 (struct paramed_type *T);
-struct tl_ds_storage_file_type *fetch_ds_constructor_storage_file_webp (struct paramed_type *T);
-struct tl_ds_updates_difference *fetch_ds_constructor_updates_difference_empty (struct paramed_type *T);
-struct tl_ds_updates_difference *fetch_ds_constructor_updates_difference (struct paramed_type *T);
-struct tl_ds_updates_difference *fetch_ds_constructor_updates_difference_slice (struct paramed_type *T);
-struct tl_ds_updates_state *fetch_ds_constructor_updates_state (struct paramed_type *T);
-struct tl_ds_upload_file *fetch_ds_constructor_upload_file (struct paramed_type *T);
-struct tl_ds_account_days_t_t_l *fetch_ds_type_account_days_t_t_l (struct paramed_type *T);
-struct tl_ds_account_days_t_t_l *fetch_ds_type_bare_account_days_t_t_l (struct paramed_type *T);
-struct tl_ds_audio *fetch_ds_type_audio (struct paramed_type *T);
-struct tl_ds_audio *fetch_ds_type_bare_audio (struct paramed_type *T);
-struct tl_ds_authorization *fetch_ds_type_authorization (struct paramed_type *T);
-struct tl_ds_authorization *fetch_ds_type_bare_authorization (struct paramed_type *T);
-struct tl_ds_bool *fetch_ds_type_bool (struct paramed_type *T);
-struct tl_ds_bool *fetch_ds_type_bare_bool (struct paramed_type *T);
-struct tl_ds_bot_command *fetch_ds_type_bot_command (struct paramed_type *T);
-struct tl_ds_bot_command *fetch_ds_type_bare_bot_command (struct paramed_type *T);
-struct tl_ds_bot_info *fetch_ds_type_bot_info (struct paramed_type *T);
-struct tl_ds_bot_info *fetch_ds_type_bare_bot_info (struct paramed_type *T);
-struct tl_ds_string *fetch_ds_type_bytes (struct paramed_type *T);
-struct tl_ds_string *fetch_ds_type_bare_bytes (struct paramed_type *T);
-struct tl_ds_chat *fetch_ds_type_chat (struct paramed_type *T);
-struct tl_ds_chat *fetch_ds_type_bare_chat (struct paramed_type *T);
-struct tl_ds_chat_full *fetch_ds_type_chat_full (struct paramed_type *T);
-struct tl_ds_chat_full *fetch_ds_type_bare_chat_full (struct paramed_type *T);
-struct tl_ds_chat_invite *fetch_ds_type_chat_invite (struct paramed_type *T);
-struct tl_ds_chat_invite *fetch_ds_type_bare_chat_invite (struct paramed_type *T);
-struct tl_ds_chat_located *fetch_ds_type_chat_located (struct paramed_type *T);
-struct tl_ds_chat_located *fetch_ds_type_bare_chat_located (struct paramed_type *T);
-struct tl_ds_chat_participant *fetch_ds_type_chat_participant (struct paramed_type *T);
-struct tl_ds_chat_participant *fetch_ds_type_bare_chat_participant (struct paramed_type *T);
-struct tl_ds_chat_participants *fetch_ds_type_chat_participants (struct paramed_type *T);
-struct tl_ds_chat_participants *fetch_ds_type_bare_chat_participants (struct paramed_type *T);
-struct tl_ds_chat_photo *fetch_ds_type_chat_photo (struct paramed_type *T);
-struct tl_ds_chat_photo *fetch_ds_type_bare_chat_photo (struct paramed_type *T);
-struct tl_ds_client_d_h_inner_data *fetch_ds_type_client_d_h_inner_data (struct paramed_type *T);
-struct tl_ds_client_d_h_inner_data *fetch_ds_type_bare_client_d_h_inner_data (struct paramed_type *T);
-struct tl_ds_config *fetch_ds_type_config (struct paramed_type *T);
-struct tl_ds_config *fetch_ds_type_bare_config (struct paramed_type *T);
-struct tl_ds_contact *fetch_ds_type_contact (struct paramed_type *T);
-struct tl_ds_contact *fetch_ds_type_bare_contact (struct paramed_type *T);
-struct tl_ds_contact_blocked *fetch_ds_type_contact_blocked (struct paramed_type *T);
-struct tl_ds_contact_blocked *fetch_ds_type_bare_contact_blocked (struct paramed_type *T);
-struct tl_ds_contact_found *fetch_ds_type_contact_found (struct paramed_type *T);
-struct tl_ds_contact_found *fetch_ds_type_bare_contact_found (struct paramed_type *T);
-struct tl_ds_contact_link *fetch_ds_type_contact_link (struct paramed_type *T);
-struct tl_ds_contact_link *fetch_ds_type_bare_contact_link (struct paramed_type *T);
-struct tl_ds_contact_status *fetch_ds_type_contact_status (struct paramed_type *T);
-struct tl_ds_contact_status *fetch_ds_type_bare_contact_status (struct paramed_type *T);
-struct tl_ds_contact_suggested *fetch_ds_type_contact_suggested (struct paramed_type *T);
-struct tl_ds_contact_suggested *fetch_ds_type_bare_contact_suggested (struct paramed_type *T);
-struct tl_ds_dc_option *fetch_ds_type_dc_option (struct paramed_type *T);
-struct tl_ds_dc_option *fetch_ds_type_bare_dc_option (struct paramed_type *T);
-struct tl_ds_decrypted_message *fetch_ds_type_decrypted_message (struct paramed_type *T);
-struct tl_ds_decrypted_message *fetch_ds_type_bare_decrypted_message (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_type_decrypted_message_action (struct paramed_type *T);
-struct tl_ds_decrypted_message_action *fetch_ds_type_bare_decrypted_message_action (struct paramed_type *T);
-struct tl_ds_decrypted_message_layer *fetch_ds_type_decrypted_message_layer (struct paramed_type *T);
-struct tl_ds_decrypted_message_layer *fetch_ds_type_bare_decrypted_message_layer (struct paramed_type *T);
-struct tl_ds_decrypted_message_media *fetch_ds_type_decrypted_message_media (struct paramed_type *T);
-struct tl_ds_decrypted_message_media *fetch_ds_type_bare_decrypted_message_media (struct paramed_type *T);
-struct tl_ds_dialog *fetch_ds_type_dialog (struct paramed_type *T);
-struct tl_ds_dialog *fetch_ds_type_bare_dialog (struct paramed_type *T);
-struct tl_ds_disabled_feature *fetch_ds_type_disabled_feature (struct paramed_type *T);
-struct tl_ds_disabled_feature *fetch_ds_type_bare_disabled_feature (struct paramed_type *T);
-struct tl_ds_document *fetch_ds_type_document (struct paramed_type *T);
-struct tl_ds_document *fetch_ds_type_bare_document (struct paramed_type *T);
-struct tl_ds_document_attribute *fetch_ds_type_document_attribute (struct paramed_type *T);
-struct tl_ds_document_attribute *fetch_ds_type_bare_document_attribute (struct paramed_type *T);
-double *fetch_ds_type_double (struct paramed_type *T);
-double *fetch_ds_type_bare_double (struct paramed_type *T);
-struct tl_ds_encrypted_chat *fetch_ds_type_encrypted_chat (struct paramed_type *T);
-struct tl_ds_encrypted_chat *fetch_ds_type_bare_encrypted_chat (struct paramed_type *T);
-struct tl_ds_encrypted_file *fetch_ds_type_encrypted_file (struct paramed_type *T);
-struct tl_ds_encrypted_file *fetch_ds_type_bare_encrypted_file (struct paramed_type *T);
-struct tl_ds_encrypted_message *fetch_ds_type_encrypted_message (struct paramed_type *T);
-struct tl_ds_encrypted_message *fetch_ds_type_bare_encrypted_message (struct paramed_type *T);
-struct tl_ds_error *fetch_ds_type_error (struct paramed_type *T);
-struct tl_ds_error *fetch_ds_type_bare_error (struct paramed_type *T);
-struct tl_ds_exported_chat_invite *fetch_ds_type_exported_chat_invite (struct paramed_type *T);
-struct tl_ds_exported_chat_invite *fetch_ds_type_bare_exported_chat_invite (struct paramed_type *T);
-struct tl_ds_file_location *fetch_ds_type_file_location (struct paramed_type *T);
-struct tl_ds_file_location *fetch_ds_type_bare_file_location (struct paramed_type *T);
-struct tl_ds_geo_chat_message *fetch_ds_type_geo_chat_message (struct paramed_type *T);
-struct tl_ds_geo_chat_message *fetch_ds_type_bare_geo_chat_message (struct paramed_type *T);
-struct tl_ds_geo_point *fetch_ds_type_geo_point (struct paramed_type *T);
-struct tl_ds_geo_point *fetch_ds_type_bare_geo_point (struct paramed_type *T);
-struct tl_ds_imported_contact *fetch_ds_type_imported_contact (struct paramed_type *T);
-struct tl_ds_imported_contact *fetch_ds_type_bare_imported_contact (struct paramed_type *T);
-struct tl_ds_input_app_event *fetch_ds_type_input_app_event (struct paramed_type *T);
-struct tl_ds_input_app_event *fetch_ds_type_bare_input_app_event (struct paramed_type *T);
-struct tl_ds_input_audio *fetch_ds_type_input_audio (struct paramed_type *T);
-struct tl_ds_input_audio *fetch_ds_type_bare_input_audio (struct paramed_type *T);
-struct tl_ds_input_chat_photo *fetch_ds_type_input_chat_photo (struct paramed_type *T);
-struct tl_ds_input_chat_photo *fetch_ds_type_bare_input_chat_photo (struct paramed_type *T);
-struct tl_ds_input_contact *fetch_ds_type_input_contact (struct paramed_type *T);
-struct tl_ds_input_contact *fetch_ds_type_bare_input_contact (struct paramed_type *T);
-struct tl_ds_input_document *fetch_ds_type_input_document (struct paramed_type *T);
-struct tl_ds_input_document *fetch_ds_type_bare_input_document (struct paramed_type *T);
-struct tl_ds_input_encrypted_chat *fetch_ds_type_input_encrypted_chat (struct paramed_type *T);
-struct tl_ds_input_encrypted_chat *fetch_ds_type_bare_input_encrypted_chat (struct paramed_type *T);
-struct tl_ds_input_encrypted_file *fetch_ds_type_input_encrypted_file (struct paramed_type *T);
-struct tl_ds_input_encrypted_file *fetch_ds_type_bare_input_encrypted_file (struct paramed_type *T);
-struct tl_ds_input_file *fetch_ds_type_input_file (struct paramed_type *T);
-struct tl_ds_input_file *fetch_ds_type_bare_input_file (struct paramed_type *T);
-struct tl_ds_input_file_location *fetch_ds_type_input_file_location (struct paramed_type *T);
-struct tl_ds_input_file_location *fetch_ds_type_bare_input_file_location (struct paramed_type *T);
-struct tl_ds_input_geo_chat *fetch_ds_type_input_geo_chat (struct paramed_type *T);
-struct tl_ds_input_geo_chat *fetch_ds_type_bare_input_geo_chat (struct paramed_type *T);
-struct tl_ds_input_geo_point *fetch_ds_type_input_geo_point (struct paramed_type *T);
-struct tl_ds_input_geo_point *fetch_ds_type_bare_input_geo_point (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_type_input_media (struct paramed_type *T);
-struct tl_ds_input_media *fetch_ds_type_bare_input_media (struct paramed_type *T);
-struct tl_ds_input_notify_peer *fetch_ds_type_input_notify_peer (struct paramed_type *T);
-struct tl_ds_input_notify_peer *fetch_ds_type_bare_input_notify_peer (struct paramed_type *T);
-struct tl_ds_input_peer *fetch_ds_type_input_peer (struct paramed_type *T);
-struct tl_ds_input_peer *fetch_ds_type_bare_input_peer (struct paramed_type *T);
-struct tl_ds_input_peer_notify_events *fetch_ds_type_input_peer_notify_events (struct paramed_type *T);
-struct tl_ds_input_peer_notify_events *fetch_ds_type_bare_input_peer_notify_events (struct paramed_type *T);
-struct tl_ds_input_peer_notify_settings *fetch_ds_type_input_peer_notify_settings (struct paramed_type *T);
-struct tl_ds_input_peer_notify_settings *fetch_ds_type_bare_input_peer_notify_settings (struct paramed_type *T);
-struct tl_ds_input_photo *fetch_ds_type_input_photo (struct paramed_type *T);
-struct tl_ds_input_photo *fetch_ds_type_bare_input_photo (struct paramed_type *T);
-struct tl_ds_input_photo_crop *fetch_ds_type_input_photo_crop (struct paramed_type *T);
-struct tl_ds_input_photo_crop *fetch_ds_type_bare_input_photo_crop (struct paramed_type *T);
-struct tl_ds_input_privacy_key *fetch_ds_type_input_privacy_key (struct paramed_type *T);
-struct tl_ds_input_privacy_key *fetch_ds_type_bare_input_privacy_key (struct paramed_type *T);
-struct tl_ds_input_privacy_rule *fetch_ds_type_input_privacy_rule (struct paramed_type *T);
-struct tl_ds_input_privacy_rule *fetch_ds_type_bare_input_privacy_rule (struct paramed_type *T);
-struct tl_ds_input_sticker_set *fetch_ds_type_input_sticker_set (struct paramed_type *T);
-struct tl_ds_input_sticker_set *fetch_ds_type_bare_input_sticker_set (struct paramed_type *T);
-struct tl_ds_input_user *fetch_ds_type_input_user (struct paramed_type *T);
-struct tl_ds_input_user *fetch_ds_type_bare_input_user (struct paramed_type *T);
-struct tl_ds_input_video *fetch_ds_type_input_video (struct paramed_type *T);
-struct tl_ds_input_video *fetch_ds_type_bare_input_video (struct paramed_type *T);
-int *fetch_ds_type_int (struct paramed_type *T);
-int *fetch_ds_type_bare_int (struct paramed_type *T);
-struct tl_ds_int128 *fetch_ds_type_int128 (struct paramed_type *T);
-struct tl_ds_int128 *fetch_ds_type_bare_int128 (struct paramed_type *T);
-struct tl_ds_int256 *fetch_ds_type_int256 (struct paramed_type *T);
-struct tl_ds_int256 *fetch_ds_type_bare_int256 (struct paramed_type *T);
-struct tl_ds_keyboard_button *fetch_ds_type_keyboard_button (struct paramed_type *T);
-struct tl_ds_keyboard_button *fetch_ds_type_bare_keyboard_button (struct paramed_type *T);
-struct tl_ds_keyboard_button_row *fetch_ds_type_keyboard_button_row (struct paramed_type *T);
-struct tl_ds_keyboard_button_row *fetch_ds_type_bare_keyboard_button_row (struct paramed_type *T);
-long long *fetch_ds_type_long (struct paramed_type *T);
-long long *fetch_ds_type_bare_long (struct paramed_type *T);
-struct tl_ds_message *fetch_ds_type_message (struct paramed_type *T);
-struct tl_ds_message *fetch_ds_type_bare_message (struct paramed_type *T);
-struct tl_ds_message_action *fetch_ds_type_message_action (struct paramed_type *T);
-struct tl_ds_message_action *fetch_ds_type_bare_message_action (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_type_message_media (struct paramed_type *T);
-struct tl_ds_message_media *fetch_ds_type_bare_message_media (struct paramed_type *T);
-struct tl_ds_messages_filter *fetch_ds_type_messages_filter (struct paramed_type *T);
-struct tl_ds_messages_filter *fetch_ds_type_bare_messages_filter (struct paramed_type *T);
-struct tl_ds_nearest_dc *fetch_ds_type_nearest_dc (struct paramed_type *T);
-struct tl_ds_nearest_dc *fetch_ds_type_bare_nearest_dc (struct paramed_type *T);
-struct tl_ds_notify_peer *fetch_ds_type_notify_peer (struct paramed_type *T);
-struct tl_ds_notify_peer *fetch_ds_type_bare_notify_peer (struct paramed_type *T);
-struct tl_ds_null *fetch_ds_type_null (struct paramed_type *T);
-struct tl_ds_null *fetch_ds_type_bare_null (struct paramed_type *T);
-struct tl_ds_p_q_inner_data *fetch_ds_type_p_q_inner_data (struct paramed_type *T);
-struct tl_ds_p_q_inner_data *fetch_ds_type_bare_p_q_inner_data (struct paramed_type *T);
-struct tl_ds_peer *fetch_ds_type_peer (struct paramed_type *T);
-struct tl_ds_peer *fetch_ds_type_bare_peer (struct paramed_type *T);
-struct tl_ds_peer_notify_events *fetch_ds_type_peer_notify_events (struct paramed_type *T);
-struct tl_ds_peer_notify_events *fetch_ds_type_bare_peer_notify_events (struct paramed_type *T);
-struct tl_ds_peer_notify_settings *fetch_ds_type_peer_notify_settings (struct paramed_type *T);
-struct tl_ds_peer_notify_settings *fetch_ds_type_bare_peer_notify_settings (struct paramed_type *T);
-struct tl_ds_photo *fetch_ds_type_photo (struct paramed_type *T);
-struct tl_ds_photo *fetch_ds_type_bare_photo (struct paramed_type *T);
-struct tl_ds_photo_size *fetch_ds_type_photo_size (struct paramed_type *T);
-struct tl_ds_photo_size *fetch_ds_type_bare_photo_size (struct paramed_type *T);
-struct tl_ds_privacy_key *fetch_ds_type_privacy_key (struct paramed_type *T);
-struct tl_ds_privacy_key *fetch_ds_type_bare_privacy_key (struct paramed_type *T);
-struct tl_ds_privacy_rule *fetch_ds_type_privacy_rule (struct paramed_type *T);
-struct tl_ds_privacy_rule *fetch_ds_type_bare_privacy_rule (struct paramed_type *T);
-struct tl_ds_received_notify_message *fetch_ds_type_received_notify_message (struct paramed_type *T);
-struct tl_ds_received_notify_message *fetch_ds_type_bare_received_notify_message (struct paramed_type *T);
-struct tl_ds_reply_markup *fetch_ds_type_reply_markup (struct paramed_type *T);
-struct tl_ds_reply_markup *fetch_ds_type_bare_reply_markup (struct paramed_type *T);
-struct tl_ds_res_p_q *fetch_ds_type_res_p_q (struct paramed_type *T);
-struct tl_ds_res_p_q *fetch_ds_type_bare_res_p_q (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_type_send_message_action (struct paramed_type *T);
-struct tl_ds_send_message_action *fetch_ds_type_bare_send_message_action (struct paramed_type *T);
-struct tl_ds_server_d_h_params *fetch_ds_type_server_d_h_params (struct paramed_type *T);
-struct tl_ds_server_d_h_params *fetch_ds_type_bare_server_d_h_params (struct paramed_type *T);
-struct tl_ds_server_d_h_inner_data *fetch_ds_type_server_d_h_inner_data (struct paramed_type *T);
-struct tl_ds_server_d_h_inner_data *fetch_ds_type_bare_server_d_h_inner_data (struct paramed_type *T);
-struct tl_ds_set_client_d_h_params_answer *fetch_ds_type_set_client_d_h_params_answer (struct paramed_type *T);
-struct tl_ds_set_client_d_h_params_answer *fetch_ds_type_bare_set_client_d_h_params_answer (struct paramed_type *T);
-struct tl_ds_sticker_pack *fetch_ds_type_sticker_pack (struct paramed_type *T);
-struct tl_ds_sticker_pack *fetch_ds_type_bare_sticker_pack (struct paramed_type *T);
-struct tl_ds_sticker_set *fetch_ds_type_sticker_set (struct paramed_type *T);
-struct tl_ds_sticker_set *fetch_ds_type_bare_sticker_set (struct paramed_type *T);
-struct tl_ds_string *fetch_ds_type_string (struct paramed_type *T);
-struct tl_ds_string *fetch_ds_type_bare_string (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_type_update (struct paramed_type *T);
-struct tl_ds_update *fetch_ds_type_bare_update (struct paramed_type *T);
-struct tl_ds_updates *fetch_ds_type_updates (struct paramed_type *T);
-struct tl_ds_updates *fetch_ds_type_bare_updates (struct paramed_type *T);
-struct tl_ds_user *fetch_ds_type_user (struct paramed_type *T);
-struct tl_ds_user *fetch_ds_type_bare_user (struct paramed_type *T);
-struct tl_ds_user_full *fetch_ds_type_user_full (struct paramed_type *T);
-struct tl_ds_user_full *fetch_ds_type_bare_user_full (struct paramed_type *T);
-struct tl_ds_user_profile_photo *fetch_ds_type_user_profile_photo (struct paramed_type *T);
-struct tl_ds_user_profile_photo *fetch_ds_type_bare_user_profile_photo (struct paramed_type *T);
-struct tl_ds_user_status *fetch_ds_type_user_status (struct paramed_type *T);
-struct tl_ds_user_status *fetch_ds_type_bare_user_status (struct paramed_type *T);
-struct tl_ds_vector *fetch_ds_type_vector (struct paramed_type *T);
-struct tl_ds_vector *fetch_ds_type_bare_vector (struct paramed_type *T);
-struct tl_ds_video *fetch_ds_type_video (struct paramed_type *T);
-struct tl_ds_video *fetch_ds_type_bare_video (struct paramed_type *T);
-struct tl_ds_wall_paper *fetch_ds_type_wall_paper (struct paramed_type *T);
-struct tl_ds_wall_paper *fetch_ds_type_bare_wall_paper (struct paramed_type *T);
-struct tl_ds_web_page *fetch_ds_type_web_page (struct paramed_type *T);
-struct tl_ds_web_page *fetch_ds_type_bare_web_page (struct paramed_type *T);
-struct tl_ds_account_authorizations *fetch_ds_type_account_authorizations (struct paramed_type *T);
-struct tl_ds_account_authorizations *fetch_ds_type_bare_account_authorizations (struct paramed_type *T);
-struct tl_ds_account_password *fetch_ds_type_account_password (struct paramed_type *T);
-struct tl_ds_account_password *fetch_ds_type_bare_account_password (struct paramed_type *T);
-struct tl_ds_account_password_input_settings *fetch_ds_type_account_password_input_settings (struct paramed_type *T);
-struct tl_ds_account_password_input_settings *fetch_ds_type_bare_account_password_input_settings (struct paramed_type *T);
-struct tl_ds_account_password_settings *fetch_ds_type_account_password_settings (struct paramed_type *T);
-struct tl_ds_account_password_settings *fetch_ds_type_bare_account_password_settings (struct paramed_type *T);
-struct tl_ds_account_privacy_rules *fetch_ds_type_account_privacy_rules (struct paramed_type *T);
-struct tl_ds_account_privacy_rules *fetch_ds_type_bare_account_privacy_rules (struct paramed_type *T);
-struct tl_ds_account_sent_change_phone_code *fetch_ds_type_account_sent_change_phone_code (struct paramed_type *T);
-struct tl_ds_account_sent_change_phone_code *fetch_ds_type_bare_account_sent_change_phone_code (struct paramed_type *T);
-struct tl_ds_auth_authorization *fetch_ds_type_auth_authorization (struct paramed_type *T);
-struct tl_ds_auth_authorization *fetch_ds_type_bare_auth_authorization (struct paramed_type *T);
-struct tl_ds_auth_checked_phone *fetch_ds_type_auth_checked_phone (struct paramed_type *T);
-struct tl_ds_auth_checked_phone *fetch_ds_type_bare_auth_checked_phone (struct paramed_type *T);
-struct tl_ds_auth_exported_authorization *fetch_ds_type_auth_exported_authorization (struct paramed_type *T);
-struct tl_ds_auth_exported_authorization *fetch_ds_type_bare_auth_exported_authorization (struct paramed_type *T);
-struct tl_ds_auth_password_recovery *fetch_ds_type_auth_password_recovery (struct paramed_type *T);
-struct tl_ds_auth_password_recovery *fetch_ds_type_bare_auth_password_recovery (struct paramed_type *T);
-struct tl_ds_auth_sent_code *fetch_ds_type_auth_sent_code (struct paramed_type *T);
-struct tl_ds_auth_sent_code *fetch_ds_type_bare_auth_sent_code (struct paramed_type *T);
-struct tl_ds_binlog_encr_key *fetch_ds_type_binlog_encr_key (struct paramed_type *T);
-struct tl_ds_binlog_encr_key *fetch_ds_type_bare_binlog_encr_key (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_type_binlog_update (struct paramed_type *T);
-struct tl_ds_binlog_update *fetch_ds_type_bare_binlog_update (struct paramed_type *T);
-struct tl_ds_contacts_blocked *fetch_ds_type_contacts_blocked (struct paramed_type *T);
-struct tl_ds_contacts_blocked *fetch_ds_type_bare_contacts_blocked (struct paramed_type *T);
-struct tl_ds_contacts_contacts *fetch_ds_type_contacts_contacts (struct paramed_type *T);
-struct tl_ds_contacts_contacts *fetch_ds_type_bare_contacts_contacts (struct paramed_type *T);
-struct tl_ds_contacts_found *fetch_ds_type_contacts_found (struct paramed_type *T);
-struct tl_ds_contacts_found *fetch_ds_type_bare_contacts_found (struct paramed_type *T);
-struct tl_ds_contacts_imported_contacts *fetch_ds_type_contacts_imported_contacts (struct paramed_type *T);
-struct tl_ds_contacts_imported_contacts *fetch_ds_type_bare_contacts_imported_contacts (struct paramed_type *T);
-struct tl_ds_contacts_link *fetch_ds_type_contacts_link (struct paramed_type *T);
-struct tl_ds_contacts_link *fetch_ds_type_bare_contacts_link (struct paramed_type *T);
-struct tl_ds_contacts_suggested *fetch_ds_type_contacts_suggested (struct paramed_type *T);
-struct tl_ds_contacts_suggested *fetch_ds_type_bare_contacts_suggested (struct paramed_type *T);
-struct tl_ds_geochats_located *fetch_ds_type_geochats_located (struct paramed_type *T);
-struct tl_ds_geochats_located *fetch_ds_type_bare_geochats_located (struct paramed_type *T);
-struct tl_ds_geochats_messages *fetch_ds_type_geochats_messages (struct paramed_type *T);
-struct tl_ds_geochats_messages *fetch_ds_type_bare_geochats_messages (struct paramed_type *T);
-struct tl_ds_geochats_stated_message *fetch_ds_type_geochats_stated_message (struct paramed_type *T);
-struct tl_ds_geochats_stated_message *fetch_ds_type_bare_geochats_stated_message (struct paramed_type *T);
-struct tl_ds_help_app_update *fetch_ds_type_help_app_update (struct paramed_type *T);
-struct tl_ds_help_app_update *fetch_ds_type_bare_help_app_update (struct paramed_type *T);
-struct tl_ds_help_invite_text *fetch_ds_type_help_invite_text (struct paramed_type *T);
-struct tl_ds_help_invite_text *fetch_ds_type_bare_help_invite_text (struct paramed_type *T);
-struct tl_ds_help_support *fetch_ds_type_help_support (struct paramed_type *T);
-struct tl_ds_help_support *fetch_ds_type_bare_help_support (struct paramed_type *T);
-struct tl_ds_messages_affected_history *fetch_ds_type_messages_affected_history (struct paramed_type *T);
-struct tl_ds_messages_affected_history *fetch_ds_type_bare_messages_affected_history (struct paramed_type *T);
-struct tl_ds_messages_affected_messages *fetch_ds_type_messages_affected_messages (struct paramed_type *T);
-struct tl_ds_messages_affected_messages *fetch_ds_type_bare_messages_affected_messages (struct paramed_type *T);
-struct tl_ds_messages_all_stickers *fetch_ds_type_messages_all_stickers (struct paramed_type *T);
-struct tl_ds_messages_all_stickers *fetch_ds_type_bare_messages_all_stickers (struct paramed_type *T);
-struct tl_ds_messages_chat_full *fetch_ds_type_messages_chat_full (struct paramed_type *T);
-struct tl_ds_messages_chat_full *fetch_ds_type_bare_messages_chat_full (struct paramed_type *T);
-struct tl_ds_messages_chats *fetch_ds_type_messages_chats (struct paramed_type *T);
-struct tl_ds_messages_chats *fetch_ds_type_bare_messages_chats (struct paramed_type *T);
-struct tl_ds_messages_dh_config *fetch_ds_type_messages_dh_config (struct paramed_type *T);
-struct tl_ds_messages_dh_config *fetch_ds_type_bare_messages_dh_config (struct paramed_type *T);
-struct tl_ds_messages_dialogs *fetch_ds_type_messages_dialogs (struct paramed_type *T);
-struct tl_ds_messages_dialogs *fetch_ds_type_bare_messages_dialogs (struct paramed_type *T);
-struct tl_ds_messages_message *fetch_ds_type_messages_message (struct paramed_type *T);
-struct tl_ds_messages_message *fetch_ds_type_bare_messages_message (struct paramed_type *T);
-struct tl_ds_messages_messages *fetch_ds_type_messages_messages (struct paramed_type *T);
-struct tl_ds_messages_messages *fetch_ds_type_bare_messages_messages (struct paramed_type *T);
-struct tl_ds_messages_sent_encrypted_message *fetch_ds_type_messages_sent_encrypted_message (struct paramed_type *T);
-struct tl_ds_messages_sent_encrypted_message *fetch_ds_type_bare_messages_sent_encrypted_message (struct paramed_type *T);
-struct tl_ds_messages_sent_message *fetch_ds_type_messages_sent_message (struct paramed_type *T);
-struct tl_ds_messages_sent_message *fetch_ds_type_bare_messages_sent_message (struct paramed_type *T);
-struct tl_ds_messages_sticker_set *fetch_ds_type_messages_sticker_set (struct paramed_type *T);
-struct tl_ds_messages_sticker_set *fetch_ds_type_bare_messages_sticker_set (struct paramed_type *T);
-struct tl_ds_messages_stickers *fetch_ds_type_messages_stickers (struct paramed_type *T);
-struct tl_ds_messages_stickers *fetch_ds_type_bare_messages_stickers (struct paramed_type *T);
-struct tl_ds_photos_photo *fetch_ds_type_photos_photo (struct paramed_type *T);
-struct tl_ds_photos_photo *fetch_ds_type_bare_photos_photo (struct paramed_type *T);
-struct tl_ds_photos_photos *fetch_ds_type_photos_photos (struct paramed_type *T);
-struct tl_ds_photos_photos *fetch_ds_type_bare_photos_photos (struct paramed_type *T);
-struct tl_ds_storage_file_type *fetch_ds_type_storage_file_type (struct paramed_type *T);
-struct tl_ds_storage_file_type *fetch_ds_type_bare_storage_file_type (struct paramed_type *T);
-struct tl_ds_updates_difference *fetch_ds_type_updates_difference (struct paramed_type *T);
-struct tl_ds_updates_difference *fetch_ds_type_bare_updates_difference (struct paramed_type *T);
-struct tl_ds_updates_state *fetch_ds_type_updates_state (struct paramed_type *T);
-struct tl_ds_updates_state *fetch_ds_type_bare_updates_state (struct paramed_type *T);
-struct tl_ds_upload_file *fetch_ds_type_upload_file (struct paramed_type *T);
-struct tl_ds_upload_file *fetch_ds_type_bare_upload_file (struct paramed_type *T);
-void *fetch_ds_type_any (struct paramed_type *T);
diff --git a/protocols/Telegram/src/tgl/auto/auto-fetch.c b/protocols/Telegram/src/tgl/auto/auto-fetch.c
deleted file mode 100644
index adb2ef789d..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-fetch.c
+++ /dev/null
@@ -1,16330 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#include "auto-fetch.h"
-#include "auto-skip.h"
-#include "..\auto-static-fetch.c"
-#include "..\mtproto-common.h"
-#else
-#include "auto.h"
-#include "auto/auto-fetch.h"
-#include "auto/auto-skip.h"
-#include "auto-static-fetch.c"
-#include "mtproto-common.h"
-#endif
-#include <assert.h>
-int fetch_constructor_account_days_t_t_l (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb8d0afdf && T->type->name != 0x472f5020)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int fetch_constructor_audio_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return -1; }
- eprintf (" audioEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return -1; }
- eprintf (" audio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bf2e6f6 && T->type->name != 0x840d1909)) { return -1; }
- eprintf (" authorization");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" hash :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" device_model :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" platform :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" system_version :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" api_id :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" app_name :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" app_version :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date_created :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date_active :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ip :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field11) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" country :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field12) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" region :"); }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field13) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_bool_false (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return -1; }
- eprintf (" boolFalse");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_bool_true (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return -1; }
- eprintf (" boolTrue");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_bot_command (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return -1; }
- eprintf (" botCommand");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" command :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" description :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_bot_command_old (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return -1; }
- eprintf (" botCommandOld");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" command :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" params :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" description :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_bot_info_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return -1; }
- eprintf (" botInfoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_bot_info (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return -1; }
- eprintf (" botInfo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" share_text :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" description :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" commands :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x75e7ea6c, .id = "BotCommand", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_bytes (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0ee1379f && T->type->name != 0xf11ec860)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int fetch_constructor_chat_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- eprintf (" chatEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- eprintf (" chat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_chat_photo (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participants_count :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" left :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat_forbidden (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- eprintf (" chatForbidden");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_geo_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- eprintf (" geoChat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" address :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" venue :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_geo_point (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_chat_photo (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participants_count :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" checked_in :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field11) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02a614 && T->type->name != 0xd1fd59eb)) { return -1; }
- eprintf (" chatFull");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participants :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_chat_participants (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_photo :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_settings :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_peer_notify_settings (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" exported_invite :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f132d5, .id = "ExportedChatInvite", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_exported_chat_invite (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bot_info :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat_invite_already (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return -1; }
- eprintf (" chatInviteAlready");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_chat (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat_invite (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return -1; }
- eprintf (" chatInvite");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat_located (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3631cf4c && T->type->name != 0xc9ce30b3)) { return -1; }
- eprintf (" chatLocated");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" distance :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc8d7493e && T->type->name != 0x3728b6c1)) { return -1; }
- eprintf (" chatParticipant");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" inviter_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat_participants_forbidden (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return -1; }
- eprintf (" chatParticipantsForbidden");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat_participants (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return -1; }
- eprintf (" chatParticipants");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" admin_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participants :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return -1; }
- eprintf (" chatPhotoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return -1; }
- eprintf (" chatPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo_small :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_file_location (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo_big :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_file_location (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_client_d_h_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6643b654 && T->type->name != 0x99bc49ab)) { return -1; }
- eprintf (" client_DH_inner_data");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" retry_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_b :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_config (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e32b894 && T->type->name != 0xb1cd476b)) { return -1; }
- eprintf (" config");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" expires :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" test_mode :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" this_dc :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_options :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_size_max :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" broadcast_size_max :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" forwarded_count_max :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" online_update_period_ms :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" offline_blur_timeout_ms :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" offline_idle_timeout_ms :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field11) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" online_cloud_timeout_ms :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field12) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_cloud_delay_ms :"); }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field13) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_default_delay_ms :"); }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field14) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_big_size :"); }
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field15) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" push_chat_period_ms :"); }
- struct paramed_type *field16 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field16) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" push_chat_limit :"); }
- struct paramed_type *field17 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field17) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" disabled_features :"); }
- struct paramed_type *field18 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae636f24, .id = "DisabledFeature", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field18) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf911c994 && T->type->name != 0x06ee366b)) { return -1; }
- eprintf (" contact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mutual :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contact_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x561bc879 && T->type->name != 0xa9e43786)) { return -1; }
- eprintf (" contactBlocked");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contact_found (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xea879f95 && T->type->name != 0x1578606a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int fetch_constructor_contact_link_unknown (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- eprintf (" contactLinkUnknown");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contact_link_none (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- eprintf (" contactLinkNone");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contact_link_has_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- eprintf (" contactLinkHasPhone");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contact_link_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- eprintf (" contactLinkContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contact_status (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd3680c61 && T->type->name != 0x2c97f39e)) { return -1; }
- eprintf (" contactStatus");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" status :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_user_status (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contact_suggested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3de191a1 && T->type->name != 0xc21e6e5e)) { return -1; }
- eprintf (" contactSuggested");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mutual_contacts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_dc_option_l28 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return -1; }
- eprintf (" dcOptionL28");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" hostname :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ip_address :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" port :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_dc_option (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return -1; }
- eprintf (" dcOption");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ip_address :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" port :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return -1; }
- eprintf (" decryptedMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ttl :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_decrypted_message_media (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return -1; }
- eprintf (" decryptedMessageService");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_decrypted_message_action (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_set_message_t_t_l (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionSetMessageTTL");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ttl_seconds :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_read_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionReadMessages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_ids :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_delete_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionDeleteMessages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_ids :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_screenshot_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionScreenshotMessages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_ids :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_flush_history (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionFlushHistory");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_resend (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionResend");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" start_seq_no :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" end_seq_no :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_notify_layer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionNotifyLayer");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" layer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionTyping");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_send_message_action (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_request_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionRequestKey");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" exchange_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_a :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_accept_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionAcceptKey");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" exchange_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_b :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_abort_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionAbortKey");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" exchange_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_commit_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionCommitKey");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" exchange_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_action_noop (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionNoop");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_layer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1be31789 && T->type->name != 0xe41ce876)) { return -1; }
- eprintf (" decryptedMessageLayer");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_bytes :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" layer :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" in_seq_no :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" out_seq_no :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x535b7918, .id = "DecryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_decrypted_message (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" str_thumb :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_w :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_h :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" iv :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_media_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaGeoPoint");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" latitude :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_double (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" longitude :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_double (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_number :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" str_thumb :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_w :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_h :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file_name :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" iv :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" str_thumb :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_w :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_h :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" iv :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" iv :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_media_external_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaExternalDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo_size (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" attributes :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_media_video_l12 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaVideoL12");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" str_thumb :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_w :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_h :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" iv :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_decrypted_message_media_audio_l12 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaAudioL12");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" iv :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_dialog (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc1dd804a && T->type->name != 0x3e227fb5)) { return -1; }
- eprintf (" dialog");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_peer (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" top_message :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" read_inbox_max_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" unread_count :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_settings :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_peer_notify_settings (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_disabled_feature (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae636f24 && T->type->name != 0x519c90db)) { return -1; }
- eprintf (" disabledFeature");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" feature :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" description :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_document_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- eprintf (" documentEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- eprintf (" document");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo_size (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" attributes :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_document_l19 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- eprintf (" document_l19");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file_name :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo_size (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_document_attribute_image_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeImageSize");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_document_attribute_animated (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeAnimated");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_document_attribute_sticker_l28 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeStickerL28");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" alt :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_document_attribute_sticker (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeSticker");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" alt :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" stickerset :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_sticker_set (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_document_attribute_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_document_attribute_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_document_attribute_filename (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeFilename");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file_name :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_double (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2210c154 && T->type->name != 0xddef3eab)) { return -1; }
- if (in_remaining () < 8) { return -1;}
- eprintf (" %lf", fetch_double ());
- return 0;
-}
-int fetch_constructor_encrypted_chat_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- eprintf (" encryptedChatEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_encrypted_chat_waiting (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- eprintf (" encryptedChatWaiting");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" admin_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participant_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_encrypted_chat_requested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- eprintf (" encryptedChatRequested");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" admin_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participant_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_a :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_encrypted_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- eprintf (" encryptedChat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" admin_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participant_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_a_or_b :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_encrypted_chat_discarded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- eprintf (" encryptedChatDiscarded");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_encrypted_file_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return -1; }
- eprintf (" encryptedFileEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return -1; }
- eprintf (" encryptedFile");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return -1; }
- eprintf (" encryptedMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bytes :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_encrypted_file (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_encrypted_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return -1; }
- eprintf (" encryptedMessageService");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bytes :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_error (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc4b9f9bb && T->type->name != 0x3b460644)) { return -1; }
- eprintf (" error");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" code :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" text :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat_invite_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return -1; }
- eprintf (" chatInviteEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_chat_invite_exported (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return -1; }
- eprintf (" chatInviteExported");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" link :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_file_location_unavailable (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return -1; }
- eprintf (" fileLocationUnavailable");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" volume_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" local_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" secret :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return -1; }
- eprintf (" fileLocation");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" volume_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" local_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" secret :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_geo_chat_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- eprintf (" geoChatMessageEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_geo_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- eprintf (" geoChatMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_message_media (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_geo_chat_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- eprintf (" geoChatMessageService");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_message_action (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_geo_point_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return -1; }
- eprintf (" geoPointEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return -1; }
- eprintf (" geoPoint");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" longitude :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_double (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" latitude :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_double (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_imported_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd0028438 && T->type->name != 0x2ffd7bc7)) { return -1; }
- eprintf (" importedContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" client_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_app_event (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x770656a8 && T->type->name != 0x88f9a957)) { return -1; }
- eprintf (" inputAppEvent");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" time :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_double (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" peer :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" data :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_audio_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return -1; }
- eprintf (" inputAudioEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return -1; }
- eprintf (" inputAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_chat_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- eprintf (" inputChatPhotoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_chat_uploaded_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- eprintf (" inputChatUploadedPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_file (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" crop :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_photo_crop (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_chat_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- eprintf (" inputChatPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_photo (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" crop :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_photo_crop (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_phone_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf392b7f4 && T->type->name != 0x0c6d480b)) { return -1; }
- eprintf (" inputPhoneContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" client_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_document_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return -1; }
- eprintf (" inputDocumentEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return -1; }
- eprintf (" inputDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_encrypted_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf141b5e1 && T->type->name != 0x0ebe4a1e)) { return -1; }
- eprintf (" inputEncryptedChat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_encrypted_file_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- eprintf (" inputEncryptedFileEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_encrypted_file_uploaded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- eprintf (" inputEncryptedFileUploaded");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" parts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" md5_checksum :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- eprintf (" inputEncryptedFile");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_encrypted_file_big_uploaded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- eprintf (" inputEncryptedFileBigUploaded");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" parts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return -1; }
- eprintf (" inputFile");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" parts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" md5_checksum :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_file_big (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return -1; }
- eprintf (" inputFileBig");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" parts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- eprintf (" inputFileLocation");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" volume_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" local_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" secret :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_video_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- eprintf (" inputVideoFileLocation");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_encrypted_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- eprintf (" inputEncryptedFileLocation");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_audio_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- eprintf (" inputAudioFileLocation");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_document_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- eprintf (" inputDocumentFileLocation");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_geo_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x74d456fa && T->type->name != 0x8b2ba905)) { return -1; }
- eprintf (" inputGeoChat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_geo_point_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return -1; }
- eprintf (" inputGeoPointEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return -1; }
- eprintf (" inputGeoPoint");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" latitude :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_double (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" longitude :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_double (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_uploaded_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaUploadedPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_file (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_photo (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaGeoPoint");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo_point :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_geo_point (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_number :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_uploaded_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaUploadedVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_file (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_uploaded_thumb_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaUploadedThumbVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_file (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_file (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" video_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbb5f7a27, .id = "InputVideo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_video (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_uploaded_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaUploadedAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_file (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" audio_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae8e9c7b, .id = "InputAudio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_audio (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_uploaded_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaUploadedDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_file (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" attributes :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_uploaded_thumb_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaUploadedThumbDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_file (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_file (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" attributes :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" document_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6a8963fc, .id = "InputDocument", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_document (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_media_venue (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaVenue");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo_point :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_geo_point (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" address :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" provider :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" venue_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_notify_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- eprintf (" inputNotifyPeer");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_peer (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_notify_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- eprintf (" inputNotifyUsers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_notify_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- eprintf (" inputNotifyChats");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_notify_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- eprintf (" inputNotifyAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_notify_geo_chat_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- eprintf (" inputNotifyGeoChatPeer");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo_peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_input_geo_chat (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_peer_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- eprintf (" inputPeerEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_peer_self (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- eprintf (" inputPeerSelf");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_peer_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- eprintf (" inputPeerContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_peer_foreign (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- eprintf (" inputPeerForeign");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_peer_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- eprintf (" inputPeerChat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_peer_notify_events_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return -1; }
- eprintf (" inputPeerNotifyEventsEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_peer_notify_events_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return -1; }
- eprintf (" inputPeerNotifyEventsAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_peer_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x46a2ce98 && T->type->name != 0xb95d3167)) { return -1; }
- eprintf (" inputPeerNotifySettings");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mute_until :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" sound :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" show_previews :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" events_mask :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return -1; }
- eprintf (" inputPhotoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return -1; }
- eprintf (" inputPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_photo_crop_auto (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return -1; }
- eprintf (" inputPhotoCropAuto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_photo_crop (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return -1; }
- eprintf (" inputPhotoCrop");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" crop_left :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_double (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" crop_top :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_double (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" crop_width :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_double (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_privacy_key_status_timestamp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4f96cb18 && T->type->name != 0xb06934e7)) { return -1; }
- eprintf (" inputPrivacyKeyStatusTimestamp");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_privacy_value_allow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- eprintf (" inputPrivacyValueAllowContacts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_privacy_value_allow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- eprintf (" inputPrivacyValueAllowAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_privacy_value_allow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- eprintf (" inputPrivacyValueAllowUsers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_privacy_value_disallow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- eprintf (" inputPrivacyValueDisallowContacts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_privacy_value_disallow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- eprintf (" inputPrivacyValueDisallowAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_privacy_value_disallow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- eprintf (" inputPrivacyValueDisallowUsers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_sticker_set_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- eprintf (" inputStickerSetEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_sticker_set_i_d (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- eprintf (" inputStickerSetID");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_sticker_set_short_name (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- eprintf (" inputStickerSetShortName");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" short_name :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_user_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- eprintf (" inputUserEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_user_self (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- eprintf (" inputUserSelf");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_user_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- eprintf (" inputUserContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_user_foreign (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- eprintf (" inputUserForeign");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_video_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return -1; }
- eprintf (" inputVideoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return -1; }
- eprintf (" inputVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_int (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8509bda && T->type->name != 0x57af6425)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", fetch_int ());
- return 0;
-}
-int fetch_constructor_int128 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7d36c439 && T->type->name != 0x82c93bc6)) { return -1; }
- eprintf (" int128");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_int256 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf2c798b3 && T->type->name != 0x0d38674c)) { return -1; }
- eprintf (" int256");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_keyboard_button (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa2fa4880 && T->type->name != 0x5d05b77f)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int fetch_constructor_keyboard_button_row (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77608b83 && T->type->name != 0x889f747c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa2fa4880, .id = "KeyboardButton", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int fetch_constructor_long (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22076cba && T->type->name != 0xddf89345)) { return -1; }
- if (in_remaining () < 8) { return -1;}
- eprintf (" %I64d", fetch_long ());
- return 0;
-}
-int fetch_constructor_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- eprintf (" messageEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- eprintf (" message");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" to_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_peer (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_from_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_date :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" reply_to_msg_id :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_message_media (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 6)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" reply_markup :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_reply_markup (field11) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int fetch_constructor_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- eprintf (" messageService");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" to_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_peer (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_message_action (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_action_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_action_chat_create (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatCreate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_action_chat_edit_title (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatEditTitle");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_action_chat_edit_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatEditPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_action_chat_delete_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatDeletePhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_action_chat_add_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatAddUser");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_action_chat_delete_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatDeleteUser");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_action_geo_chat_create (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionGeoChatCreate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" address :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_action_geo_chat_checkin (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionGeoChatCheckin");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_action_chat_joined_by_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatJoinedByLink");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" inviter_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" video :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_video (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_media_geo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaGeo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_geo_point (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_number :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_media_unsupported (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaUnsupported");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" document :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_document (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" audio :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fc5ec4e, .id = "Audio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_audio (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_media_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaWebPage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" webpage :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_web_page (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_media_venue (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaVenue");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_geo_point (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" address :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" provider :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" venue_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_media_photo_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaPhotoL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_message_media_video_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaVideoL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" video :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_video (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_messages_filter_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_messages_filter_photos (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterPhotos");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_messages_filter_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_messages_filter_photo_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterPhotoVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_messages_filter_photo_video_documents (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterPhotoVideoDocuments");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_messages_filter_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_input_messages_filter_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_nearest_dc (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8e1a1775 && T->type->name != 0x71e5e88a)) { return -1; }
- eprintf (" nearestDc");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" country :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" this_dc :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nearest_dc :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_notify_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- eprintf (" notifyPeer");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_peer (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_notify_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- eprintf (" notifyUsers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_notify_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- eprintf (" notifyChats");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_notify_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- eprintf (" notifyAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_null (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56730bcc && T->type->name != 0xa98cf433)) { return -1; }
- eprintf (" null");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_p_q_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return -1; }
- eprintf (" p_q_inner_data");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pq :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" p :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" q :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_nonce :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int256 (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_p_q_inner_data_temp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return -1; }
- eprintf (" p_q_inner_data_temp");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pq :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" p :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" q :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_nonce :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int256 (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" expires_in :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_peer_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return -1; }
- eprintf (" peerUser");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_peer_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return -1; }
- eprintf (" peerChat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_peer_notify_events_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return -1; }
- eprintf (" peerNotifyEventsEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_peer_notify_events_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return -1; }
- eprintf (" peerNotifyEventsAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_peer_notify_settings_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return -1; }
- eprintf (" peerNotifySettingsEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_peer_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return -1; }
- eprintf (" peerNotifySettings");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mute_until :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" sound :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" show_previews :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" events_mask :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- eprintf (" photoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- eprintf (" photo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_geo_point (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" sizes :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_photo_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- eprintf (" photoL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_geo_point (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" sizes :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_photo_size_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- eprintf (" photoSizeEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_photo_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- eprintf (" photoSize");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" location :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_file_location (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_photo_cached_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- eprintf (" photoCachedSize");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" location :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_file_location (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bytes :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_privacy_key_status_timestamp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbc2eab30 && T->type->name != 0x43d154cf)) { return -1; }
- eprintf (" privacyKeyStatusTimestamp");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_privacy_value_allow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- eprintf (" privacyValueAllowContacts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_privacy_value_allow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- eprintf (" privacyValueAllowAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_privacy_value_allow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- eprintf (" privacyValueAllowUsers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_privacy_value_disallow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- eprintf (" privacyValueDisallowContacts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_privacy_value_disallow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- eprintf (" privacyValueDisallowAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_privacy_value_disallow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- eprintf (" privacyValueDisallowUsers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_received_notify_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa384b779 && T->type->name != 0x5c7b4886)) { return -1; }
- eprintf (" receivedNotifyMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_reply_keyboard_hide (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- eprintf (" replyKeyboardHide");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_reply_keyboard_force_reply (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- eprintf (" replyKeyboardForceReply");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_reply_keyboard_markup (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- eprintf (" replyKeyboardMarkup");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" rows :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77608b83, .id = "KeyboardButtonRow", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_res_p_q (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x05162463 && T->type->name != 0xfae9db9c)) { return -1; }
- eprintf (" resPQ");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pq :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_public_key_fingerprints :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_typing_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageTypingAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_cancel_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageCancelAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_record_video_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageRecordVideoAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_upload_video_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadVideoActionL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_upload_video_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadVideoAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" progress :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_record_audio_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageRecordAudioAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_upload_audio_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadAudioActionL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_upload_audio_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadAudioAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" progress :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_upload_photo_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadPhotoAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" progress :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_upload_document_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadDocumentActionL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_upload_document_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadDocumentAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" progress :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_geo_location_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageGeoLocationAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_send_message_choose_contact_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageChooseContactAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_server_d_h_params_fail (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return -1; }
- eprintf (" server_DH_params_fail");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_nonce_hash :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_server_d_h_params_ok (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return -1; }
- eprintf (" server_DH_params_ok");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" encrypted_answer :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_server_d_h_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5890dba && T->type->name != 0x4a76f245)) { return -1; }
- eprintf (" server_DH_inner_data");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dh_prime :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_a :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_time :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_dh_gen_ok (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- eprintf (" dh_gen_ok");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_nonce_hash1 :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_dh_gen_retry (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- eprintf (" dh_gen_retry");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_nonce_hash2 :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_dh_gen_fail (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- eprintf (" dh_gen_fail");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_nonce_hash3 :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int128 (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_sticker_pack (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x12b299d4 && T->type->name != 0xed4d662b)) { return -1; }
- eprintf (" stickerPack");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" emoticon :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" documents :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_sticker_set (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa7a43b17 && T->type->name != 0x585bc4e8)) { return -1; }
- eprintf (" stickerSet");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" short_name :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_string (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5286e24 && T->type->name != 0x4ad791db)) { return -1; }
- static char buf[1 << 22];
- int l = prefetch_strlen ();
- if (l < 0 || (l >= (1 << 22) - 2)) { return -1; }
- memcpy (buf, fetch_str (l), l);
- buf[l] = 0;
- print_escaped_string (buf, l);
- return 0;
-}
-int fetch_constructor_update_new_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateNewMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_message (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_message_i_d (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateMessageID");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_delete_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateDeleteMessages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_user_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateUserTyping");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_send_message_action (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_chat_user_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateChatUserTyping");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_send_message_action (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_chat_participants (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateChatParticipants");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participants :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_chat_participants (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_user_status (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateUserStatus");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" status :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_user_status (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_user_name (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateUserName");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" username :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_user_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateUserPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_user_profile_photo (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" previous :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_contact_registered (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateContactRegistered");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_contact_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateContactLink");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" my_link :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_contact_link (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" foreign_link :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_contact_link (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_new_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateNewAuthorization");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" auth_key_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" device :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" location :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_new_geo_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateNewGeoChatMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo_message :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_geo_chat_message (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_new_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateNewEncryptedMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" encr_message :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_encrypted_message (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" qts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_encrypted_chat_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateEncryptedChatTyping");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_encryption (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateEncryption");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" encr_chat :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb1718213, .id = "EncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_encrypted_chat (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_encrypted_messages_read (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateEncryptedMessagesRead");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" max_date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_chat_participant_add (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateChatParticipantAdd");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" inviter_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_chat_participant_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateChatParticipantDelete");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_dc_options (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateDcOptions");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_options :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_user_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateUserBlocked");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" blocked :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateNotifySettings");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fcb8237, .id = "NotifyPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_notify_peer (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_settings :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_peer_notify_settings (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_service_notification (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateServiceNotification");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message_text :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_message_media (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" popup :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_privacy (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updatePrivacy");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbc2eab30, .id = "PrivacyKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_privacy_key (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" rules :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_user_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateUserPhone");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_read_history_inbox (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateReadHistoryInbox");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_peer (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" max_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_read_history_outbox (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateReadHistoryOutbox");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_peer (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" max_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateWebPage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" webpage :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_web_page (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_read_messages_contents (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateReadMessagesContents");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_msg_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateMsgUpdate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_updates_too_long (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- eprintf (" updatesTooLong");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_update_short_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- eprintf (" updateShortMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_from_id :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_date :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" reply_to_msg_id :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int fetch_constructor_update_short_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- eprintf (" updateShortChatMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_from_id :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_date :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" reply_to_msg_id :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field11) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int fetch_constructor_update_short (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- eprintf (" updateShort");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" update :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_update (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_updates_combined (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- eprintf (" updatesCombined");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" updates :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq_start :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_updates (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- eprintf (" updates");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" updates :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_user_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return -1; }
- eprintf (" userEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return -1; }
- eprintf (" user");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 0)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 1)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" username :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 4)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 5)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_user_profile_photo (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 6)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" status :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_user_status (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 14)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bot_info_version :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int fetch_constructor_user_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5a89ac5b && T->type->name != 0xa57653a4)) { return -1; }
- eprintf (" userFull");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_user (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" link :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_contacts_link (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" profile_photo :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_settings :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_peer_notify_settings (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" blocked :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bot_info :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bot_info (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_user_profile_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return -1; }
- eprintf (" userProfilePhotoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_user_profile_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return -1; }
- eprintf (" userProfilePhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo_small :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_file_location (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo_big :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_file_location (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_user_status_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- eprintf (" userStatusEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_user_status_online (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- eprintf (" userStatusOnline");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" expires :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_user_status_offline (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- eprintf (" userStatusOffline");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" was_online :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_user_status_recently (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- eprintf (" userStatusRecently");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_user_status_last_week (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- eprintf (" userStatusLastWeek");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_user_status_last_month (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- eprintf (" userStatusLastMonth");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_vector (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1cb5c415 && T->type->name != 0xe34a3bea)) { return -1; }
- if (ODDP(T->params[0])) { return -1; }
- struct paramed_type *var0 = T->params[0]; assert (var0);
- eprintf (" vector");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var1 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- int multiplicity3 = PTR2INT (
- ((void *)var1) + 0 );
- struct paramed_type *field3 =
- var0;
- eprintf (" [");
- if (multiline_output >= 1) { eprintf ("\n"); }
- if (multiline_output >= 1) { multiline_offset += multiline_offset_size;}
- while (multiplicity3 -- > 0) {
- if (multiline_output >= 1) { print_offset (); }
- if (fetch_type_any (field3) < 0) { return -1;}
- if (multiline_output >= 1) { eprintf ("\n"); }
- }
- if (multiline_output >= 1) { multiline_offset -= multiline_offset_size; print_offset ();}
- eprintf (" ]");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_video_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- eprintf (" videoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- eprintf (" video");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo_size (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_video_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- eprintf (" videoL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo_size (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field11) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field12) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_wall_paper (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return -1; }
- eprintf (" wallPaper");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" sizes :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" color :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_wall_paper_solid (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return -1; }
- eprintf (" wallPaperSolid");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bg_color :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" color :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_web_page_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- eprintf (" webPageEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_web_page_pending (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- eprintf (" webPagePending");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- eprintf (" webPage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" url :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" display_url :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 0)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 1)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" site_name :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" description :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 4)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 5)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" embed_url :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 5)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" embed_type :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field11) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 6)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" embed_width :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field12) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 6)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" embed_height :"); }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field13) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 7)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field14) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 8)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" author :"); }
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field15) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int fetch_constructor_account_authorizations (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1250abde && T->type->name != 0xedaf5421)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bf2e6f6, .id = "Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int fetch_constructor_account_no_password (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return -1; }
- eprintf (" account.noPassword");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_salt :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" email_unconfirmed_pattern :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_account_password (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return -1; }
- eprintf (" account.password");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" current_salt :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_salt :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" hint :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" has_recovery :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" email_unconfirmed_pattern :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_account_password_input_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbcfc532c && T->type->name != 0x4303acd3)) { return -1; }
- eprintf (" account.passwordInputSettings");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 0)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_salt :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 0)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_password_hash :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 0)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" hint :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 1)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" email :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int fetch_constructor_account_password_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb7b72ab3 && T->type->name != 0x4848d54c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int fetch_constructor_account_privacy_rules (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x554abb6f && T->type->name != 0xaab54490)) { return -1; }
- eprintf (" account.privacyRules");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" rules :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_account_sent_change_phone_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa4f58c4c && T->type->name != 0x5b0a73b3)) { return -1; }
- eprintf (" account.sentChangePhoneCode");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_code_hash :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" send_call_timeout :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_auth_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xff036af1 && T->type->name != 0x00fc950e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_user (field1) < 0) { return -1;}
- return 0;
-}
-int fetch_constructor_auth_checked_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x811ea28e && T->type->name != 0x7ee15d71)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field1) < 0) { return -1;}
- return 0;
-}
-int fetch_constructor_auth_exported_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdf969c2d && T->type->name != 0x206963d2)) { return -1; }
- eprintf (" auth.exportedAuthorization");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bytes :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_auth_password_recovery (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x137948a5 && T->type->name != 0xec86b75a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int fetch_constructor_auth_sent_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return -1; }
- eprintf (" auth.sentCode");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_registered :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_code_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" send_call_timeout :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" is_password :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_auth_sent_app_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return -1; }
- eprintf (" auth.sentAppCode");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_registered :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_code_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" send_call_timeout :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" is_password :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_encr_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0377168f && T->type->name != 0xfc88e970)) { return -1; }
- int multiplicity1 = PTR2INT (
- INT2PTR (64) );
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- eprintf (" [");
- if (multiline_output >= 1) { eprintf ("\n"); }
- if (multiline_output >= 1) { multiline_offset += multiline_offset_size;}
- while (multiplicity1 -- > 0) {
- if (multiline_output >= 1) { print_offset (); }
- if (fetch_type_any (field1) < 0) { return -1;}
- if (multiline_output >= 1) { eprintf ("\n"); }
- }
- if (multiline_output >= 1) { multiline_offset -= multiline_offset_size; print_offset ();}
- eprintf (" ]");
- return 0;
-}
-int fetch_constructor_binlog_start (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.start");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_dc_option (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.dcOption");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" name :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ip :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" port :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_dc_option_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.dcOptionNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ip :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" port :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_auth_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.authKey");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_binlog_encr_key (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_default_dc (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.defaultDc");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_dc_signed (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.dcSigned");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_our_id (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.ourId");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_set_dh_params (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.setDhParams");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" root :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" prime :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_binlog_encr_key (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_set_pts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.setPts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_set_qts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.setQts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" qts :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_set_date (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.setDate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_set_seq (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.setSeq");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_encr_chat_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.encrChatDelete");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_encr_chat_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.encrChatNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" admin :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_binlog_encr_key (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_key :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_binlog_encr_key (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" state :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ttl :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 25)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" layer :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field11) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" in_seq_no :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field12) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_in_seq_no :"); }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field13) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" out_seq_no :"); }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field14) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 27)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field15) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int fetch_constructor_binlog_encr_chat_exchange_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.encrChatExchangeNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" exchange_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_binlog_encr_key (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" state :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int fetch_constructor_binlog_user_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.userDelete");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_user_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.userNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" username :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" real_first_name :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" real_last_name :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_photo :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_user_profile_photo (field11) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_read_in :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field12) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 25)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_read_out :"); }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field13) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bot_info :"); }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bot_info (field14) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int fetch_constructor_binlog_chat_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.chatNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_num :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participants :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_photo :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_chat_photo (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" admin :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_read_in :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field11) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 25)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_read_out :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field12) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int fetch_constructor_binlog_chat_add_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.chatAddParticipant");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" inviter_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_chat_del_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.chatDelParticipant");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_set_msg_id (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.setMsgId");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" old_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_message_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.messageDelete");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" lid :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_message_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.messageNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" lid :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" to_type :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" to_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_from_id :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_date :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_message_media (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_message_action (field11) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" reply_id :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field12) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" reply_markup :"); }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_reply_markup (field13) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int fetch_constructor_binlog_message_encr_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.messageEncrNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- if (in_remaining () < 4) { return -1;}
- eprintf (" %d", prefetch_int ());
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" lid :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" to_type :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" to_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" encr_media :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_decrypted_message_media (field8) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" encr_action :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_decrypted_message_action (field9) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_encrypted_file (field10) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int fetch_constructor_binlog_msg_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.msgUpdate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" lid :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_long (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_binlog_reset_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.resetAuthorization");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contacts_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return -1; }
- eprintf (" contacts.blocked");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" blocked :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contacts_blocked_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return -1; }
- eprintf (" contacts.blockedSlice");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" count :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" blocked :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contacts_contacts_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return -1; }
- eprintf (" contacts.contactsNotModified");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contacts_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return -1; }
- eprintf (" contacts.contacts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" contacts :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf911c994, .id = "Contact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contacts_found (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0566000e && T->type->name != 0xfa99fff1)) { return -1; }
- eprintf (" contacts.found");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" results :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xea879f95, .id = "ContactFound", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contacts_imported_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xad524315 && T->type->name != 0x52adbcea)) { return -1; }
- eprintf (" contacts.importedContacts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" imported :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xd0028438, .id = "ImportedContact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" retry_contacts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contacts_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3ace484c && T->type->name != 0xc531b7b3)) { return -1; }
- eprintf (" contacts.link");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" my_link :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_contact_link (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" foreign_link :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_contact_link (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_user (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_contacts_suggested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5649dcc5 && T->type->name != 0xa9b6233a)) { return -1; }
- eprintf (" contacts.suggested");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" results :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3de191a1, .id = "ContactSuggested", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_geochats_located (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x48feb267 && T->type->name != 0xb7014d98)) { return -1; }
- eprintf (" geochats.located");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" results :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3631cf4c, .id = "ChatLocated", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_geochats_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return -1; }
- eprintf (" geochats.messages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_geochats_messages_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return -1; }
- eprintf (" geochats.messagesSlice");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" count :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_geochats_stated_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17b1578b && T->type->name != 0xe84ea874)) { return -1; }
- eprintf (" geochats.statedMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_geo_chat_message (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_help_app_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return -1; }
- eprintf (" help.appUpdate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" critical :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bool (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" url :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" text :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_help_no_app_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return -1; }
- eprintf (" help.noAppUpdate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_help_invite_text (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x18cb9f78 && T->type->name != 0xe7346087)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int fetch_constructor_help_support (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17c6b5f6 && T->type->name != 0xe8394a09)) { return -1; }
- eprintf (" help.support");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_number :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_user (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_affected_history (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb45c69d1 && T->type->name != 0x4ba3962e)) { return -1; }
- eprintf (" messages.affectedHistory");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" offset :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_affected_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x84d19185 && T->type->name != 0x7b2e6e7a)) { return -1; }
- eprintf (" messages.affectedMessages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_all_stickers_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return -1; }
- eprintf (" messages.allStickersNotModified");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_all_stickers (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return -1; }
- eprintf (" messages.allStickers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" hash :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" packs :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" sets :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" documents :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_chat_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe5d7d19c && T->type->name != 0x1a282e63)) { return -1; }
- eprintf (" messages.chatFull");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" full_chat :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02a614, .id = "ChatFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_chat_full (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x64ff9fd5 && T->type->name != 0x9b00602a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int fetch_constructor_messages_dh_config_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return -1; }
- eprintf (" messages.dhConfigNotModified");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_dh_config (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return -1; }
- eprintf (" messages.dhConfig");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" p :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_dialogs (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return -1; }
- eprintf (" messages.dialogs");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dialogs :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_dialogs_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return -1; }
- eprintf (" messages.dialogsSlice");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" count :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dialogs :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3f4e0648 && T->type->name != 0xc0b1f9b7)) { return -1; }
- eprintf (" messages.messageEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return -1; }
- eprintf (" messages.messages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_messages_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return -1; }
- eprintf (" messages.messagesSlice");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" count :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_sent_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return -1; }
- eprintf (" messages.sentEncryptedMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_sent_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return -1; }
- eprintf (" messages.sentEncryptedFile");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_encrypted_file (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_sent_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return -1; }
- eprintf (" messages.sentMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_message_media (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_sent_message_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return -1; }
- eprintf (" messages.sentMessageLink");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_message_media (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" links :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field7) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_sticker_set (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb60a24a6 && T->type->name != 0x49f5db59)) { return -1; }
- eprintf (" messages.stickerSet");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" set :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_sticker_set (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" packs :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" documents :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_stickers_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return -1; }
- eprintf (" messages.stickersNotModified");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_messages_stickers (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return -1; }
- eprintf (" messages.stickers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" hash :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_string (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" stickers :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_photos_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x20212ca8 && T->type->name != 0xdfded357)) { return -1; }
- eprintf (" photos.photo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_photo (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_photos_photos (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return -1; }
- eprintf (" photos.photos");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photos :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_photos_photos_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return -1; }
- eprintf (" photos.photosSlice");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" count :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photos :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_storage_file_unknown (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileUnknown");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_storage_file_jpeg (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileJpeg");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_storage_file_gif (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileGif");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_storage_file_png (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.filePng");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_storage_file_pdf (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.filePdf");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_storage_file_mp3 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileMp3");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_storage_file_mov (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileMov");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_storage_file_partial (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.filePartial");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_storage_file_mp4 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileMp4");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_storage_file_webp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileWebp");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_updates_difference_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- eprintf (" updates.differenceEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_updates_difference (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- eprintf (" updates.difference");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_messages :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_encrypted_messages :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" other_updates :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" state :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_updates_state (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_updates_difference_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- eprintf (" updates.differenceSlice");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_messages :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_encrypted_messages :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" other_updates :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (fetch_type_vector (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" intermediate_state :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_updates_state (field6) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_updates_state (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa56c2a3e && T->type->name != 0x5a93d5c1)) { return -1; }
- eprintf (" updates.state");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" qts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field4) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" unread_count :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field5) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_constructor_upload_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x096a18d5 && T->type->name != 0xf695e72a)) { return -1; }
- eprintf (" upload.file");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3e2838a8, .id = "storage.FileType", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_storage_file_type (field1) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mtime :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_int (field2) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bytes :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (fetch_type_bare_bytes (field3) < 0) { return -1;}
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int fetch_type_account_days_t_t_l (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xb8d0afdf: res = fetch_constructor_account_days_t_t_l (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_account_days_t_t_l (struct paramed_type *T) {
- if (fetch_constructor_account_days_t_t_l (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_audio (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x586988d8: res = fetch_constructor_audio_empty (T); break;
- case 0xc7ac6496: res = fetch_constructor_audio (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_audio (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_audio_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_audio_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_audio (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_audio (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_authorization (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x7bf2e6f6: res = fetch_constructor_authorization (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_authorization (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_authorization (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_bool (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xbc799737: res = fetch_constructor_bool_false (T); break;
- case 0x997275b5: res = fetch_constructor_bool_true (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_bool (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_bool_false (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_bool_false (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_bool_true (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_bool_true (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_bot_command (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xc27ac8c7: res = fetch_constructor_bot_command (T); break;
- case 0xb79d22ab: res = fetch_constructor_bot_command_old (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_bot_command (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_bot_command (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_bot_command (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_bot_command_old (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_bot_command_old (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_bot_info (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xbb2e37ce: res = fetch_constructor_bot_info_empty (T); break;
- case 0x09cf585d: res = fetch_constructor_bot_info (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_bot_info (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_bot_info_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_bot_info_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_bot_info (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_bot_info (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_bytes (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x0ee1379f: res = fetch_constructor_bytes (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_bytes (struct paramed_type *T) {
- if (fetch_constructor_bytes (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_chat (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x9ba2d800: res = fetch_constructor_chat_empty (T); break;
- case 0x6e9c9bc7: res = fetch_constructor_chat (T); break;
- case 0xfb0ccc41: res = fetch_constructor_chat_forbidden (T); break;
- case 0x75eaea5a: res = fetch_constructor_geo_chat (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_chat (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_chat_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_chat_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_chat (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_chat (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_chat_forbidden (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_chat_forbidden (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_geo_chat (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_geo_chat (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_chat_full (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x2e02a614: res = fetch_constructor_chat_full (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_chat_full (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_chat_full (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_chat_invite (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x5a686d7c: res = fetch_constructor_chat_invite_already (T); break;
- case 0xce917dcd: res = fetch_constructor_chat_invite (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_chat_invite (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_chat_invite_already (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_chat_invite_already (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_chat_invite (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_chat_invite (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_chat_located (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x3631cf4c: res = fetch_constructor_chat_located (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_chat_located (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_chat_located (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_chat_participant (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xc8d7493e: res = fetch_constructor_chat_participant (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_chat_participant (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_chat_participant (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_chat_participants (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x0fd2bb8a: res = fetch_constructor_chat_participants_forbidden (T); break;
- case 0x7841b415: res = fetch_constructor_chat_participants (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_chat_participants (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_chat_participants_forbidden (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_chat_participants_forbidden (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_chat_participants (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_chat_participants (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_chat_photo (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x37c1011c: res = fetch_constructor_chat_photo_empty (T); break;
- case 0x6153276a: res = fetch_constructor_chat_photo (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_chat_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_chat_photo_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_chat_photo_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_chat_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_chat_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_client_d_h_inner_data (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x6643b654: res = fetch_constructor_client_d_h_inner_data (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_client_d_h_inner_data (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_client_d_h_inner_data (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_config (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x4e32b894: res = fetch_constructor_config (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_config (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_config (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_contact (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xf911c994: res = fetch_constructor_contact (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_contact (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_contact (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_contact_blocked (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x561bc879: res = fetch_constructor_contact_blocked (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_contact_blocked (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_contact_blocked (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_contact_found (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xea879f95: res = fetch_constructor_contact_found (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_contact_found (struct paramed_type *T) {
- if (fetch_constructor_contact_found (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_contact_link (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x5f4f9247: res = fetch_constructor_contact_link_unknown (T); break;
- case 0xfeedd3ad: res = fetch_constructor_contact_link_none (T); break;
- case 0x268f3f59: res = fetch_constructor_contact_link_has_phone (T); break;
- case 0xd502c2d0: res = fetch_constructor_contact_link_contact (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_contact_link (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_contact_link_unknown (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_contact_link_unknown (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_contact_link_none (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_contact_link_none (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_contact_link_has_phone (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_contact_link_has_phone (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_contact_link_contact (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_contact_link_contact (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_contact_status (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xd3680c61: res = fetch_constructor_contact_status (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_contact_status (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_contact_status (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_contact_suggested (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x3de191a1: res = fetch_constructor_contact_suggested (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_contact_suggested (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_contact_suggested (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_dc_option (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x2ec2a43c: res = fetch_constructor_dc_option_l28 (T); break;
- case 0x05d8c6cc: res = fetch_constructor_dc_option (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_dc_option (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_dc_option_l28 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_dc_option_l28 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_dc_option (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_dc_option (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_decrypted_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x204d3878: res = fetch_constructor_decrypted_message (T); break;
- case 0x73164160: res = fetch_constructor_decrypted_message_service (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_decrypted_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_decrypted_message (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_service (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_service (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_decrypted_message_action (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xa1733aec: res = fetch_constructor_decrypted_message_action_set_message_t_t_l (T); break;
- case 0x0c4f40be: res = fetch_constructor_decrypted_message_action_read_messages (T); break;
- case 0x65614304: res = fetch_constructor_decrypted_message_action_delete_messages (T); break;
- case 0x8ac1f475: res = fetch_constructor_decrypted_message_action_screenshot_messages (T); break;
- case 0x6719e45c: res = fetch_constructor_decrypted_message_action_flush_history (T); break;
- case 0x511110b0: res = fetch_constructor_decrypted_message_action_resend (T); break;
- case 0xf3048883: res = fetch_constructor_decrypted_message_action_notify_layer (T); break;
- case 0xccb27641: res = fetch_constructor_decrypted_message_action_typing (T); break;
- case 0xf3c9611b: res = fetch_constructor_decrypted_message_action_request_key (T); break;
- case 0x6fe1735b: res = fetch_constructor_decrypted_message_action_accept_key (T); break;
- case 0xdd05ec6b: res = fetch_constructor_decrypted_message_action_abort_key (T); break;
- case 0xec2e0b9b: res = fetch_constructor_decrypted_message_action_commit_key (T); break;
- case 0xa82fdd63: res = fetch_constructor_decrypted_message_action_noop (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_decrypted_message_action (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_decrypted_message_action_set_message_t_t_l (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_set_message_t_t_l (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_read_messages (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_read_messages (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_delete_messages (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_delete_messages (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_screenshot_messages (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_screenshot_messages (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_flush_history (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_flush_history (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_resend (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_resend (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_notify_layer (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_notify_layer (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_typing (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_typing (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_request_key (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_request_key (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_accept_key (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_accept_key (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_abort_key (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_abort_key (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_commit_key (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_commit_key (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_noop (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_action_noop (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_decrypted_message_layer (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x1be31789: res = fetch_constructor_decrypted_message_layer (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_decrypted_message_layer (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_decrypted_message_layer (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_decrypted_message_media (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x089f5c4a: res = fetch_constructor_decrypted_message_media_empty (T); break;
- case 0x32798a8c: res = fetch_constructor_decrypted_message_media_photo (T); break;
- case 0x35480a59: res = fetch_constructor_decrypted_message_media_geo_point (T); break;
- case 0x588a0a97: res = fetch_constructor_decrypted_message_media_contact (T); break;
- case 0xb095434b: res = fetch_constructor_decrypted_message_media_document (T); break;
- case 0x524a415d: res = fetch_constructor_decrypted_message_media_video (T); break;
- case 0x57e0a9cb: res = fetch_constructor_decrypted_message_media_audio (T); break;
- case 0xfa95b0dd: res = fetch_constructor_decrypted_message_media_external_document (T); break;
- case 0x4cee6ef3: res = fetch_constructor_decrypted_message_media_video_l12 (T); break;
- case 0x6080758f: res = fetch_constructor_decrypted_message_media_audio_l12 (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_decrypted_message_media (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_decrypted_message_media_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_media_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_media_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_geo_point (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_media_geo_point (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_contact (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_media_contact (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_document (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_media_document (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_video (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_media_video (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_audio (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_media_audio (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_external_document (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_media_external_document (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_video_l12 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_media_video_l12 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_audio_l12 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_decrypted_message_media_audio_l12 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_dialog (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xc1dd804a: res = fetch_constructor_dialog (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_dialog (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_dialog (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_disabled_feature (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xae636f24: res = fetch_constructor_disabled_feature (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_disabled_feature (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_disabled_feature (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_document (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x36f8c871: res = fetch_constructor_document_empty (T); break;
- case 0xf9a39f4f: res = fetch_constructor_document (T); break;
- case 0x9efc6326: res = fetch_constructor_document_l19 (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_document (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_document_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_document_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_document (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_l19 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_document_l19 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_document_attribute (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x6c37c15c: res = fetch_constructor_document_attribute_image_size (T); break;
- case 0x11b58939: res = fetch_constructor_document_attribute_animated (T); break;
- case 0x994c9882: res = fetch_constructor_document_attribute_sticker_l28 (T); break;
- case 0x3a556302: res = fetch_constructor_document_attribute_sticker (T); break;
- case 0x5910cccb: res = fetch_constructor_document_attribute_video (T); break;
- case 0x051448e5: res = fetch_constructor_document_attribute_audio (T); break;
- case 0x15590068: res = fetch_constructor_document_attribute_filename (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_document_attribute (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_document_attribute_image_size (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_document_attribute_image_size (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_attribute_animated (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_document_attribute_animated (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_attribute_sticker_l28 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_document_attribute_sticker_l28 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_attribute_sticker (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_document_attribute_sticker (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_attribute_video (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_document_attribute_video (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_attribute_audio (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_document_attribute_audio (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_attribute_filename (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_document_attribute_filename (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_double (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x2210c154: res = fetch_constructor_double (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_double (struct paramed_type *T) {
- if (fetch_constructor_double (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_encrypted_chat (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xab7ec0a0: res = fetch_constructor_encrypted_chat_empty (T); break;
- case 0x3bf703dc: res = fetch_constructor_encrypted_chat_waiting (T); break;
- case 0xc878527e: res = fetch_constructor_encrypted_chat_requested (T); break;
- case 0xfa56ce36: res = fetch_constructor_encrypted_chat (T); break;
- case 0x13d6dd27: res = fetch_constructor_encrypted_chat_discarded (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_encrypted_chat (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_encrypted_chat_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_encrypted_chat_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_encrypted_chat_waiting (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_encrypted_chat_waiting (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_encrypted_chat_requested (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_encrypted_chat_requested (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_encrypted_chat (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_encrypted_chat (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_encrypted_chat_discarded (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_encrypted_chat_discarded (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_encrypted_file (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xc21f497e: res = fetch_constructor_encrypted_file_empty (T); break;
- case 0x4a70994c: res = fetch_constructor_encrypted_file (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_encrypted_file (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_encrypted_file_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_encrypted_file_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_encrypted_file (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_encrypted_file (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_encrypted_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xed18c118: res = fetch_constructor_encrypted_message (T); break;
- case 0x23734b06: res = fetch_constructor_encrypted_message_service (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_encrypted_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_encrypted_message (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_encrypted_message (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_encrypted_message_service (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_encrypted_message_service (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_error (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xc4b9f9bb: res = fetch_constructor_error (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_error (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_error (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_exported_chat_invite (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x69df3769: res = fetch_constructor_chat_invite_empty (T); break;
- case 0xfc2e05bc: res = fetch_constructor_chat_invite_exported (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_exported_chat_invite (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_chat_invite_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_chat_invite_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_chat_invite_exported (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_chat_invite_exported (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_file_location (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x7c596b46: res = fetch_constructor_file_location_unavailable (T); break;
- case 0x53d69076: res = fetch_constructor_file_location (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_file_location (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_file_location_unavailable (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_file_location_unavailable (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_file_location (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_file_location (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_geo_chat_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x60311a9b: res = fetch_constructor_geo_chat_message_empty (T); break;
- case 0x4505f8e1: res = fetch_constructor_geo_chat_message (T); break;
- case 0xd34fa24e: res = fetch_constructor_geo_chat_message_service (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_geo_chat_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_geo_chat_message_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_geo_chat_message_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_geo_chat_message (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_geo_chat_message (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_geo_chat_message_service (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_geo_chat_message_service (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_geo_point (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x1117dd5f: res = fetch_constructor_geo_point_empty (T); break;
- case 0x2049d70c: res = fetch_constructor_geo_point (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_geo_point (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_geo_point_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_geo_point_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_geo_point (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_geo_point (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_imported_contact (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xd0028438: res = fetch_constructor_imported_contact (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_imported_contact (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_imported_contact (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_input_app_event (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x770656a8: res = fetch_constructor_input_app_event (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_app_event (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_input_app_event (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_input_audio (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xd95adc84: res = fetch_constructor_input_audio_empty (T); break;
- case 0x77d440ff: res = fetch_constructor_input_audio (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_audio (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_audio_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_audio_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_audio (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_audio (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_chat_photo (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x1ca48f57: res = fetch_constructor_input_chat_photo_empty (T); break;
- case 0x94254732: res = fetch_constructor_input_chat_uploaded_photo (T); break;
- case 0xb2e1bf08: res = fetch_constructor_input_chat_photo (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_chat_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_chat_photo_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_chat_photo_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_chat_uploaded_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_chat_uploaded_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_chat_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_chat_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_contact (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xf392b7f4: res = fetch_constructor_input_phone_contact (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_contact (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_input_phone_contact (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_input_document (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x72f0eaae: res = fetch_constructor_input_document_empty (T); break;
- case 0x18798952: res = fetch_constructor_input_document (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_document (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_document_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_document_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_document (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_document (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_encrypted_chat (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xf141b5e1: res = fetch_constructor_input_encrypted_chat (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_encrypted_chat (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_input_encrypted_chat (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_input_encrypted_file (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x1837c364: res = fetch_constructor_input_encrypted_file_empty (T); break;
- case 0x64bd0306: res = fetch_constructor_input_encrypted_file_uploaded (T); break;
- case 0x5a17b5e5: res = fetch_constructor_input_encrypted_file (T); break;
- case 0x2dc173c8: res = fetch_constructor_input_encrypted_file_big_uploaded (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_encrypted_file (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_encrypted_file_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_encrypted_file_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_encrypted_file_uploaded (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_encrypted_file_uploaded (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_encrypted_file (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_encrypted_file (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_encrypted_file_big_uploaded (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_encrypted_file_big_uploaded (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_file (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xf52ff27f: res = fetch_constructor_input_file (T); break;
- case 0xfa4f0bb5: res = fetch_constructor_input_file_big (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_file (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_file (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_file (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_file_big (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_file_big (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_file_location (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x14637196: res = fetch_constructor_input_file_location (T); break;
- case 0x3d0364ec: res = fetch_constructor_input_video_file_location (T); break;
- case 0xf5235d55: res = fetch_constructor_input_encrypted_file_location (T); break;
- case 0x74dc404d: res = fetch_constructor_input_audio_file_location (T); break;
- case 0x4e45abe9: res = fetch_constructor_input_document_file_location (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_file_location (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_file_location (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_file_location (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_video_file_location (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_video_file_location (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_encrypted_file_location (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_encrypted_file_location (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_audio_file_location (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_audio_file_location (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_document_file_location (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_document_file_location (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_geo_chat (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x74d456fa: res = fetch_constructor_input_geo_chat (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_geo_chat (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_input_geo_chat (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_input_geo_point (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xe4c123d6: res = fetch_constructor_input_geo_point_empty (T); break;
- case 0xf3b7acc9: res = fetch_constructor_input_geo_point (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_geo_point (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_geo_point_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_geo_point_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_geo_point (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_geo_point (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_media (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x9664f57f: res = fetch_constructor_input_media_empty (T); break;
- case 0xf7aff1c0: res = fetch_constructor_input_media_uploaded_photo (T); break;
- case 0xe9bfb4f3: res = fetch_constructor_input_media_photo (T); break;
- case 0xf9c44144: res = fetch_constructor_input_media_geo_point (T); break;
- case 0xa6e45987: res = fetch_constructor_input_media_contact (T); break;
- case 0xe13fd4bc: res = fetch_constructor_input_media_uploaded_video (T); break;
- case 0x96fb97dc: res = fetch_constructor_input_media_uploaded_thumb_video (T); break;
- case 0x936a4ebd: res = fetch_constructor_input_media_video (T); break;
- case 0x4e498cab: res = fetch_constructor_input_media_uploaded_audio (T); break;
- case 0x89938781: res = fetch_constructor_input_media_audio (T); break;
- case 0xffe76b78: res = fetch_constructor_input_media_uploaded_document (T); break;
- case 0x41481486: res = fetch_constructor_input_media_uploaded_thumb_document (T); break;
- case 0xd184e841: res = fetch_constructor_input_media_document (T); break;
- case 0x2827a81a: res = fetch_constructor_input_media_venue (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_media (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_media_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_uploaded_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_uploaded_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_geo_point (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_geo_point (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_contact (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_contact (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_uploaded_video (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_uploaded_video (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_uploaded_thumb_video (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_uploaded_thumb_video (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_video (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_video (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_uploaded_audio (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_uploaded_audio (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_audio (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_audio (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_uploaded_document (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_uploaded_document (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_uploaded_thumb_document (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_uploaded_thumb_document (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_document (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_document (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_venue (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_media_venue (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_notify_peer (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xb8bc5b0c: res = fetch_constructor_input_notify_peer (T); break;
- case 0x193b4417: res = fetch_constructor_input_notify_users (T); break;
- case 0x4a95e84e: res = fetch_constructor_input_notify_chats (T); break;
- case 0xa429b886: res = fetch_constructor_input_notify_all (T); break;
- case 0x4d8ddec8: res = fetch_constructor_input_notify_geo_chat_peer (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_notify_peer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_notify_peer (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_notify_peer (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_notify_users (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_notify_users (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_notify_chats (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_notify_chats (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_notify_all (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_notify_all (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_notify_geo_chat_peer (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_notify_geo_chat_peer (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_peer (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x7f3b18ea: res = fetch_constructor_input_peer_empty (T); break;
- case 0x7da07ec9: res = fetch_constructor_input_peer_self (T); break;
- case 0x1023dbe8: res = fetch_constructor_input_peer_contact (T); break;
- case 0x9b447325: res = fetch_constructor_input_peer_foreign (T); break;
- case 0x179be863: res = fetch_constructor_input_peer_chat (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_peer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_peer_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_peer_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_peer_self (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_peer_self (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_peer_contact (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_peer_contact (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_peer_foreign (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_peer_foreign (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_peer_chat (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_peer_chat (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_peer_notify_events (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xf03064d8: res = fetch_constructor_input_peer_notify_events_empty (T); break;
- case 0xe86a2c74: res = fetch_constructor_input_peer_notify_events_all (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_peer_notify_events (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_peer_notify_events_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_peer_notify_events_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_peer_notify_events_all (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_peer_notify_events_all (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_peer_notify_settings (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x46a2ce98: res = fetch_constructor_input_peer_notify_settings (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_peer_notify_settings (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_input_peer_notify_settings (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_input_photo (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x1cd7bf0d: res = fetch_constructor_input_photo_empty (T); break;
- case 0xfb95c6c4: res = fetch_constructor_input_photo (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_photo_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_photo_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_photo_crop (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xade6b004: res = fetch_constructor_input_photo_crop_auto (T); break;
- case 0xd9915325: res = fetch_constructor_input_photo_crop (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_photo_crop (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_photo_crop_auto (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_photo_crop_auto (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_photo_crop (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_photo_crop (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_privacy_key (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x4f96cb18: res = fetch_constructor_input_privacy_key_status_timestamp (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_privacy_key (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_input_privacy_key_status_timestamp (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_input_privacy_rule (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x0d09e07b: res = fetch_constructor_input_privacy_value_allow_contacts (T); break;
- case 0x184b35ce: res = fetch_constructor_input_privacy_value_allow_all (T); break;
- case 0x131cc67f: res = fetch_constructor_input_privacy_value_allow_users (T); break;
- case 0x0ba52007: res = fetch_constructor_input_privacy_value_disallow_contacts (T); break;
- case 0xd66b66c9: res = fetch_constructor_input_privacy_value_disallow_all (T); break;
- case 0x90110467: res = fetch_constructor_input_privacy_value_disallow_users (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_privacy_rule (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_privacy_value_allow_contacts (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_privacy_value_allow_contacts (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_privacy_value_allow_all (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_privacy_value_allow_all (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_privacy_value_allow_users (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_privacy_value_allow_users (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_privacy_value_disallow_contacts (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_privacy_value_disallow_contacts (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_privacy_value_disallow_all (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_privacy_value_disallow_all (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_privacy_value_disallow_users (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_privacy_value_disallow_users (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_sticker_set (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xffb62b95: res = fetch_constructor_input_sticker_set_empty (T); break;
- case 0x9de7a269: res = fetch_constructor_input_sticker_set_i_d (T); break;
- case 0x861cc8a0: res = fetch_constructor_input_sticker_set_short_name (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_sticker_set (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_sticker_set_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_sticker_set_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_sticker_set_i_d (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_sticker_set_i_d (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_sticker_set_short_name (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_sticker_set_short_name (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_user (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xb98886cf: res = fetch_constructor_input_user_empty (T); break;
- case 0xf7c1b13f: res = fetch_constructor_input_user_self (T); break;
- case 0x86e94f65: res = fetch_constructor_input_user_contact (T); break;
- case 0x655e74ff: res = fetch_constructor_input_user_foreign (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_user (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_user_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_user_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_user_self (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_user_self (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_user_contact (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_user_contact (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_user_foreign (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_user_foreign (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_input_video (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x5508ec75: res = fetch_constructor_input_video_empty (T); break;
- case 0xee579652: res = fetch_constructor_input_video (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_input_video (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_video_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_video_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_video (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_video (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_int (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xa8509bda: res = fetch_constructor_int (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_int (struct paramed_type *T) {
- if (fetch_constructor_int (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_int128 (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x7d36c439: res = fetch_constructor_int128 (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_int128 (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_int128 (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_int256 (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xf2c798b3: res = fetch_constructor_int256 (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_int256 (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_int256 (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_keyboard_button (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xa2fa4880: res = fetch_constructor_keyboard_button (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_keyboard_button (struct paramed_type *T) {
- if (fetch_constructor_keyboard_button (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_keyboard_button_row (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x77608b83: res = fetch_constructor_keyboard_button_row (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_keyboard_button_row (struct paramed_type *T) {
- if (fetch_constructor_keyboard_button_row (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_long (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x22076cba: res = fetch_constructor_long (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_long (struct paramed_type *T) {
- if (fetch_constructor_long (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x83e5de54: res = fetch_constructor_message_empty (T); break;
- case 0xc3060325: res = fetch_constructor_message (T); break;
- case 0x1d86f70e: res = fetch_constructor_message_service (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_message_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_service (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_service (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_message_action (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xb6aef7b0: res = fetch_constructor_message_action_empty (T); break;
- case 0xa6638b9a: res = fetch_constructor_message_action_chat_create (T); break;
- case 0xb5a1ce5a: res = fetch_constructor_message_action_chat_edit_title (T); break;
- case 0x7fcb13a8: res = fetch_constructor_message_action_chat_edit_photo (T); break;
- case 0x95e3fbef: res = fetch_constructor_message_action_chat_delete_photo (T); break;
- case 0x5e3cfc4b: res = fetch_constructor_message_action_chat_add_user (T); break;
- case 0xb2ae9b0c: res = fetch_constructor_message_action_chat_delete_user (T); break;
- case 0x6f038ebc: res = fetch_constructor_message_action_geo_chat_create (T); break;
- case 0x0c7d53de: res = fetch_constructor_message_action_geo_chat_checkin (T); break;
- case 0xf89cf5e8: res = fetch_constructor_message_action_chat_joined_by_link (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_message_action (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_message_action_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_action_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_create (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_action_chat_create (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_edit_title (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_action_chat_edit_title (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_edit_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_action_chat_edit_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_delete_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_action_chat_delete_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_add_user (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_action_chat_add_user (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_delete_user (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_action_chat_delete_user (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_geo_chat_create (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_action_geo_chat_create (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_geo_chat_checkin (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_action_geo_chat_checkin (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_joined_by_link (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_action_chat_joined_by_link (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_message_media (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x3ded6320: res = fetch_constructor_message_media_empty (T); break;
- case 0x3d8ce53d: res = fetch_constructor_message_media_photo (T); break;
- case 0x5bcf1675: res = fetch_constructor_message_media_video (T); break;
- case 0x56e0d474: res = fetch_constructor_message_media_geo (T); break;
- case 0x5e7d2f39: res = fetch_constructor_message_media_contact (T); break;
- case 0x9f84f49e: res = fetch_constructor_message_media_unsupported (T); break;
- case 0x2fda2204: res = fetch_constructor_message_media_document (T); break;
- case 0xc6b68300: res = fetch_constructor_message_media_audio (T); break;
- case 0xa32dd600: res = fetch_constructor_message_media_web_page (T); break;
- case 0x7912b71f: res = fetch_constructor_message_media_venue (T); break;
- case 0xc8c45a2a: res = fetch_constructor_message_media_photo_l27 (T); break;
- case 0xa2d24290: res = fetch_constructor_message_media_video_l27 (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_message_media (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_message_media_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_media_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_media_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_video (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_media_video (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_geo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_media_geo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_contact (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_media_contact (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_unsupported (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_media_unsupported (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_document (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_media_document (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_audio (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_media_audio (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_web_page (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_media_web_page (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_venue (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_media_venue (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_photo_l27 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_media_photo_l27 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_video_l27 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_message_media_video_l27 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_messages_filter (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x57e2f66c: res = fetch_constructor_input_messages_filter_empty (T); break;
- case 0x9609a51c: res = fetch_constructor_input_messages_filter_photos (T); break;
- case 0x9fc00e65: res = fetch_constructor_input_messages_filter_video (T); break;
- case 0x56e9f0e4: res = fetch_constructor_input_messages_filter_photo_video (T); break;
- case 0xd95e73bb: res = fetch_constructor_input_messages_filter_photo_video_documents (T); break;
- case 0x9eddf188: res = fetch_constructor_input_messages_filter_document (T); break;
- case 0xcfc87522: res = fetch_constructor_input_messages_filter_audio (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_filter (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_input_messages_filter_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_messages_filter_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_messages_filter_photos (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_messages_filter_photos (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_messages_filter_video (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_messages_filter_video (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_messages_filter_photo_video (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_messages_filter_photo_video (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_messages_filter_photo_video_documents (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_messages_filter_photo_video_documents (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_messages_filter_document (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_messages_filter_document (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_messages_filter_audio (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_input_messages_filter_audio (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_nearest_dc (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x8e1a1775: res = fetch_constructor_nearest_dc (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_nearest_dc (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_nearest_dc (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_notify_peer (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x9fd40bd8: res = fetch_constructor_notify_peer (T); break;
- case 0xb4c83b4c: res = fetch_constructor_notify_users (T); break;
- case 0xc007cec3: res = fetch_constructor_notify_chats (T); break;
- case 0x74d07c60: res = fetch_constructor_notify_all (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_notify_peer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_notify_peer (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_notify_peer (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_notify_users (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_notify_users (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_notify_chats (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_notify_chats (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_notify_all (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_notify_all (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_null (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x56730bcc: res = fetch_constructor_null (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_null (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_null (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_p_q_inner_data (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x83c95aec: res = fetch_constructor_p_q_inner_data (T); break;
- case 0x3c6a84d4: res = fetch_constructor_p_q_inner_data_temp (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_p_q_inner_data (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_p_q_inner_data (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_p_q_inner_data (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_p_q_inner_data_temp (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_p_q_inner_data_temp (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_peer (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x9db1bc6d: res = fetch_constructor_peer_user (T); break;
- case 0xbad0e5bb: res = fetch_constructor_peer_chat (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_peer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_peer_user (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_peer_user (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_peer_chat (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_peer_chat (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_peer_notify_events (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xadd53cb3: res = fetch_constructor_peer_notify_events_empty (T); break;
- case 0x6d1ded88: res = fetch_constructor_peer_notify_events_all (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_peer_notify_events (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_peer_notify_events_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_peer_notify_events_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_peer_notify_events_all (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_peer_notify_events_all (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_peer_notify_settings (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x70a68512: res = fetch_constructor_peer_notify_settings_empty (T); break;
- case 0x8d5e11ee: res = fetch_constructor_peer_notify_settings (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_peer_notify_settings (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_peer_notify_settings_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_peer_notify_settings_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_peer_notify_settings (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_peer_notify_settings (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_photo (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x2331b22d: res = fetch_constructor_photo_empty (T); break;
- case 0xc3838076: res = fetch_constructor_photo (T); break;
- case 0x22b56751: res = fetch_constructor_photo_l27 (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_photo_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_photo_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_photo_l27 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_photo_l27 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_photo_size (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x0e17e23c: res = fetch_constructor_photo_size_empty (T); break;
- case 0x77bfb61b: res = fetch_constructor_photo_size (T); break;
- case 0xe9a734fa: res = fetch_constructor_photo_cached_size (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_photo_size (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_photo_size_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_photo_size_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_photo_size (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_photo_size (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_photo_cached_size (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_photo_cached_size (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_privacy_key (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xbc2eab30: res = fetch_constructor_privacy_key_status_timestamp (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_privacy_key (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_privacy_key_status_timestamp (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_privacy_rule (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xfffe1bac: res = fetch_constructor_privacy_value_allow_contacts (T); break;
- case 0x65427b82: res = fetch_constructor_privacy_value_allow_all (T); break;
- case 0x4d5bbe0c: res = fetch_constructor_privacy_value_allow_users (T); break;
- case 0xf888fa1a: res = fetch_constructor_privacy_value_disallow_contacts (T); break;
- case 0x8b73e763: res = fetch_constructor_privacy_value_disallow_all (T); break;
- case 0x0c7f49b7: res = fetch_constructor_privacy_value_disallow_users (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_privacy_rule (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_privacy_value_allow_contacts (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_privacy_value_allow_contacts (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_privacy_value_allow_all (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_privacy_value_allow_all (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_privacy_value_allow_users (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_privacy_value_allow_users (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_privacy_value_disallow_contacts (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_privacy_value_disallow_contacts (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_privacy_value_disallow_all (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_privacy_value_disallow_all (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_privacy_value_disallow_users (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_privacy_value_disallow_users (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_received_notify_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xa384b779: res = fetch_constructor_received_notify_message (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_received_notify_message (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_received_notify_message (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_reply_markup (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xa03e5b85: res = fetch_constructor_reply_keyboard_hide (T); break;
- case 0xf4108aa0: res = fetch_constructor_reply_keyboard_force_reply (T); break;
- case 0x3502758c: res = fetch_constructor_reply_keyboard_markup (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_reply_markup (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_reply_keyboard_hide (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_reply_keyboard_hide (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_reply_keyboard_force_reply (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_reply_keyboard_force_reply (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_reply_keyboard_markup (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_reply_keyboard_markup (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_res_p_q (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x05162463: res = fetch_constructor_res_p_q (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_res_p_q (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_res_p_q (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_send_message_action (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x16bf744e: res = fetch_constructor_send_message_typing_action (T); break;
- case 0xfd5ec8f5: res = fetch_constructor_send_message_cancel_action (T); break;
- case 0xa187d66f: res = fetch_constructor_send_message_record_video_action (T); break;
- case 0x92042ff7: res = fetch_constructor_send_message_upload_video_action_l27 (T); break;
- case 0xe9763aec: res = fetch_constructor_send_message_upload_video_action (T); break;
- case 0xd52f73f7: res = fetch_constructor_send_message_record_audio_action (T); break;
- case 0xe6ac8a6f: res = fetch_constructor_send_message_upload_audio_action_l27 (T); break;
- case 0xf351d7ab: res = fetch_constructor_send_message_upload_audio_action (T); break;
- case 0xd1d34a26: res = fetch_constructor_send_message_upload_photo_action (T); break;
- case 0x8faee98e: res = fetch_constructor_send_message_upload_document_action_l27 (T); break;
- case 0xaa0cd9e4: res = fetch_constructor_send_message_upload_document_action (T); break;
- case 0x176f8ba1: res = fetch_constructor_send_message_geo_location_action (T); break;
- case 0x628cbc6f: res = fetch_constructor_send_message_choose_contact_action (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_send_message_action (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_send_message_typing_action (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_typing_action (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_cancel_action (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_cancel_action (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_record_video_action (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_record_video_action (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_video_action_l27 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_upload_video_action_l27 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_video_action (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_upload_video_action (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_record_audio_action (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_record_audio_action (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_audio_action_l27 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_upload_audio_action_l27 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_audio_action (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_upload_audio_action (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_photo_action (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_upload_photo_action (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_document_action_l27 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_upload_document_action_l27 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_document_action (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_upload_document_action (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_geo_location_action (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_geo_location_action (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_choose_contact_action (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_send_message_choose_contact_action (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_server_d_h_params (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x79cb045d: res = fetch_constructor_server_d_h_params_fail (T); break;
- case 0xd0e8075c: res = fetch_constructor_server_d_h_params_ok (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_server_d_h_params (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_server_d_h_params_fail (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_server_d_h_params_fail (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_server_d_h_params_ok (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_server_d_h_params_ok (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_server_d_h_inner_data (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xb5890dba: res = fetch_constructor_server_d_h_inner_data (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_server_d_h_inner_data (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_server_d_h_inner_data (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_set_client_d_h_params_answer (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x3bcbf734: res = fetch_constructor_dh_gen_ok (T); break;
- case 0x46dc1fb9: res = fetch_constructor_dh_gen_retry (T); break;
- case 0xa69dae02: res = fetch_constructor_dh_gen_fail (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_set_client_d_h_params_answer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_dh_gen_ok (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_dh_gen_ok (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_dh_gen_retry (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_dh_gen_retry (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_dh_gen_fail (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_dh_gen_fail (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_sticker_pack (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x12b299d4: res = fetch_constructor_sticker_pack (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_sticker_pack (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_sticker_pack (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_sticker_set (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xa7a43b17: res = fetch_constructor_sticker_set (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_sticker_set (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_sticker_set (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_string (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xb5286e24: res = fetch_constructor_string (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_string (struct paramed_type *T) {
- if (fetch_constructor_string (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_update (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x1f2b0afd: res = fetch_constructor_update_new_message (T); break;
- case 0x4e90bfd6: res = fetch_constructor_update_message_i_d (T); break;
- case 0xa20db0e5: res = fetch_constructor_update_delete_messages (T); break;
- case 0x5c486927: res = fetch_constructor_update_user_typing (T); break;
- case 0x9a65ea1f: res = fetch_constructor_update_chat_user_typing (T); break;
- case 0x07761198: res = fetch_constructor_update_chat_participants (T); break;
- case 0x1bfbd823: res = fetch_constructor_update_user_status (T); break;
- case 0xa7332b73: res = fetch_constructor_update_user_name (T); break;
- case 0x95313b0c: res = fetch_constructor_update_user_photo (T); break;
- case 0x2575bbb9: res = fetch_constructor_update_contact_registered (T); break;
- case 0x9d2e67c5: res = fetch_constructor_update_contact_link (T); break;
- case 0x8f06529a: res = fetch_constructor_update_new_authorization (T); break;
- case 0x5a68e3f7: res = fetch_constructor_update_new_geo_chat_message (T); break;
- case 0x12bcbd9a: res = fetch_constructor_update_new_encrypted_message (T); break;
- case 0x1710f156: res = fetch_constructor_update_encrypted_chat_typing (T); break;
- case 0xb4a2e88d: res = fetch_constructor_update_encryption (T); break;
- case 0x38fe25b7: res = fetch_constructor_update_encrypted_messages_read (T); break;
- case 0x3a0eeb22: res = fetch_constructor_update_chat_participant_add (T); break;
- case 0x6e5f8c22: res = fetch_constructor_update_chat_participant_delete (T); break;
- case 0x8e5e9873: res = fetch_constructor_update_dc_options (T); break;
- case 0x80ece81a: res = fetch_constructor_update_user_blocked (T); break;
- case 0xbec268ef: res = fetch_constructor_update_notify_settings (T); break;
- case 0x382dd3e4: res = fetch_constructor_update_service_notification (T); break;
- case 0xee3b272a: res = fetch_constructor_update_privacy (T); break;
- case 0x12b9417b: res = fetch_constructor_update_user_phone (T); break;
- case 0x9961fd5c: res = fetch_constructor_update_read_history_inbox (T); break;
- case 0x2f2f21bf: res = fetch_constructor_update_read_history_outbox (T); break;
- case 0x2cc36971: res = fetch_constructor_update_web_page (T); break;
- case 0x68c13933: res = fetch_constructor_update_read_messages_contents (T); break;
- case 0x03114739: res = fetch_constructor_update_msg_update (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_update (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_update_new_message (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_new_message (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_message_i_d (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_message_i_d (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_delete_messages (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_delete_messages (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_user_typing (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_user_typing (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_chat_user_typing (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_chat_user_typing (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_chat_participants (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_chat_participants (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_user_status (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_user_status (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_user_name (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_user_name (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_user_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_user_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_contact_registered (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_contact_registered (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_contact_link (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_contact_link (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_new_authorization (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_new_authorization (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_new_geo_chat_message (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_new_geo_chat_message (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_new_encrypted_message (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_new_encrypted_message (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_encrypted_chat_typing (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_encrypted_chat_typing (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_encryption (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_encryption (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_encrypted_messages_read (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_encrypted_messages_read (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_chat_participant_add (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_chat_participant_add (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_chat_participant_delete (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_chat_participant_delete (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_dc_options (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_dc_options (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_user_blocked (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_user_blocked (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_notify_settings (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_notify_settings (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_service_notification (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_service_notification (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_privacy (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_privacy (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_user_phone (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_user_phone (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_read_history_inbox (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_read_history_inbox (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_read_history_outbox (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_read_history_outbox (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_web_page (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_web_page (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_read_messages_contents (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_read_messages_contents (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_msg_update (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_msg_update (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_updates (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xe317af7e: res = fetch_constructor_updates_too_long (T); break;
- case 0xed5c2127: res = fetch_constructor_update_short_message (T); break;
- case 0x52238b3c: res = fetch_constructor_update_short_chat_message (T); break;
- case 0x78d4dec1: res = fetch_constructor_update_short (T); break;
- case 0x725b04c3: res = fetch_constructor_updates_combined (T); break;
- case 0x74ae4240: res = fetch_constructor_updates (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_updates (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_updates_too_long (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_updates_too_long (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_short_message (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_short_message (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_short_chat_message (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_short_chat_message (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_short (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_update_short (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_updates_combined (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_updates_combined (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_updates (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_updates (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_user (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x200250ba: res = fetch_constructor_user_empty (T); break;
- case 0x22e49072: res = fetch_constructor_user (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_user (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_user_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_user_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_user (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_user_full (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x5a89ac5b: res = fetch_constructor_user_full (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_user_full (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_user_full (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_user_profile_photo (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x4f11bae1: res = fetch_constructor_user_profile_photo_empty (T); break;
- case 0xd559d8c8: res = fetch_constructor_user_profile_photo (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_user_profile_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_user_profile_photo_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_user_profile_photo_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user_profile_photo (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_user_profile_photo (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_user_status (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x09d05049: res = fetch_constructor_user_status_empty (T); break;
- case 0xedb93949: res = fetch_constructor_user_status_online (T); break;
- case 0x008c703f: res = fetch_constructor_user_status_offline (T); break;
- case 0xe26f42f1: res = fetch_constructor_user_status_recently (T); break;
- case 0x07bf09fc: res = fetch_constructor_user_status_last_week (T); break;
- case 0x77ebc742: res = fetch_constructor_user_status_last_month (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_user_status (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_user_status_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_user_status_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user_status_online (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_user_status_online (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user_status_offline (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_user_status_offline (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user_status_recently (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_user_status_recently (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user_status_last_week (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_user_status_last_week (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user_status_last_month (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_user_status_last_month (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_vector (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x1cb5c415: res = fetch_constructor_vector (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_vector (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_vector (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_video (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xc10658a8: res = fetch_constructor_video_empty (T); break;
- case 0xee9f4a4d: res = fetch_constructor_video (T); break;
- case 0x388fa391: res = fetch_constructor_video_l27 (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_video (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_video_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_video_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_video (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_video (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_video_l27 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_video_l27 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_wall_paper (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xccb03657: res = fetch_constructor_wall_paper (T); break;
- case 0x63117f24: res = fetch_constructor_wall_paper_solid (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_wall_paper (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_wall_paper (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_wall_paper (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_wall_paper_solid (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_wall_paper_solid (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_web_page (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xeb1477e8: res = fetch_constructor_web_page_empty (T); break;
- case 0xc586da1c: res = fetch_constructor_web_page_pending (T); break;
- case 0xa31ea0b5: res = fetch_constructor_web_page (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_web_page (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_web_page_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_web_page_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_web_page_pending (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_web_page_pending (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_web_page (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_web_page (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_account_authorizations (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x1250abde: res = fetch_constructor_account_authorizations (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_account_authorizations (struct paramed_type *T) {
- if (fetch_constructor_account_authorizations (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_account_password (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x96dabc18: res = fetch_constructor_account_no_password (T); break;
- case 0x7c18141c: res = fetch_constructor_account_password (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_account_password (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_account_no_password (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_account_no_password (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_account_password (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_account_password (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_account_password_input_settings (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xbcfc532c: res = fetch_constructor_account_password_input_settings (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_account_password_input_settings (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_account_password_input_settings (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_account_password_settings (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xb7b72ab3: res = fetch_constructor_account_password_settings (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_account_password_settings (struct paramed_type *T) {
- if (fetch_constructor_account_password_settings (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_account_privacy_rules (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x554abb6f: res = fetch_constructor_account_privacy_rules (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_account_privacy_rules (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_account_privacy_rules (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_account_sent_change_phone_code (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xa4f58c4c: res = fetch_constructor_account_sent_change_phone_code (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_account_sent_change_phone_code (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_account_sent_change_phone_code (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_auth_authorization (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xff036af1: res = fetch_constructor_auth_authorization (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_auth_authorization (struct paramed_type *T) {
- if (fetch_constructor_auth_authorization (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_auth_checked_phone (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x811ea28e: res = fetch_constructor_auth_checked_phone (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_auth_checked_phone (struct paramed_type *T) {
- if (fetch_constructor_auth_checked_phone (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_auth_exported_authorization (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xdf969c2d: res = fetch_constructor_auth_exported_authorization (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_auth_exported_authorization (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_auth_exported_authorization (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_auth_password_recovery (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x137948a5: res = fetch_constructor_auth_password_recovery (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_auth_password_recovery (struct paramed_type *T) {
- if (fetch_constructor_auth_password_recovery (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_auth_sent_code (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xefed51d9: res = fetch_constructor_auth_sent_code (T); break;
- case 0xe325edcf: res = fetch_constructor_auth_sent_app_code (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_auth_sent_code (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_auth_sent_code (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_auth_sent_code (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_auth_sent_app_code (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_auth_sent_app_code (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_binlog_encr_key (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x0377168f: res = fetch_constructor_binlog_encr_key (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_binlog_encr_key (struct paramed_type *T) {
- if (fetch_constructor_binlog_encr_key (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_binlog_update (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x3b06de69: res = fetch_constructor_binlog_start (T); break;
- case 0xf96feb32: res = fetch_constructor_binlog_dc_option (T); break;
- case 0x7c0d22d8: res = fetch_constructor_binlog_dc_option_new (T); break;
- case 0x71e8c156: res = fetch_constructor_binlog_auth_key (T); break;
- case 0x9e83dbdc: res = fetch_constructor_binlog_default_dc (T); break;
- case 0x26451bb5: res = fetch_constructor_binlog_dc_signed (T); break;
- case 0x68a870e8: res = fetch_constructor_binlog_our_id (T); break;
- case 0xeaeb7826: res = fetch_constructor_binlog_set_dh_params (T); break;
- case 0x2ca8c939: res = fetch_constructor_binlog_set_pts (T); break;
- case 0xd95738ac: res = fetch_constructor_binlog_set_qts (T); break;
- case 0x1d0f4b52: res = fetch_constructor_binlog_set_date (T); break;
- case 0x6eeb2989: res = fetch_constructor_binlog_set_seq (T); break;
- case 0xee1b38e8: res = fetch_constructor_binlog_encr_chat_delete (T); break;
- case 0x84977251: res = fetch_constructor_binlog_encr_chat_new (T); break;
- case 0x9d49488d: res = fetch_constructor_binlog_encr_chat_exchange_new (T); break;
- case 0xac55d447: res = fetch_constructor_binlog_user_delete (T); break;
- case 0x127cf2f9: res = fetch_constructor_binlog_user_new (T); break;
- case 0x0a10aa92: res = fetch_constructor_binlog_chat_new (T); break;
- case 0x535475ea: res = fetch_constructor_binlog_chat_add_participant (T); break;
- case 0x7dd1a1a2: res = fetch_constructor_binlog_chat_del_participant (T); break;
- case 0x3c873416: res = fetch_constructor_binlog_set_msg_id (T); break;
- case 0x847e77b1: res = fetch_constructor_binlog_message_delete (T); break;
- case 0x427cfcdb: res = fetch_constructor_binlog_message_new (T); break;
- case 0x6cf7cabc: res = fetch_constructor_binlog_message_encr_new (T); break;
- case 0x6dd4d85f: res = fetch_constructor_binlog_msg_update (T); break;
- case 0x83327955: res = fetch_constructor_binlog_reset_authorization (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_binlog_update (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_binlog_start (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_start (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_dc_option (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_dc_option (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_dc_option_new (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_dc_option_new (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_auth_key (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_auth_key (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_default_dc (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_default_dc (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_dc_signed (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_dc_signed (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_our_id (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_our_id (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_set_dh_params (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_set_dh_params (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_set_pts (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_set_pts (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_set_qts (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_set_qts (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_set_date (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_set_date (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_set_seq (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_set_seq (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_encr_chat_delete (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_encr_chat_delete (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_encr_chat_new (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_encr_chat_new (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_encr_chat_exchange_new (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_encr_chat_exchange_new (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_user_delete (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_user_delete (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_user_new (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_user_new (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_chat_new (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_chat_new (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_chat_add_participant (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_chat_add_participant (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_chat_del_participant (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_chat_del_participant (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_set_msg_id (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_set_msg_id (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_message_delete (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_message_delete (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_message_new (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_message_new (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_message_encr_new (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_message_encr_new (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_msg_update (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_msg_update (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_reset_authorization (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_binlog_reset_authorization (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_contacts_blocked (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x1c138d15: res = fetch_constructor_contacts_blocked (T); break;
- case 0x900802a1: res = fetch_constructor_contacts_blocked_slice (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_contacts_blocked (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_contacts_blocked (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_contacts_blocked (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_contacts_blocked_slice (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_contacts_blocked_slice (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_contacts_contacts (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xb74ba9d2: res = fetch_constructor_contacts_contacts_not_modified (T); break;
- case 0x6f8b8cb2: res = fetch_constructor_contacts_contacts (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_contacts_contacts (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_contacts_contacts_not_modified (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_contacts_contacts_not_modified (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_contacts_contacts (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_contacts_contacts (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_contacts_found (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x0566000e: res = fetch_constructor_contacts_found (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_contacts_found (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_contacts_found (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_contacts_imported_contacts (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xad524315: res = fetch_constructor_contacts_imported_contacts (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_contacts_imported_contacts (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_contacts_imported_contacts (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_contacts_link (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x3ace484c: res = fetch_constructor_contacts_link (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_contacts_link (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_contacts_link (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_contacts_suggested (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x5649dcc5: res = fetch_constructor_contacts_suggested (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_contacts_suggested (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_contacts_suggested (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_geochats_located (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x48feb267: res = fetch_constructor_geochats_located (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_geochats_located (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_geochats_located (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_geochats_messages (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xd1526db1: res = fetch_constructor_geochats_messages (T); break;
- case 0xbc5863e8: res = fetch_constructor_geochats_messages_slice (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_geochats_messages (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_geochats_messages (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_geochats_messages (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_geochats_messages_slice (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_geochats_messages_slice (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_geochats_stated_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x17b1578b: res = fetch_constructor_geochats_stated_message (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_geochats_stated_message (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_geochats_stated_message (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_help_app_update (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x8987f311: res = fetch_constructor_help_app_update (T); break;
- case 0xc45a6536: res = fetch_constructor_help_no_app_update (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_help_app_update (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_help_app_update (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_help_app_update (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_help_no_app_update (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_help_no_app_update (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_help_invite_text (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x18cb9f78: res = fetch_constructor_help_invite_text (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_help_invite_text (struct paramed_type *T) {
- if (fetch_constructor_help_invite_text (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_help_support (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x17c6b5f6: res = fetch_constructor_help_support (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_help_support (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_help_support (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_messages_affected_history (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xb45c69d1: res = fetch_constructor_messages_affected_history (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_affected_history (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_messages_affected_history (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_messages_affected_messages (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x84d19185: res = fetch_constructor_messages_affected_messages (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_affected_messages (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_messages_affected_messages (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_messages_all_stickers (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xe86602c3: res = fetch_constructor_messages_all_stickers_not_modified (T); break;
- case 0x5ce352ec: res = fetch_constructor_messages_all_stickers (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_all_stickers (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_messages_all_stickers_not_modified (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_all_stickers_not_modified (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_all_stickers (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_all_stickers (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_messages_chat_full (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xe5d7d19c: res = fetch_constructor_messages_chat_full (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_chat_full (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_messages_chat_full (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_messages_chats (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x64ff9fd5: res = fetch_constructor_messages_chats (T); break;
- default: return -1;
- }
- return res;
-}
-int fetch_type_bare_messages_chats (struct paramed_type *T) {
- if (fetch_constructor_messages_chats (T) >= 0) { return 0; }
- return -1;
-}
-int fetch_type_messages_dh_config (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xc0e24635: res = fetch_constructor_messages_dh_config_not_modified (T); break;
- case 0x2c221edd: res = fetch_constructor_messages_dh_config (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_dh_config (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_messages_dh_config_not_modified (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_dh_config_not_modified (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_dh_config (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_dh_config (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_messages_dialogs (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x15ba6c40: res = fetch_constructor_messages_dialogs (T); break;
- case 0x71e094f3: res = fetch_constructor_messages_dialogs_slice (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_dialogs (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_messages_dialogs (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_dialogs (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_dialogs_slice (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_dialogs_slice (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_messages_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x3f4e0648: res = fetch_constructor_messages_message_empty (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_message (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_messages_message_empty (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_messages_messages (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x8c718e87: res = fetch_constructor_messages_messages (T); break;
- case 0x0b446ae3: res = fetch_constructor_messages_messages_slice (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_messages (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_messages_messages (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_messages (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_messages_slice (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_messages_slice (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_messages_sent_encrypted_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x560f8935: res = fetch_constructor_messages_sent_encrypted_message (T); break;
- case 0x9493ff32: res = fetch_constructor_messages_sent_encrypted_file (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_sent_encrypted_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_messages_sent_encrypted_message (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_sent_encrypted_message (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_sent_encrypted_file (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_sent_encrypted_file (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_messages_sent_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x4c3d47f3: res = fetch_constructor_messages_sent_message (T); break;
- case 0x35a1a663: res = fetch_constructor_messages_sent_message_link (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_sent_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_messages_sent_message (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_sent_message (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_sent_message_link (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_sent_message_link (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_messages_sticker_set (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xb60a24a6: res = fetch_constructor_messages_sticker_set (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_sticker_set (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_messages_sticker_set (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_messages_stickers (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xf1749a22: res = fetch_constructor_messages_stickers_not_modified (T); break;
- case 0x8a8ecd32: res = fetch_constructor_messages_stickers (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_messages_stickers (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_messages_stickers_not_modified (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_stickers_not_modified (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_stickers (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_messages_stickers (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_photos_photo (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x20212ca8: res = fetch_constructor_photos_photo (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_photos_photo (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_photos_photo (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_photos_photos (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x8dca6aa5: res = fetch_constructor_photos_photos (T); break;
- case 0x15051f54: res = fetch_constructor_photos_photos_slice (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_photos_photos (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_photos_photos (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_photos_photos (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_photos_photos_slice (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_photos_photos_slice (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_storage_file_type (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xaa963b05: res = fetch_constructor_storage_file_unknown (T); break;
- case 0x007efe0e: res = fetch_constructor_storage_file_jpeg (T); break;
- case 0xcae1aadf: res = fetch_constructor_storage_file_gif (T); break;
- case 0x0a4f63c0: res = fetch_constructor_storage_file_png (T); break;
- case 0xae1e508d: res = fetch_constructor_storage_file_pdf (T); break;
- case 0x528a0677: res = fetch_constructor_storage_file_mp3 (T); break;
- case 0x4b09ebbc: res = fetch_constructor_storage_file_mov (T); break;
- case 0x40bc6f52: res = fetch_constructor_storage_file_partial (T); break;
- case 0xb3cea0e4: res = fetch_constructor_storage_file_mp4 (T); break;
- case 0x1081464c: res = fetch_constructor_storage_file_webp (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_storage_file_type (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_storage_file_unknown (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_storage_file_unknown (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_jpeg (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_storage_file_jpeg (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_gif (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_storage_file_gif (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_png (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_storage_file_png (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_pdf (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_storage_file_pdf (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_mp3 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_storage_file_mp3 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_mov (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_storage_file_mov (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_partial (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_storage_file_partial (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_mp4 (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_storage_file_mp4 (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_webp (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_storage_file_webp (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_updates_difference (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x5d75a138: res = fetch_constructor_updates_difference_empty (T); break;
- case 0x00f49ca0: res = fetch_constructor_updates_difference (T); break;
- case 0xa8fb1981: res = fetch_constructor_updates_difference_slice (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_updates_difference (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- if (skip_constructor_updates_difference_empty (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_updates_difference_empty (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_updates_difference (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_updates_difference (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_updates_difference_slice (T) >= 0) { in_ptr = save_in_ptr; eprintf (" ("); assert (!fetch_constructor_updates_difference_slice (T)); if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int fetch_type_updates_state (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0xa56c2a3e: res = fetch_constructor_updates_state (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_updates_state (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_updates_state (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_upload_file (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- int magic = fetch_int ();
- int res = -1;
- switch (magic) {
- case 0x096a18d5: res = fetch_constructor_upload_file (T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int fetch_type_bare_upload_file (struct paramed_type *T) {
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- if (fetch_constructor_upload_file (T) >= 0) { if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); } eprintf (" )");return 0; }
- return -1;
-}
-int fetch_type_any (struct paramed_type *T) {
- switch (T->type->name) {
- case 0xb8d0afdf: return fetch_type_account_days_t_t_l (T);
- case 0x472f5020: return fetch_type_bare_account_days_t_t_l (T);
- case 0x9fc5ec4e: return fetch_type_audio (T);
- case 0x603a13b1: return fetch_type_bare_audio (T);
- case 0x7bf2e6f6: return fetch_type_authorization (T);
- case 0x840d1909: return fetch_type_bare_authorization (T);
- case 0x250be282: return fetch_type_bool (T);
- case 0xdaf41d7d: return fetch_type_bare_bool (T);
- case 0x75e7ea6c: return fetch_type_bot_command (T);
- case 0x8a181593: return fetch_type_bare_bot_command (T);
- case 0xb2e16f93: return fetch_type_bot_info (T);
- case 0x4d1e906c: return fetch_type_bare_bot_info (T);
- case 0x0ee1379f: return fetch_type_bytes (T);
- case 0xf11ec860: return fetch_type_bare_bytes (T);
- case 0x7bd865dc: return fetch_type_chat (T);
- case 0x84279a23: return fetch_type_bare_chat (T);
- case 0x2e02a614: return fetch_type_chat_full (T);
- case 0xd1fd59eb: return fetch_type_bare_chat_full (T);
- case 0x94f910b1: return fetch_type_chat_invite (T);
- case 0x6b06ef4e: return fetch_type_bare_chat_invite (T);
- case 0x3631cf4c: return fetch_type_chat_located (T);
- case 0xc9ce30b3: return fetch_type_bare_chat_located (T);
- case 0xc8d7493e: return fetch_type_chat_participant (T);
- case 0x3728b6c1: return fetch_type_bare_chat_participant (T);
- case 0x77930f9f: return fetch_type_chat_participants (T);
- case 0x886cf060: return fetch_type_bare_chat_participants (T);
- case 0x56922676: return fetch_type_chat_photo (T);
- case 0xa96dd989: return fetch_type_bare_chat_photo (T);
- case 0x6643b654: return fetch_type_client_d_h_inner_data (T);
- case 0x99bc49ab: return fetch_type_bare_client_d_h_inner_data (T);
- case 0x4e32b894: return fetch_type_config (T);
- case 0xb1cd476b: return fetch_type_bare_config (T);
- case 0xf911c994: return fetch_type_contact (T);
- case 0x06ee366b: return fetch_type_bare_contact (T);
- case 0x561bc879: return fetch_type_contact_blocked (T);
- case 0xa9e43786: return fetch_type_bare_contact_blocked (T);
- case 0xea879f95: return fetch_type_contact_found (T);
- case 0x1578606a: return fetch_type_bare_contact_found (T);
- case 0x522fbc63: return fetch_type_contact_link (T);
- case 0xadd0439c: return fetch_type_bare_contact_link (T);
- case 0xd3680c61: return fetch_type_contact_status (T);
- case 0x2c97f39e: return fetch_type_bare_contact_status (T);
- case 0x3de191a1: return fetch_type_contact_suggested (T);
- case 0xc21e6e5e: return fetch_type_bare_contact_suggested (T);
- case 0x2b1a62f0: return fetch_type_dc_option (T);
- case 0xd4e59d0f: return fetch_type_bare_dc_option (T);
- case 0x535b7918: return fetch_type_decrypted_message (T);
- case 0xaca486e7: return fetch_type_bare_decrypted_message (T);
- case 0x4e0eefde: return fetch_type_decrypted_message_action (T);
- case 0xb1f11021: return fetch_type_bare_decrypted_message_action (T);
- case 0x1be31789: return fetch_type_decrypted_message_layer (T);
- case 0xe41ce876: return fetch_type_bare_decrypted_message_layer (T);
- case 0x34e0d674: return fetch_type_decrypted_message_media (T);
- case 0xcb1f298b: return fetch_type_bare_decrypted_message_media (T);
- case 0xc1dd804a: return fetch_type_dialog (T);
- case 0x3e227fb5: return fetch_type_bare_dialog (T);
- case 0xae636f24: return fetch_type_disabled_feature (T);
- case 0x519c90db: return fetch_type_bare_disabled_feature (T);
- case 0x51a73418: return fetch_type_document (T);
- case 0xae58cbe7: return fetch_type_bare_document (T);
- case 0x97c637a3: return fetch_type_document_attribute (T);
- case 0x6839c85c: return fetch_type_bare_document_attribute (T);
- case 0x2210c154: return fetch_type_double (T);
- case 0xddef3eab: return fetch_type_bare_double (T);
- case 0xb1718213: return fetch_type_encrypted_chat (T);
- case 0x4e8e7dec: return fetch_type_bare_encrypted_chat (T);
- case 0x886fd032: return fetch_type_encrypted_file (T);
- case 0x77902fcd: return fetch_type_bare_encrypted_file (T);
- case 0xce6b8a1e: return fetch_type_encrypted_message (T);
- case 0x319475e1: return fetch_type_bare_encrypted_message (T);
- case 0xc4b9f9bb: return fetch_type_error (T);
- case 0x3b460644: return fetch_type_bare_error (T);
- case 0x95f132d5: return fetch_type_exported_chat_invite (T);
- case 0x6a0ecd2a: return fetch_type_bare_exported_chat_invite (T);
- case 0x2f8ffb30: return fetch_type_file_location (T);
- case 0xd07004cf: return fetch_type_bare_file_location (T);
- case 0xf67b4034: return fetch_type_geo_chat_message (T);
- case 0x0984bfcb: return fetch_type_bare_geo_chat_message (T);
- case 0x315e0a53: return fetch_type_geo_point (T);
- case 0xcea1f5ac: return fetch_type_bare_geo_point (T);
- case 0xd0028438: return fetch_type_imported_contact (T);
- case 0x2ffd7bc7: return fetch_type_bare_imported_contact (T);
- case 0x770656a8: return fetch_type_input_app_event (T);
- case 0x88f9a957: return fetch_type_bare_input_app_event (T);
- case 0xae8e9c7b: return fetch_type_input_audio (T);
- case 0x51716384: return fetch_type_bare_input_audio (T);
- case 0x3a60776d: return fetch_type_input_chat_photo (T);
- case 0xc59f8892: return fetch_type_bare_input_chat_photo (T);
- case 0xf392b7f4: return fetch_type_input_contact (T);
- case 0x0c6d480b: return fetch_type_bare_input_contact (T);
- case 0x6a8963fc: return fetch_type_input_document (T);
- case 0x95769c03: return fetch_type_bare_input_document (T);
- case 0xf141b5e1: return fetch_type_input_encrypted_chat (T);
- case 0x0ebe4a1e: return fetch_type_bare_input_encrypted_chat (T);
- case 0x0b5c064f: return fetch_type_input_encrypted_file (T);
- case 0xf4a3f9b0: return fetch_type_bare_input_encrypted_file (T);
- case 0x0f60f9ca: return fetch_type_input_file (T);
- case 0xf09f0635: return fetch_type_bare_input_file (T);
- case 0xe6daa38b: return fetch_type_input_file_location (T);
- case 0x19255c74: return fetch_type_bare_input_file_location (T);
- case 0x74d456fa: return fetch_type_input_geo_chat (T);
- case 0x8b2ba905: return fetch_type_bare_input_geo_chat (T);
- case 0x17768f1f: return fetch_type_input_geo_point (T);
- case 0xe88970e0: return fetch_type_bare_input_geo_point (T);
- case 0xb32c91dd: return fetch_type_input_media (T);
- case 0x4cd36e22: return fetch_type_bare_input_media (T);
- case 0x02b6911b: return fetch_type_input_notify_peer (T);
- case 0xfd496ee4: return fetch_type_bare_input_notify_peer (T);
- case 0x9e67268d: return fetch_type_input_peer (T);
- case 0x6198d972: return fetch_type_bare_input_peer (T);
- case 0x185a48ac: return fetch_type_input_peer_notify_events (T);
- case 0xe7a5b753: return fetch_type_bare_input_peer_notify_events (T);
- case 0x46a2ce98: return fetch_type_input_peer_notify_settings (T);
- case 0xb95d3167: return fetch_type_bare_input_peer_notify_settings (T);
- case 0xe74279c9: return fetch_type_input_photo (T);
- case 0x18bd8636: return fetch_type_bare_input_photo (T);
- case 0x7477e321: return fetch_type_input_photo_crop (T);
- case 0x8b881cde: return fetch_type_bare_input_photo_crop (T);
- case 0x4f96cb18: return fetch_type_input_privacy_key (T);
- case 0xb06934e7: return fetch_type_bare_input_privacy_key (T);
- case 0x4b815163: return fetch_type_input_privacy_rule (T);
- case 0xb47eae9c: return fetch_type_bare_input_privacy_rule (T);
- case 0xe44d415c: return fetch_type_input_sticker_set (T);
- case 0x1bb2bea3: return fetch_type_bare_input_sticker_set (T);
- case 0xadfe0c6a: return fetch_type_input_user (T);
- case 0x5201f395: return fetch_type_bare_input_user (T);
- case 0xbb5f7a27: return fetch_type_input_video (T);
- case 0x44a085d8: return fetch_type_bare_input_video (T);
- case 0xa8509bda: return fetch_type_int (T);
- case 0x57af6425: return fetch_type_bare_int (T);
- case 0x7d36c439: return fetch_type_int128 (T);
- case 0x82c93bc6: return fetch_type_bare_int128 (T);
- case 0xf2c798b3: return fetch_type_int256 (T);
- case 0x0d38674c: return fetch_type_bare_int256 (T);
- case 0xa2fa4880: return fetch_type_keyboard_button (T);
- case 0x5d05b77f: return fetch_type_bare_keyboard_button (T);
- case 0x77608b83: return fetch_type_keyboard_button_row (T);
- case 0x889f747c: return fetch_type_bare_keyboard_button_row (T);
- case 0x22076cba: return fetch_type_long (T);
- case 0xddf89345: return fetch_type_bare_long (T);
- case 0x5d652a7f: return fetch_type_message (T);
- case 0xa29ad580: return fetch_type_bare_message (T);
- case 0x383415fa: return fetch_type_message_action (T);
- case 0xc7cbea05: return fetch_type_bare_message_action (T);
- case 0x95f2471a: return fetch_type_message_media (T);
- case 0x6a0db8e5: return fetch_type_bare_message_media (T);
- case 0x80895ae0: return fetch_type_messages_filter (T);
- case 0x7f76a51f: return fetch_type_bare_messages_filter (T);
- case 0x8e1a1775: return fetch_type_nearest_dc (T);
- case 0x71e5e88a: return fetch_type_bare_nearest_dc (T);
- case 0x9fcb8237: return fetch_type_notify_peer (T);
- case 0x60347dc8: return fetch_type_bare_notify_peer (T);
- case 0x56730bcc: return fetch_type_null (T);
- case 0xa98cf433: return fetch_type_bare_null (T);
- case 0xbfa3de38: return fetch_type_p_q_inner_data (T);
- case 0x405c21c7: return fetch_type_bare_p_q_inner_data (T);
- case 0x276159d6: return fetch_type_peer (T);
- case 0xd89ea629: return fetch_type_bare_peer (T);
- case 0xc0c8d13b: return fetch_type_peer_notify_events (T);
- case 0x3f372ec4: return fetch_type_bare_peer_notify_events (T);
- case 0xfdf894fc: return fetch_type_peer_notify_settings (T);
- case 0x02076b03: return fetch_type_bare_peer_notify_settings (T);
- case 0xc207550a: return fetch_type_photo (T);
- case 0x3df8aaf5: return fetch_type_bare_photo (T);
- case 0x900f60dd: return fetch_type_photo_size (T);
- case 0x6ff09f22: return fetch_type_bare_photo_size (T);
- case 0xbc2eab30: return fetch_type_privacy_key (T);
- case 0x43d154cf: return fetch_type_bare_privacy_key (T);
- case 0xa8638aec: return fetch_type_privacy_rule (T);
- case 0x579c7513: return fetch_type_bare_privacy_rule (T);
- case 0xa384b779: return fetch_type_received_notify_message (T);
- case 0x5c7b4886: return fetch_type_bare_received_notify_message (T);
- case 0x612ca4a9: return fetch_type_reply_markup (T);
- case 0x9ed35b56: return fetch_type_bare_reply_markup (T);
- case 0x05162463: return fetch_type_res_p_q (T);
- case 0xfae9db9c: return fetch_type_bare_res_p_q (T);
- case 0x70541c7e: return fetch_type_send_message_action (T);
- case 0x8fabe381: return fetch_type_bare_send_message_action (T);
- case 0xa9230301: return fetch_type_server_d_h_params (T);
- case 0x56dcfcfe: return fetch_type_bare_server_d_h_params (T);
- case 0xb5890dba: return fetch_type_server_d_h_inner_data (T);
- case 0x4a76f245: return fetch_type_bare_server_d_h_inner_data (T);
- case 0xdb8a468f: return fetch_type_set_client_d_h_params_answer (T);
- case 0x2475b970: return fetch_type_bare_set_client_d_h_params_answer (T);
- case 0x12b299d4: return fetch_type_sticker_pack (T);
- case 0xed4d662b: return fetch_type_bare_sticker_pack (T);
- case 0xa7a43b17: return fetch_type_sticker_set (T);
- case 0x585bc4e8: return fetch_type_bare_sticker_set (T);
- case 0xb5286e24: return fetch_type_string (T);
- case 0x4ad791db: return fetch_type_bare_string (T);
- case 0x2e02b27e: return fetch_type_update (T);
- case 0xd1fd4d81: return fetch_type_bare_update (T);
- case 0x22499d27: return fetch_type_updates (T);
- case 0xddb662d8: return fetch_type_bare_updates (T);
- case 0x02e6c0c8: return fetch_type_user (T);
- case 0xfd193f37: return fetch_type_bare_user (T);
- case 0x5a89ac5b: return fetch_type_user_full (T);
- case 0xa57653a4: return fetch_type_bare_user_full (T);
- case 0x9a486229: return fetch_type_user_profile_photo (T);
- case 0x65b79dd6: return fetch_type_bare_user_profile_photo (T);
- case 0x76de9570: return fetch_type_user_status (T);
- case 0x89216a8f: return fetch_type_bare_user_status (T);
- case 0x1cb5c415: return fetch_type_vector (T);
- case 0xe34a3bea: return fetch_type_bare_vector (T);
- case 0x1716b174: return fetch_type_video (T);
- case 0xe8e94e8b: return fetch_type_bare_video (T);
- case 0xafa14973: return fetch_type_wall_paper (T);
- case 0x505eb68c: return fetch_type_bare_wall_paper (T);
- case 0x8d8c0d41: return fetch_type_web_page (T);
- case 0x7273f2be: return fetch_type_bare_web_page (T);
- case 0x1250abde: return fetch_type_account_authorizations (T);
- case 0xedaf5421: return fetch_type_bare_account_authorizations (T);
- case 0xeac2a804: return fetch_type_account_password (T);
- case 0x153d57fb: return fetch_type_bare_account_password (T);
- case 0xbcfc532c: return fetch_type_account_password_input_settings (T);
- case 0x4303acd3: return fetch_type_bare_account_password_input_settings (T);
- case 0xb7b72ab3: return fetch_type_account_password_settings (T);
- case 0x4848d54c: return fetch_type_bare_account_password_settings (T);
- case 0x554abb6f: return fetch_type_account_privacy_rules (T);
- case 0xaab54490: return fetch_type_bare_account_privacy_rules (T);
- case 0xa4f58c4c: return fetch_type_account_sent_change_phone_code (T);
- case 0x5b0a73b3: return fetch_type_bare_account_sent_change_phone_code (T);
- case 0xff036af1: return fetch_type_auth_authorization (T);
- case 0x00fc950e: return fetch_type_bare_auth_authorization (T);
- case 0x811ea28e: return fetch_type_auth_checked_phone (T);
- case 0x7ee15d71: return fetch_type_bare_auth_checked_phone (T);
- case 0xdf969c2d: return fetch_type_auth_exported_authorization (T);
- case 0x206963d2: return fetch_type_bare_auth_exported_authorization (T);
- case 0x137948a5: return fetch_type_auth_password_recovery (T);
- case 0xec86b75a: return fetch_type_bare_auth_password_recovery (T);
- case 0x0cc8bc16: return fetch_type_auth_sent_code (T);
- case 0xf33743e9: return fetch_type_bare_auth_sent_code (T);
- case 0x0377168f: return fetch_type_binlog_encr_key (T);
- case 0xfc88e970: return fetch_type_bare_binlog_encr_key (T);
- case 0x66ff03a6: return fetch_type_binlog_update (T);
- case 0x9900fc59: return fetch_type_bare_binlog_update (T);
- case 0x8c1b8fb4: return fetch_type_contacts_blocked (T);
- case 0x73e4704b: return fetch_type_bare_contacts_blocked (T);
- case 0xd8c02560: return fetch_type_contacts_contacts (T);
- case 0x273fda9f: return fetch_type_bare_contacts_contacts (T);
- case 0x0566000e: return fetch_type_contacts_found (T);
- case 0xfa99fff1: return fetch_type_bare_contacts_found (T);
- case 0xad524315: return fetch_type_contacts_imported_contacts (T);
- case 0x52adbcea: return fetch_type_bare_contacts_imported_contacts (T);
- case 0x3ace484c: return fetch_type_contacts_link (T);
- case 0xc531b7b3: return fetch_type_bare_contacts_link (T);
- case 0x5649dcc5: return fetch_type_contacts_suggested (T);
- case 0xa9b6233a: return fetch_type_bare_contacts_suggested (T);
- case 0x48feb267: return fetch_type_geochats_located (T);
- case 0xb7014d98: return fetch_type_bare_geochats_located (T);
- case 0x6d0a0e59: return fetch_type_geochats_messages (T);
- case 0x92f5f1a6: return fetch_type_bare_geochats_messages (T);
- case 0x17b1578b: return fetch_type_geochats_stated_message (T);
- case 0xe84ea874: return fetch_type_bare_geochats_stated_message (T);
- case 0x4ddd9627: return fetch_type_help_app_update (T);
- case 0xb22269d8: return fetch_type_bare_help_app_update (T);
- case 0x18cb9f78: return fetch_type_help_invite_text (T);
- case 0xe7346087: return fetch_type_bare_help_invite_text (T);
- case 0x17c6b5f6: return fetch_type_help_support (T);
- case 0xe8394a09: return fetch_type_bare_help_support (T);
- case 0xb45c69d1: return fetch_type_messages_affected_history (T);
- case 0x4ba3962e: return fetch_type_bare_messages_affected_history (T);
- case 0x84d19185: return fetch_type_messages_affected_messages (T);
- case 0x7b2e6e7a: return fetch_type_bare_messages_affected_messages (T);
- case 0xb485502f: return fetch_type_messages_all_stickers (T);
- case 0x4b7aafd0: return fetch_type_bare_messages_all_stickers (T);
- case 0xe5d7d19c: return fetch_type_messages_chat_full (T);
- case 0x1a282e63: return fetch_type_bare_messages_chat_full (T);
- case 0x64ff9fd5: return fetch_type_messages_chats (T);
- case 0x9b00602a: return fetch_type_bare_messages_chats (T);
- case 0xecc058e8: return fetch_type_messages_dh_config (T);
- case 0x133fa717: return fetch_type_bare_messages_dh_config (T);
- case 0x645af8b3: return fetch_type_messages_dialogs (T);
- case 0x9ba5074c: return fetch_type_bare_messages_dialogs (T);
- case 0x3f4e0648: return fetch_type_messages_message (T);
- case 0xc0b1f9b7: return fetch_type_bare_messages_message (T);
- case 0x8735e464: return fetch_type_messages_messages (T);
- case 0x78ca1b9b: return fetch_type_bare_messages_messages (T);
- case 0xc29c7607: return fetch_type_messages_sent_encrypted_message (T);
- case 0x3d6389f8: return fetch_type_bare_messages_sent_encrypted_message (T);
- case 0x799ce190: return fetch_type_messages_sent_message (T);
- case 0x86631e6f: return fetch_type_bare_messages_sent_message (T);
- case 0xb60a24a6: return fetch_type_messages_sticker_set (T);
- case 0x49f5db59: return fetch_type_bare_messages_sticker_set (T);
- case 0x7bfa5710: return fetch_type_messages_stickers (T);
- case 0x8405a8ef: return fetch_type_bare_messages_stickers (T);
- case 0x20212ca8: return fetch_type_photos_photo (T);
- case 0xdfded357: return fetch_type_bare_photos_photo (T);
- case 0x98cf75f1: return fetch_type_photos_photos (T);
- case 0x67308a0e: return fetch_type_bare_photos_photos (T);
- case 0x3e2838a8: return fetch_type_storage_file_type (T);
- case 0xc1d7c757: return fetch_type_bare_storage_file_type (T);
- case 0xf57a2419: return fetch_type_updates_difference (T);
- case 0x0a85dbe6: return fetch_type_bare_updates_difference (T);
- case 0xa56c2a3e: return fetch_type_updates_state (T);
- case 0x5a93d5c1: return fetch_type_bare_updates_state (T);
- case 0x096a18d5: return fetch_type_upload_file (T);
- case 0xf695e72a: return fetch_type_bare_upload_file (T);
- default: return -1; }
-}
diff --git a/protocols/Telegram/src/tgl/auto/auto-fetch.h b/protocols/Telegram/src/tgl/auto/auto-fetch.h
deleted file mode 100644
index 803f7b6902..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-fetch.h
+++ /dev/null
@@ -1,717 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#else
-#include "auto.h"
-#endif
-#include <assert.h>
-#include <stdio.h>
-struct tgl_state;
-char *tglf_extf_fetch (struct tgl_state *TLS, struct paramed_type *T);
-int fetch_constructor_account_days_t_t_l (struct paramed_type *T);
-int fetch_constructor_audio_empty (struct paramed_type *T);
-int fetch_constructor_audio (struct paramed_type *T);
-int fetch_constructor_authorization (struct paramed_type *T);
-int fetch_constructor_bool_false (struct paramed_type *T);
-int fetch_constructor_bool_true (struct paramed_type *T);
-int fetch_constructor_bot_command (struct paramed_type *T);
-int fetch_constructor_bot_command_old (struct paramed_type *T);
-int fetch_constructor_bot_info_empty (struct paramed_type *T);
-int fetch_constructor_bot_info (struct paramed_type *T);
-int fetch_constructor_bytes (struct paramed_type *T);
-int fetch_constructor_chat_empty (struct paramed_type *T);
-int fetch_constructor_chat (struct paramed_type *T);
-int fetch_constructor_chat_forbidden (struct paramed_type *T);
-int fetch_constructor_geo_chat (struct paramed_type *T);
-int fetch_constructor_chat_full (struct paramed_type *T);
-int fetch_constructor_chat_invite_already (struct paramed_type *T);
-int fetch_constructor_chat_invite (struct paramed_type *T);
-int fetch_constructor_chat_located (struct paramed_type *T);
-int fetch_constructor_chat_participant (struct paramed_type *T);
-int fetch_constructor_chat_participants_forbidden (struct paramed_type *T);
-int fetch_constructor_chat_participants (struct paramed_type *T);
-int fetch_constructor_chat_photo_empty (struct paramed_type *T);
-int fetch_constructor_chat_photo (struct paramed_type *T);
-int fetch_constructor_client_d_h_inner_data (struct paramed_type *T);
-int fetch_constructor_config (struct paramed_type *T);
-int fetch_constructor_contact (struct paramed_type *T);
-int fetch_constructor_contact_blocked (struct paramed_type *T);
-int fetch_constructor_contact_found (struct paramed_type *T);
-int fetch_constructor_contact_link_unknown (struct paramed_type *T);
-int fetch_constructor_contact_link_none (struct paramed_type *T);
-int fetch_constructor_contact_link_has_phone (struct paramed_type *T);
-int fetch_constructor_contact_link_contact (struct paramed_type *T);
-int fetch_constructor_contact_status (struct paramed_type *T);
-int fetch_constructor_contact_suggested (struct paramed_type *T);
-int fetch_constructor_dc_option_l28 (struct paramed_type *T);
-int fetch_constructor_dc_option (struct paramed_type *T);
-int fetch_constructor_decrypted_message (struct paramed_type *T);
-int fetch_constructor_decrypted_message_service (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_set_message_t_t_l (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_read_messages (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_delete_messages (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_screenshot_messages (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_flush_history (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_resend (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_notify_layer (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_typing (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_request_key (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_accept_key (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_abort_key (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_commit_key (struct paramed_type *T);
-int fetch_constructor_decrypted_message_action_noop (struct paramed_type *T);
-int fetch_constructor_decrypted_message_layer (struct paramed_type *T);
-int fetch_constructor_decrypted_message_media_empty (struct paramed_type *T);
-int fetch_constructor_decrypted_message_media_photo (struct paramed_type *T);
-int fetch_constructor_decrypted_message_media_geo_point (struct paramed_type *T);
-int fetch_constructor_decrypted_message_media_contact (struct paramed_type *T);
-int fetch_constructor_decrypted_message_media_document (struct paramed_type *T);
-int fetch_constructor_decrypted_message_media_video (struct paramed_type *T);
-int fetch_constructor_decrypted_message_media_audio (struct paramed_type *T);
-int fetch_constructor_decrypted_message_media_external_document (struct paramed_type *T);
-int fetch_constructor_decrypted_message_media_video_l12 (struct paramed_type *T);
-int fetch_constructor_decrypted_message_media_audio_l12 (struct paramed_type *T);
-int fetch_constructor_dialog (struct paramed_type *T);
-int fetch_constructor_disabled_feature (struct paramed_type *T);
-int fetch_constructor_document_empty (struct paramed_type *T);
-int fetch_constructor_document (struct paramed_type *T);
-int fetch_constructor_document_l19 (struct paramed_type *T);
-int fetch_constructor_document_attribute_image_size (struct paramed_type *T);
-int fetch_constructor_document_attribute_animated (struct paramed_type *T);
-int fetch_constructor_document_attribute_sticker_l28 (struct paramed_type *T);
-int fetch_constructor_document_attribute_sticker (struct paramed_type *T);
-int fetch_constructor_document_attribute_video (struct paramed_type *T);
-int fetch_constructor_document_attribute_audio (struct paramed_type *T);
-int fetch_constructor_document_attribute_filename (struct paramed_type *T);
-int fetch_constructor_double (struct paramed_type *T);
-int fetch_constructor_encrypted_chat_empty (struct paramed_type *T);
-int fetch_constructor_encrypted_chat_waiting (struct paramed_type *T);
-int fetch_constructor_encrypted_chat_requested (struct paramed_type *T);
-int fetch_constructor_encrypted_chat (struct paramed_type *T);
-int fetch_constructor_encrypted_chat_discarded (struct paramed_type *T);
-int fetch_constructor_encrypted_file_empty (struct paramed_type *T);
-int fetch_constructor_encrypted_file (struct paramed_type *T);
-int fetch_constructor_encrypted_message (struct paramed_type *T);
-int fetch_constructor_encrypted_message_service (struct paramed_type *T);
-int fetch_constructor_error (struct paramed_type *T);
-int fetch_constructor_chat_invite_empty (struct paramed_type *T);
-int fetch_constructor_chat_invite_exported (struct paramed_type *T);
-int fetch_constructor_file_location_unavailable (struct paramed_type *T);
-int fetch_constructor_file_location (struct paramed_type *T);
-int fetch_constructor_geo_chat_message_empty (struct paramed_type *T);
-int fetch_constructor_geo_chat_message (struct paramed_type *T);
-int fetch_constructor_geo_chat_message_service (struct paramed_type *T);
-int fetch_constructor_geo_point_empty (struct paramed_type *T);
-int fetch_constructor_geo_point (struct paramed_type *T);
-int fetch_constructor_imported_contact (struct paramed_type *T);
-int fetch_constructor_input_app_event (struct paramed_type *T);
-int fetch_constructor_input_audio_empty (struct paramed_type *T);
-int fetch_constructor_input_audio (struct paramed_type *T);
-int fetch_constructor_input_chat_photo_empty (struct paramed_type *T);
-int fetch_constructor_input_chat_uploaded_photo (struct paramed_type *T);
-int fetch_constructor_input_chat_photo (struct paramed_type *T);
-int fetch_constructor_input_phone_contact (struct paramed_type *T);
-int fetch_constructor_input_document_empty (struct paramed_type *T);
-int fetch_constructor_input_document (struct paramed_type *T);
-int fetch_constructor_input_encrypted_chat (struct paramed_type *T);
-int fetch_constructor_input_encrypted_file_empty (struct paramed_type *T);
-int fetch_constructor_input_encrypted_file_uploaded (struct paramed_type *T);
-int fetch_constructor_input_encrypted_file (struct paramed_type *T);
-int fetch_constructor_input_encrypted_file_big_uploaded (struct paramed_type *T);
-int fetch_constructor_input_file (struct paramed_type *T);
-int fetch_constructor_input_file_big (struct paramed_type *T);
-int fetch_constructor_input_file_location (struct paramed_type *T);
-int fetch_constructor_input_video_file_location (struct paramed_type *T);
-int fetch_constructor_input_encrypted_file_location (struct paramed_type *T);
-int fetch_constructor_input_audio_file_location (struct paramed_type *T);
-int fetch_constructor_input_document_file_location (struct paramed_type *T);
-int fetch_constructor_input_geo_chat (struct paramed_type *T);
-int fetch_constructor_input_geo_point_empty (struct paramed_type *T);
-int fetch_constructor_input_geo_point (struct paramed_type *T);
-int fetch_constructor_input_media_empty (struct paramed_type *T);
-int fetch_constructor_input_media_uploaded_photo (struct paramed_type *T);
-int fetch_constructor_input_media_photo (struct paramed_type *T);
-int fetch_constructor_input_media_geo_point (struct paramed_type *T);
-int fetch_constructor_input_media_contact (struct paramed_type *T);
-int fetch_constructor_input_media_uploaded_video (struct paramed_type *T);
-int fetch_constructor_input_media_uploaded_thumb_video (struct paramed_type *T);
-int fetch_constructor_input_media_video (struct paramed_type *T);
-int fetch_constructor_input_media_uploaded_audio (struct paramed_type *T);
-int fetch_constructor_input_media_audio (struct paramed_type *T);
-int fetch_constructor_input_media_uploaded_document (struct paramed_type *T);
-int fetch_constructor_input_media_uploaded_thumb_document (struct paramed_type *T);
-int fetch_constructor_input_media_document (struct paramed_type *T);
-int fetch_constructor_input_media_venue (struct paramed_type *T);
-int fetch_constructor_input_notify_peer (struct paramed_type *T);
-int fetch_constructor_input_notify_users (struct paramed_type *T);
-int fetch_constructor_input_notify_chats (struct paramed_type *T);
-int fetch_constructor_input_notify_all (struct paramed_type *T);
-int fetch_constructor_input_notify_geo_chat_peer (struct paramed_type *T);
-int fetch_constructor_input_peer_empty (struct paramed_type *T);
-int fetch_constructor_input_peer_self (struct paramed_type *T);
-int fetch_constructor_input_peer_contact (struct paramed_type *T);
-int fetch_constructor_input_peer_foreign (struct paramed_type *T);
-int fetch_constructor_input_peer_chat (struct paramed_type *T);
-int fetch_constructor_input_peer_notify_events_empty (struct paramed_type *T);
-int fetch_constructor_input_peer_notify_events_all (struct paramed_type *T);
-int fetch_constructor_input_peer_notify_settings (struct paramed_type *T);
-int fetch_constructor_input_photo_empty (struct paramed_type *T);
-int fetch_constructor_input_photo (struct paramed_type *T);
-int fetch_constructor_input_photo_crop_auto (struct paramed_type *T);
-int fetch_constructor_input_photo_crop (struct paramed_type *T);
-int fetch_constructor_input_privacy_key_status_timestamp (struct paramed_type *T);
-int fetch_constructor_input_privacy_value_allow_contacts (struct paramed_type *T);
-int fetch_constructor_input_privacy_value_allow_all (struct paramed_type *T);
-int fetch_constructor_input_privacy_value_allow_users (struct paramed_type *T);
-int fetch_constructor_input_privacy_value_disallow_contacts (struct paramed_type *T);
-int fetch_constructor_input_privacy_value_disallow_all (struct paramed_type *T);
-int fetch_constructor_input_privacy_value_disallow_users (struct paramed_type *T);
-int fetch_constructor_input_sticker_set_empty (struct paramed_type *T);
-int fetch_constructor_input_sticker_set_i_d (struct paramed_type *T);
-int fetch_constructor_input_sticker_set_short_name (struct paramed_type *T);
-int fetch_constructor_input_user_empty (struct paramed_type *T);
-int fetch_constructor_input_user_self (struct paramed_type *T);
-int fetch_constructor_input_user_contact (struct paramed_type *T);
-int fetch_constructor_input_user_foreign (struct paramed_type *T);
-int fetch_constructor_input_video_empty (struct paramed_type *T);
-int fetch_constructor_input_video (struct paramed_type *T);
-int fetch_constructor_int (struct paramed_type *T);
-int fetch_constructor_int128 (struct paramed_type *T);
-int fetch_constructor_int256 (struct paramed_type *T);
-int fetch_constructor_keyboard_button (struct paramed_type *T);
-int fetch_constructor_keyboard_button_row (struct paramed_type *T);
-int fetch_constructor_long (struct paramed_type *T);
-int fetch_constructor_message_empty (struct paramed_type *T);
-int fetch_constructor_message (struct paramed_type *T);
-int fetch_constructor_message_service (struct paramed_type *T);
-int fetch_constructor_message_action_empty (struct paramed_type *T);
-int fetch_constructor_message_action_chat_create (struct paramed_type *T);
-int fetch_constructor_message_action_chat_edit_title (struct paramed_type *T);
-int fetch_constructor_message_action_chat_edit_photo (struct paramed_type *T);
-int fetch_constructor_message_action_chat_delete_photo (struct paramed_type *T);
-int fetch_constructor_message_action_chat_add_user (struct paramed_type *T);
-int fetch_constructor_message_action_chat_delete_user (struct paramed_type *T);
-int fetch_constructor_message_action_geo_chat_create (struct paramed_type *T);
-int fetch_constructor_message_action_geo_chat_checkin (struct paramed_type *T);
-int fetch_constructor_message_action_chat_joined_by_link (struct paramed_type *T);
-int fetch_constructor_message_media_empty (struct paramed_type *T);
-int fetch_constructor_message_media_photo (struct paramed_type *T);
-int fetch_constructor_message_media_video (struct paramed_type *T);
-int fetch_constructor_message_media_geo (struct paramed_type *T);
-int fetch_constructor_message_media_contact (struct paramed_type *T);
-int fetch_constructor_message_media_unsupported (struct paramed_type *T);
-int fetch_constructor_message_media_document (struct paramed_type *T);
-int fetch_constructor_message_media_audio (struct paramed_type *T);
-int fetch_constructor_message_media_web_page (struct paramed_type *T);
-int fetch_constructor_message_media_venue (struct paramed_type *T);
-int fetch_constructor_message_media_photo_l27 (struct paramed_type *T);
-int fetch_constructor_message_media_video_l27 (struct paramed_type *T);
-int fetch_constructor_input_messages_filter_empty (struct paramed_type *T);
-int fetch_constructor_input_messages_filter_photos (struct paramed_type *T);
-int fetch_constructor_input_messages_filter_video (struct paramed_type *T);
-int fetch_constructor_input_messages_filter_photo_video (struct paramed_type *T);
-int fetch_constructor_input_messages_filter_photo_video_documents (struct paramed_type *T);
-int fetch_constructor_input_messages_filter_document (struct paramed_type *T);
-int fetch_constructor_input_messages_filter_audio (struct paramed_type *T);
-int fetch_constructor_nearest_dc (struct paramed_type *T);
-int fetch_constructor_notify_peer (struct paramed_type *T);
-int fetch_constructor_notify_users (struct paramed_type *T);
-int fetch_constructor_notify_chats (struct paramed_type *T);
-int fetch_constructor_notify_all (struct paramed_type *T);
-int fetch_constructor_null (struct paramed_type *T);
-int fetch_constructor_p_q_inner_data (struct paramed_type *T);
-int fetch_constructor_p_q_inner_data_temp (struct paramed_type *T);
-int fetch_constructor_peer_user (struct paramed_type *T);
-int fetch_constructor_peer_chat (struct paramed_type *T);
-int fetch_constructor_peer_notify_events_empty (struct paramed_type *T);
-int fetch_constructor_peer_notify_events_all (struct paramed_type *T);
-int fetch_constructor_peer_notify_settings_empty (struct paramed_type *T);
-int fetch_constructor_peer_notify_settings (struct paramed_type *T);
-int fetch_constructor_photo_empty (struct paramed_type *T);
-int fetch_constructor_photo (struct paramed_type *T);
-int fetch_constructor_photo_l27 (struct paramed_type *T);
-int fetch_constructor_photo_size_empty (struct paramed_type *T);
-int fetch_constructor_photo_size (struct paramed_type *T);
-int fetch_constructor_photo_cached_size (struct paramed_type *T);
-int fetch_constructor_privacy_key_status_timestamp (struct paramed_type *T);
-int fetch_constructor_privacy_value_allow_contacts (struct paramed_type *T);
-int fetch_constructor_privacy_value_allow_all (struct paramed_type *T);
-int fetch_constructor_privacy_value_allow_users (struct paramed_type *T);
-int fetch_constructor_privacy_value_disallow_contacts (struct paramed_type *T);
-int fetch_constructor_privacy_value_disallow_all (struct paramed_type *T);
-int fetch_constructor_privacy_value_disallow_users (struct paramed_type *T);
-int fetch_constructor_received_notify_message (struct paramed_type *T);
-int fetch_constructor_reply_keyboard_hide (struct paramed_type *T);
-int fetch_constructor_reply_keyboard_force_reply (struct paramed_type *T);
-int fetch_constructor_reply_keyboard_markup (struct paramed_type *T);
-int fetch_constructor_res_p_q (struct paramed_type *T);
-int fetch_constructor_send_message_typing_action (struct paramed_type *T);
-int fetch_constructor_send_message_cancel_action (struct paramed_type *T);
-int fetch_constructor_send_message_record_video_action (struct paramed_type *T);
-int fetch_constructor_send_message_upload_video_action_l27 (struct paramed_type *T);
-int fetch_constructor_send_message_upload_video_action (struct paramed_type *T);
-int fetch_constructor_send_message_record_audio_action (struct paramed_type *T);
-int fetch_constructor_send_message_upload_audio_action_l27 (struct paramed_type *T);
-int fetch_constructor_send_message_upload_audio_action (struct paramed_type *T);
-int fetch_constructor_send_message_upload_photo_action (struct paramed_type *T);
-int fetch_constructor_send_message_upload_document_action_l27 (struct paramed_type *T);
-int fetch_constructor_send_message_upload_document_action (struct paramed_type *T);
-int fetch_constructor_send_message_geo_location_action (struct paramed_type *T);
-int fetch_constructor_send_message_choose_contact_action (struct paramed_type *T);
-int fetch_constructor_server_d_h_params_fail (struct paramed_type *T);
-int fetch_constructor_server_d_h_params_ok (struct paramed_type *T);
-int fetch_constructor_server_d_h_inner_data (struct paramed_type *T);
-int fetch_constructor_dh_gen_ok (struct paramed_type *T);
-int fetch_constructor_dh_gen_retry (struct paramed_type *T);
-int fetch_constructor_dh_gen_fail (struct paramed_type *T);
-int fetch_constructor_sticker_pack (struct paramed_type *T);
-int fetch_constructor_sticker_set (struct paramed_type *T);
-int fetch_constructor_string (struct paramed_type *T);
-int fetch_constructor_update_new_message (struct paramed_type *T);
-int fetch_constructor_update_message_i_d (struct paramed_type *T);
-int fetch_constructor_update_delete_messages (struct paramed_type *T);
-int fetch_constructor_update_user_typing (struct paramed_type *T);
-int fetch_constructor_update_chat_user_typing (struct paramed_type *T);
-int fetch_constructor_update_chat_participants (struct paramed_type *T);
-int fetch_constructor_update_user_status (struct paramed_type *T);
-int fetch_constructor_update_user_name (struct paramed_type *T);
-int fetch_constructor_update_user_photo (struct paramed_type *T);
-int fetch_constructor_update_contact_registered (struct paramed_type *T);
-int fetch_constructor_update_contact_link (struct paramed_type *T);
-int fetch_constructor_update_new_authorization (struct paramed_type *T);
-int fetch_constructor_update_new_geo_chat_message (struct paramed_type *T);
-int fetch_constructor_update_new_encrypted_message (struct paramed_type *T);
-int fetch_constructor_update_encrypted_chat_typing (struct paramed_type *T);
-int fetch_constructor_update_encryption (struct paramed_type *T);
-int fetch_constructor_update_encrypted_messages_read (struct paramed_type *T);
-int fetch_constructor_update_chat_participant_add (struct paramed_type *T);
-int fetch_constructor_update_chat_participant_delete (struct paramed_type *T);
-int fetch_constructor_update_dc_options (struct paramed_type *T);
-int fetch_constructor_update_user_blocked (struct paramed_type *T);
-int fetch_constructor_update_notify_settings (struct paramed_type *T);
-int fetch_constructor_update_service_notification (struct paramed_type *T);
-int fetch_constructor_update_privacy (struct paramed_type *T);
-int fetch_constructor_update_user_phone (struct paramed_type *T);
-int fetch_constructor_update_read_history_inbox (struct paramed_type *T);
-int fetch_constructor_update_read_history_outbox (struct paramed_type *T);
-int fetch_constructor_update_web_page (struct paramed_type *T);
-int fetch_constructor_update_read_messages_contents (struct paramed_type *T);
-int fetch_constructor_update_msg_update (struct paramed_type *T);
-int fetch_constructor_updates_too_long (struct paramed_type *T);
-int fetch_constructor_update_short_message (struct paramed_type *T);
-int fetch_constructor_update_short_chat_message (struct paramed_type *T);
-int fetch_constructor_update_short (struct paramed_type *T);
-int fetch_constructor_updates_combined (struct paramed_type *T);
-int fetch_constructor_updates (struct paramed_type *T);
-int fetch_constructor_user_empty (struct paramed_type *T);
-int fetch_constructor_user (struct paramed_type *T);
-int fetch_constructor_user_full (struct paramed_type *T);
-int fetch_constructor_user_profile_photo_empty (struct paramed_type *T);
-int fetch_constructor_user_profile_photo (struct paramed_type *T);
-int fetch_constructor_user_status_empty (struct paramed_type *T);
-int fetch_constructor_user_status_online (struct paramed_type *T);
-int fetch_constructor_user_status_offline (struct paramed_type *T);
-int fetch_constructor_user_status_recently (struct paramed_type *T);
-int fetch_constructor_user_status_last_week (struct paramed_type *T);
-int fetch_constructor_user_status_last_month (struct paramed_type *T);
-int fetch_constructor_vector (struct paramed_type *T);
-int fetch_constructor_video_empty (struct paramed_type *T);
-int fetch_constructor_video (struct paramed_type *T);
-int fetch_constructor_video_l27 (struct paramed_type *T);
-int fetch_constructor_wall_paper (struct paramed_type *T);
-int fetch_constructor_wall_paper_solid (struct paramed_type *T);
-int fetch_constructor_web_page_empty (struct paramed_type *T);
-int fetch_constructor_web_page_pending (struct paramed_type *T);
-int fetch_constructor_web_page (struct paramed_type *T);
-int fetch_constructor_account_authorizations (struct paramed_type *T);
-int fetch_constructor_account_no_password (struct paramed_type *T);
-int fetch_constructor_account_password (struct paramed_type *T);
-int fetch_constructor_account_password_input_settings (struct paramed_type *T);
-int fetch_constructor_account_password_settings (struct paramed_type *T);
-int fetch_constructor_account_privacy_rules (struct paramed_type *T);
-int fetch_constructor_account_sent_change_phone_code (struct paramed_type *T);
-int fetch_constructor_auth_authorization (struct paramed_type *T);
-int fetch_constructor_auth_checked_phone (struct paramed_type *T);
-int fetch_constructor_auth_exported_authorization (struct paramed_type *T);
-int fetch_constructor_auth_password_recovery (struct paramed_type *T);
-int fetch_constructor_auth_sent_code (struct paramed_type *T);
-int fetch_constructor_auth_sent_app_code (struct paramed_type *T);
-int fetch_constructor_binlog_encr_key (struct paramed_type *T);
-int fetch_constructor_binlog_start (struct paramed_type *T);
-int fetch_constructor_binlog_dc_option (struct paramed_type *T);
-int fetch_constructor_binlog_dc_option_new (struct paramed_type *T);
-int fetch_constructor_binlog_auth_key (struct paramed_type *T);
-int fetch_constructor_binlog_default_dc (struct paramed_type *T);
-int fetch_constructor_binlog_dc_signed (struct paramed_type *T);
-int fetch_constructor_binlog_our_id (struct paramed_type *T);
-int fetch_constructor_binlog_set_dh_params (struct paramed_type *T);
-int fetch_constructor_binlog_set_pts (struct paramed_type *T);
-int fetch_constructor_binlog_set_qts (struct paramed_type *T);
-int fetch_constructor_binlog_set_date (struct paramed_type *T);
-int fetch_constructor_binlog_set_seq (struct paramed_type *T);
-int fetch_constructor_binlog_encr_chat_delete (struct paramed_type *T);
-int fetch_constructor_binlog_encr_chat_new (struct paramed_type *T);
-int fetch_constructor_binlog_encr_chat_exchange_new (struct paramed_type *T);
-int fetch_constructor_binlog_user_delete (struct paramed_type *T);
-int fetch_constructor_binlog_user_new (struct paramed_type *T);
-int fetch_constructor_binlog_chat_new (struct paramed_type *T);
-int fetch_constructor_binlog_chat_add_participant (struct paramed_type *T);
-int fetch_constructor_binlog_chat_del_participant (struct paramed_type *T);
-int fetch_constructor_binlog_set_msg_id (struct paramed_type *T);
-int fetch_constructor_binlog_message_delete (struct paramed_type *T);
-int fetch_constructor_binlog_message_new (struct paramed_type *T);
-int fetch_constructor_binlog_message_encr_new (struct paramed_type *T);
-int fetch_constructor_binlog_msg_update (struct paramed_type *T);
-int fetch_constructor_binlog_reset_authorization (struct paramed_type *T);
-int fetch_constructor_contacts_blocked (struct paramed_type *T);
-int fetch_constructor_contacts_blocked_slice (struct paramed_type *T);
-int fetch_constructor_contacts_contacts_not_modified (struct paramed_type *T);
-int fetch_constructor_contacts_contacts (struct paramed_type *T);
-int fetch_constructor_contacts_found (struct paramed_type *T);
-int fetch_constructor_contacts_imported_contacts (struct paramed_type *T);
-int fetch_constructor_contacts_link (struct paramed_type *T);
-int fetch_constructor_contacts_suggested (struct paramed_type *T);
-int fetch_constructor_geochats_located (struct paramed_type *T);
-int fetch_constructor_geochats_messages (struct paramed_type *T);
-int fetch_constructor_geochats_messages_slice (struct paramed_type *T);
-int fetch_constructor_geochats_stated_message (struct paramed_type *T);
-int fetch_constructor_help_app_update (struct paramed_type *T);
-int fetch_constructor_help_no_app_update (struct paramed_type *T);
-int fetch_constructor_help_invite_text (struct paramed_type *T);
-int fetch_constructor_help_support (struct paramed_type *T);
-int fetch_constructor_messages_affected_history (struct paramed_type *T);
-int fetch_constructor_messages_affected_messages (struct paramed_type *T);
-int fetch_constructor_messages_all_stickers_not_modified (struct paramed_type *T);
-int fetch_constructor_messages_all_stickers (struct paramed_type *T);
-int fetch_constructor_messages_chat_full (struct paramed_type *T);
-int fetch_constructor_messages_chats (struct paramed_type *T);
-int fetch_constructor_messages_dh_config_not_modified (struct paramed_type *T);
-int fetch_constructor_messages_dh_config (struct paramed_type *T);
-int fetch_constructor_messages_dialogs (struct paramed_type *T);
-int fetch_constructor_messages_dialogs_slice (struct paramed_type *T);
-int fetch_constructor_messages_message_empty (struct paramed_type *T);
-int fetch_constructor_messages_messages (struct paramed_type *T);
-int fetch_constructor_messages_messages_slice (struct paramed_type *T);
-int fetch_constructor_messages_sent_encrypted_message (struct paramed_type *T);
-int fetch_constructor_messages_sent_encrypted_file (struct paramed_type *T);
-int fetch_constructor_messages_sent_message (struct paramed_type *T);
-int fetch_constructor_messages_sent_message_link (struct paramed_type *T);
-int fetch_constructor_messages_sticker_set (struct paramed_type *T);
-int fetch_constructor_messages_stickers_not_modified (struct paramed_type *T);
-int fetch_constructor_messages_stickers (struct paramed_type *T);
-int fetch_constructor_photos_photo (struct paramed_type *T);
-int fetch_constructor_photos_photos (struct paramed_type *T);
-int fetch_constructor_photos_photos_slice (struct paramed_type *T);
-int fetch_constructor_storage_file_unknown (struct paramed_type *T);
-int fetch_constructor_storage_file_jpeg (struct paramed_type *T);
-int fetch_constructor_storage_file_gif (struct paramed_type *T);
-int fetch_constructor_storage_file_png (struct paramed_type *T);
-int fetch_constructor_storage_file_pdf (struct paramed_type *T);
-int fetch_constructor_storage_file_mp3 (struct paramed_type *T);
-int fetch_constructor_storage_file_mov (struct paramed_type *T);
-int fetch_constructor_storage_file_partial (struct paramed_type *T);
-int fetch_constructor_storage_file_mp4 (struct paramed_type *T);
-int fetch_constructor_storage_file_webp (struct paramed_type *T);
-int fetch_constructor_updates_difference_empty (struct paramed_type *T);
-int fetch_constructor_updates_difference (struct paramed_type *T);
-int fetch_constructor_updates_difference_slice (struct paramed_type *T);
-int fetch_constructor_updates_state (struct paramed_type *T);
-int fetch_constructor_upload_file (struct paramed_type *T);
-int fetch_type_account_days_t_t_l (struct paramed_type *T);
-int fetch_type_bare_account_days_t_t_l (struct paramed_type *T);
-int fetch_type_audio (struct paramed_type *T);
-int fetch_type_bare_audio (struct paramed_type *T);
-int fetch_type_authorization (struct paramed_type *T);
-int fetch_type_bare_authorization (struct paramed_type *T);
-int fetch_type_bool (struct paramed_type *T);
-int fetch_type_bare_bool (struct paramed_type *T);
-int fetch_type_bot_command (struct paramed_type *T);
-int fetch_type_bare_bot_command (struct paramed_type *T);
-int fetch_type_bot_info (struct paramed_type *T);
-int fetch_type_bare_bot_info (struct paramed_type *T);
-int fetch_type_bytes (struct paramed_type *T);
-int fetch_type_bare_bytes (struct paramed_type *T);
-int fetch_type_chat (struct paramed_type *T);
-int fetch_type_bare_chat (struct paramed_type *T);
-int fetch_type_chat_full (struct paramed_type *T);
-int fetch_type_bare_chat_full (struct paramed_type *T);
-int fetch_type_chat_invite (struct paramed_type *T);
-int fetch_type_bare_chat_invite (struct paramed_type *T);
-int fetch_type_chat_located (struct paramed_type *T);
-int fetch_type_bare_chat_located (struct paramed_type *T);
-int fetch_type_chat_participant (struct paramed_type *T);
-int fetch_type_bare_chat_participant (struct paramed_type *T);
-int fetch_type_chat_participants (struct paramed_type *T);
-int fetch_type_bare_chat_participants (struct paramed_type *T);
-int fetch_type_chat_photo (struct paramed_type *T);
-int fetch_type_bare_chat_photo (struct paramed_type *T);
-int fetch_type_client_d_h_inner_data (struct paramed_type *T);
-int fetch_type_bare_client_d_h_inner_data (struct paramed_type *T);
-int fetch_type_config (struct paramed_type *T);
-int fetch_type_bare_config (struct paramed_type *T);
-int fetch_type_contact (struct paramed_type *T);
-int fetch_type_bare_contact (struct paramed_type *T);
-int fetch_type_contact_blocked (struct paramed_type *T);
-int fetch_type_bare_contact_blocked (struct paramed_type *T);
-int fetch_type_contact_found (struct paramed_type *T);
-int fetch_type_bare_contact_found (struct paramed_type *T);
-int fetch_type_contact_link (struct paramed_type *T);
-int fetch_type_bare_contact_link (struct paramed_type *T);
-int fetch_type_contact_status (struct paramed_type *T);
-int fetch_type_bare_contact_status (struct paramed_type *T);
-int fetch_type_contact_suggested (struct paramed_type *T);
-int fetch_type_bare_contact_suggested (struct paramed_type *T);
-int fetch_type_dc_option (struct paramed_type *T);
-int fetch_type_bare_dc_option (struct paramed_type *T);
-int fetch_type_decrypted_message (struct paramed_type *T);
-int fetch_type_bare_decrypted_message (struct paramed_type *T);
-int fetch_type_decrypted_message_action (struct paramed_type *T);
-int fetch_type_bare_decrypted_message_action (struct paramed_type *T);
-int fetch_type_decrypted_message_layer (struct paramed_type *T);
-int fetch_type_bare_decrypted_message_layer (struct paramed_type *T);
-int fetch_type_decrypted_message_media (struct paramed_type *T);
-int fetch_type_bare_decrypted_message_media (struct paramed_type *T);
-int fetch_type_dialog (struct paramed_type *T);
-int fetch_type_bare_dialog (struct paramed_type *T);
-int fetch_type_disabled_feature (struct paramed_type *T);
-int fetch_type_bare_disabled_feature (struct paramed_type *T);
-int fetch_type_document (struct paramed_type *T);
-int fetch_type_bare_document (struct paramed_type *T);
-int fetch_type_document_attribute (struct paramed_type *T);
-int fetch_type_bare_document_attribute (struct paramed_type *T);
-int fetch_type_double (struct paramed_type *T);
-int fetch_type_bare_double (struct paramed_type *T);
-int fetch_type_encrypted_chat (struct paramed_type *T);
-int fetch_type_bare_encrypted_chat (struct paramed_type *T);
-int fetch_type_encrypted_file (struct paramed_type *T);
-int fetch_type_bare_encrypted_file (struct paramed_type *T);
-int fetch_type_encrypted_message (struct paramed_type *T);
-int fetch_type_bare_encrypted_message (struct paramed_type *T);
-int fetch_type_error (struct paramed_type *T);
-int fetch_type_bare_error (struct paramed_type *T);
-int fetch_type_exported_chat_invite (struct paramed_type *T);
-int fetch_type_bare_exported_chat_invite (struct paramed_type *T);
-int fetch_type_file_location (struct paramed_type *T);
-int fetch_type_bare_file_location (struct paramed_type *T);
-int fetch_type_geo_chat_message (struct paramed_type *T);
-int fetch_type_bare_geo_chat_message (struct paramed_type *T);
-int fetch_type_geo_point (struct paramed_type *T);
-int fetch_type_bare_geo_point (struct paramed_type *T);
-int fetch_type_imported_contact (struct paramed_type *T);
-int fetch_type_bare_imported_contact (struct paramed_type *T);
-int fetch_type_input_app_event (struct paramed_type *T);
-int fetch_type_bare_input_app_event (struct paramed_type *T);
-int fetch_type_input_audio (struct paramed_type *T);
-int fetch_type_bare_input_audio (struct paramed_type *T);
-int fetch_type_input_chat_photo (struct paramed_type *T);
-int fetch_type_bare_input_chat_photo (struct paramed_type *T);
-int fetch_type_input_contact (struct paramed_type *T);
-int fetch_type_bare_input_contact (struct paramed_type *T);
-int fetch_type_input_document (struct paramed_type *T);
-int fetch_type_bare_input_document (struct paramed_type *T);
-int fetch_type_input_encrypted_chat (struct paramed_type *T);
-int fetch_type_bare_input_encrypted_chat (struct paramed_type *T);
-int fetch_type_input_encrypted_file (struct paramed_type *T);
-int fetch_type_bare_input_encrypted_file (struct paramed_type *T);
-int fetch_type_input_file (struct paramed_type *T);
-int fetch_type_bare_input_file (struct paramed_type *T);
-int fetch_type_input_file_location (struct paramed_type *T);
-int fetch_type_bare_input_file_location (struct paramed_type *T);
-int fetch_type_input_geo_chat (struct paramed_type *T);
-int fetch_type_bare_input_geo_chat (struct paramed_type *T);
-int fetch_type_input_geo_point (struct paramed_type *T);
-int fetch_type_bare_input_geo_point (struct paramed_type *T);
-int fetch_type_input_media (struct paramed_type *T);
-int fetch_type_bare_input_media (struct paramed_type *T);
-int fetch_type_input_notify_peer (struct paramed_type *T);
-int fetch_type_bare_input_notify_peer (struct paramed_type *T);
-int fetch_type_input_peer (struct paramed_type *T);
-int fetch_type_bare_input_peer (struct paramed_type *T);
-int fetch_type_input_peer_notify_events (struct paramed_type *T);
-int fetch_type_bare_input_peer_notify_events (struct paramed_type *T);
-int fetch_type_input_peer_notify_settings (struct paramed_type *T);
-int fetch_type_bare_input_peer_notify_settings (struct paramed_type *T);
-int fetch_type_input_photo (struct paramed_type *T);
-int fetch_type_bare_input_photo (struct paramed_type *T);
-int fetch_type_input_photo_crop (struct paramed_type *T);
-int fetch_type_bare_input_photo_crop (struct paramed_type *T);
-int fetch_type_input_privacy_key (struct paramed_type *T);
-int fetch_type_bare_input_privacy_key (struct paramed_type *T);
-int fetch_type_input_privacy_rule (struct paramed_type *T);
-int fetch_type_bare_input_privacy_rule (struct paramed_type *T);
-int fetch_type_input_sticker_set (struct paramed_type *T);
-int fetch_type_bare_input_sticker_set (struct paramed_type *T);
-int fetch_type_input_user (struct paramed_type *T);
-int fetch_type_bare_input_user (struct paramed_type *T);
-int fetch_type_input_video (struct paramed_type *T);
-int fetch_type_bare_input_video (struct paramed_type *T);
-int fetch_type_int (struct paramed_type *T);
-int fetch_type_bare_int (struct paramed_type *T);
-int fetch_type_int128 (struct paramed_type *T);
-int fetch_type_bare_int128 (struct paramed_type *T);
-int fetch_type_int256 (struct paramed_type *T);
-int fetch_type_bare_int256 (struct paramed_type *T);
-int fetch_type_keyboard_button (struct paramed_type *T);
-int fetch_type_bare_keyboard_button (struct paramed_type *T);
-int fetch_type_keyboard_button_row (struct paramed_type *T);
-int fetch_type_bare_keyboard_button_row (struct paramed_type *T);
-int fetch_type_long (struct paramed_type *T);
-int fetch_type_bare_long (struct paramed_type *T);
-int fetch_type_message (struct paramed_type *T);
-int fetch_type_bare_message (struct paramed_type *T);
-int fetch_type_message_action (struct paramed_type *T);
-int fetch_type_bare_message_action (struct paramed_type *T);
-int fetch_type_message_media (struct paramed_type *T);
-int fetch_type_bare_message_media (struct paramed_type *T);
-int fetch_type_messages_filter (struct paramed_type *T);
-int fetch_type_bare_messages_filter (struct paramed_type *T);
-int fetch_type_nearest_dc (struct paramed_type *T);
-int fetch_type_bare_nearest_dc (struct paramed_type *T);
-int fetch_type_notify_peer (struct paramed_type *T);
-int fetch_type_bare_notify_peer (struct paramed_type *T);
-int fetch_type_null (struct paramed_type *T);
-int fetch_type_bare_null (struct paramed_type *T);
-int fetch_type_p_q_inner_data (struct paramed_type *T);
-int fetch_type_bare_p_q_inner_data (struct paramed_type *T);
-int fetch_type_peer (struct paramed_type *T);
-int fetch_type_bare_peer (struct paramed_type *T);
-int fetch_type_peer_notify_events (struct paramed_type *T);
-int fetch_type_bare_peer_notify_events (struct paramed_type *T);
-int fetch_type_peer_notify_settings (struct paramed_type *T);
-int fetch_type_bare_peer_notify_settings (struct paramed_type *T);
-int fetch_type_photo (struct paramed_type *T);
-int fetch_type_bare_photo (struct paramed_type *T);
-int fetch_type_photo_size (struct paramed_type *T);
-int fetch_type_bare_photo_size (struct paramed_type *T);
-int fetch_type_privacy_key (struct paramed_type *T);
-int fetch_type_bare_privacy_key (struct paramed_type *T);
-int fetch_type_privacy_rule (struct paramed_type *T);
-int fetch_type_bare_privacy_rule (struct paramed_type *T);
-int fetch_type_received_notify_message (struct paramed_type *T);
-int fetch_type_bare_received_notify_message (struct paramed_type *T);
-int fetch_type_reply_markup (struct paramed_type *T);
-int fetch_type_bare_reply_markup (struct paramed_type *T);
-int fetch_type_res_p_q (struct paramed_type *T);
-int fetch_type_bare_res_p_q (struct paramed_type *T);
-int fetch_type_send_message_action (struct paramed_type *T);
-int fetch_type_bare_send_message_action (struct paramed_type *T);
-int fetch_type_server_d_h_params (struct paramed_type *T);
-int fetch_type_bare_server_d_h_params (struct paramed_type *T);
-int fetch_type_server_d_h_inner_data (struct paramed_type *T);
-int fetch_type_bare_server_d_h_inner_data (struct paramed_type *T);
-int fetch_type_set_client_d_h_params_answer (struct paramed_type *T);
-int fetch_type_bare_set_client_d_h_params_answer (struct paramed_type *T);
-int fetch_type_sticker_pack (struct paramed_type *T);
-int fetch_type_bare_sticker_pack (struct paramed_type *T);
-int fetch_type_sticker_set (struct paramed_type *T);
-int fetch_type_bare_sticker_set (struct paramed_type *T);
-int fetch_type_string (struct paramed_type *T);
-int fetch_type_bare_string (struct paramed_type *T);
-int fetch_type_update (struct paramed_type *T);
-int fetch_type_bare_update (struct paramed_type *T);
-int fetch_type_updates (struct paramed_type *T);
-int fetch_type_bare_updates (struct paramed_type *T);
-int fetch_type_user (struct paramed_type *T);
-int fetch_type_bare_user (struct paramed_type *T);
-int fetch_type_user_full (struct paramed_type *T);
-int fetch_type_bare_user_full (struct paramed_type *T);
-int fetch_type_user_profile_photo (struct paramed_type *T);
-int fetch_type_bare_user_profile_photo (struct paramed_type *T);
-int fetch_type_user_status (struct paramed_type *T);
-int fetch_type_bare_user_status (struct paramed_type *T);
-int fetch_type_vector (struct paramed_type *T);
-int fetch_type_bare_vector (struct paramed_type *T);
-int fetch_type_video (struct paramed_type *T);
-int fetch_type_bare_video (struct paramed_type *T);
-int fetch_type_wall_paper (struct paramed_type *T);
-int fetch_type_bare_wall_paper (struct paramed_type *T);
-int fetch_type_web_page (struct paramed_type *T);
-int fetch_type_bare_web_page (struct paramed_type *T);
-int fetch_type_account_authorizations (struct paramed_type *T);
-int fetch_type_bare_account_authorizations (struct paramed_type *T);
-int fetch_type_account_password (struct paramed_type *T);
-int fetch_type_bare_account_password (struct paramed_type *T);
-int fetch_type_account_password_input_settings (struct paramed_type *T);
-int fetch_type_bare_account_password_input_settings (struct paramed_type *T);
-int fetch_type_account_password_settings (struct paramed_type *T);
-int fetch_type_bare_account_password_settings (struct paramed_type *T);
-int fetch_type_account_privacy_rules (struct paramed_type *T);
-int fetch_type_bare_account_privacy_rules (struct paramed_type *T);
-int fetch_type_account_sent_change_phone_code (struct paramed_type *T);
-int fetch_type_bare_account_sent_change_phone_code (struct paramed_type *T);
-int fetch_type_auth_authorization (struct paramed_type *T);
-int fetch_type_bare_auth_authorization (struct paramed_type *T);
-int fetch_type_auth_checked_phone (struct paramed_type *T);
-int fetch_type_bare_auth_checked_phone (struct paramed_type *T);
-int fetch_type_auth_exported_authorization (struct paramed_type *T);
-int fetch_type_bare_auth_exported_authorization (struct paramed_type *T);
-int fetch_type_auth_password_recovery (struct paramed_type *T);
-int fetch_type_bare_auth_password_recovery (struct paramed_type *T);
-int fetch_type_auth_sent_code (struct paramed_type *T);
-int fetch_type_bare_auth_sent_code (struct paramed_type *T);
-int fetch_type_binlog_encr_key (struct paramed_type *T);
-int fetch_type_bare_binlog_encr_key (struct paramed_type *T);
-int fetch_type_binlog_update (struct paramed_type *T);
-int fetch_type_bare_binlog_update (struct paramed_type *T);
-int fetch_type_contacts_blocked (struct paramed_type *T);
-int fetch_type_bare_contacts_blocked (struct paramed_type *T);
-int fetch_type_contacts_contacts (struct paramed_type *T);
-int fetch_type_bare_contacts_contacts (struct paramed_type *T);
-int fetch_type_contacts_found (struct paramed_type *T);
-int fetch_type_bare_contacts_found (struct paramed_type *T);
-int fetch_type_contacts_imported_contacts (struct paramed_type *T);
-int fetch_type_bare_contacts_imported_contacts (struct paramed_type *T);
-int fetch_type_contacts_link (struct paramed_type *T);
-int fetch_type_bare_contacts_link (struct paramed_type *T);
-int fetch_type_contacts_suggested (struct paramed_type *T);
-int fetch_type_bare_contacts_suggested (struct paramed_type *T);
-int fetch_type_geochats_located (struct paramed_type *T);
-int fetch_type_bare_geochats_located (struct paramed_type *T);
-int fetch_type_geochats_messages (struct paramed_type *T);
-int fetch_type_bare_geochats_messages (struct paramed_type *T);
-int fetch_type_geochats_stated_message (struct paramed_type *T);
-int fetch_type_bare_geochats_stated_message (struct paramed_type *T);
-int fetch_type_help_app_update (struct paramed_type *T);
-int fetch_type_bare_help_app_update (struct paramed_type *T);
-int fetch_type_help_invite_text (struct paramed_type *T);
-int fetch_type_bare_help_invite_text (struct paramed_type *T);
-int fetch_type_help_support (struct paramed_type *T);
-int fetch_type_bare_help_support (struct paramed_type *T);
-int fetch_type_messages_affected_history (struct paramed_type *T);
-int fetch_type_bare_messages_affected_history (struct paramed_type *T);
-int fetch_type_messages_affected_messages (struct paramed_type *T);
-int fetch_type_bare_messages_affected_messages (struct paramed_type *T);
-int fetch_type_messages_all_stickers (struct paramed_type *T);
-int fetch_type_bare_messages_all_stickers (struct paramed_type *T);
-int fetch_type_messages_chat_full (struct paramed_type *T);
-int fetch_type_bare_messages_chat_full (struct paramed_type *T);
-int fetch_type_messages_chats (struct paramed_type *T);
-int fetch_type_bare_messages_chats (struct paramed_type *T);
-int fetch_type_messages_dh_config (struct paramed_type *T);
-int fetch_type_bare_messages_dh_config (struct paramed_type *T);
-int fetch_type_messages_dialogs (struct paramed_type *T);
-int fetch_type_bare_messages_dialogs (struct paramed_type *T);
-int fetch_type_messages_message (struct paramed_type *T);
-int fetch_type_bare_messages_message (struct paramed_type *T);
-int fetch_type_messages_messages (struct paramed_type *T);
-int fetch_type_bare_messages_messages (struct paramed_type *T);
-int fetch_type_messages_sent_encrypted_message (struct paramed_type *T);
-int fetch_type_bare_messages_sent_encrypted_message (struct paramed_type *T);
-int fetch_type_messages_sent_message (struct paramed_type *T);
-int fetch_type_bare_messages_sent_message (struct paramed_type *T);
-int fetch_type_messages_sticker_set (struct paramed_type *T);
-int fetch_type_bare_messages_sticker_set (struct paramed_type *T);
-int fetch_type_messages_stickers (struct paramed_type *T);
-int fetch_type_bare_messages_stickers (struct paramed_type *T);
-int fetch_type_photos_photo (struct paramed_type *T);
-int fetch_type_bare_photos_photo (struct paramed_type *T);
-int fetch_type_photos_photos (struct paramed_type *T);
-int fetch_type_bare_photos_photos (struct paramed_type *T);
-int fetch_type_storage_file_type (struct paramed_type *T);
-int fetch_type_bare_storage_file_type (struct paramed_type *T);
-int fetch_type_updates_difference (struct paramed_type *T);
-int fetch_type_bare_updates_difference (struct paramed_type *T);
-int fetch_type_updates_state (struct paramed_type *T);
-int fetch_type_bare_updates_state (struct paramed_type *T);
-int fetch_type_upload_file (struct paramed_type *T);
-int fetch_type_bare_upload_file (struct paramed_type *T);
-int fetch_type_any (struct paramed_type *T);
diff --git a/protocols/Telegram/src/tgl/auto/auto-free-ds.c b/protocols/Telegram/src/tgl/auto/auto-free-ds.c
deleted file mode 100644
index bf5fcc7f4d..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-free-ds.c
+++ /dev/null
@@ -1,9115 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#include "auto-free-ds.h"
-#include "auto-skip.h"
-#include "auto-types.h"
-#include "..\mtproto-common.h"
-#else
-#include "auto.h"
-#include "auto/auto-free-ds.h"
-#include "auto/auto-skip.h"
-#include "auto/auto-types.h"
-#include "auto-static-free-ds.c"
-#include "mtproto-common.h"
-#endif
-#include <assert.h>
-void free_ds_constructor_account_days_t_t_l (struct tl_ds_account_days_t_t_l *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb8d0afdf && T->type->name != 0x472f5020)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->days, field1);
-}
-void free_ds_constructor_audio_empty (struct tl_ds_audio *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
-}
-void free_ds_constructor_audio (struct tl_ds_audio *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->mime_type, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc_id, field8);
-}
-void free_ds_constructor_authorization (struct tl_ds_authorization *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bf2e6f6 && T->type->name != 0x840d1909)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->hash, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->flags, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->device_model, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->platform, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->system_version, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->api_id, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->app_name, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->app_version, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date_created, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date_active, field10);
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->ip, field11);
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->country, field12);
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->region, field13);
-}
-void free_ds_constructor_bool_false (struct tl_ds_bool *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return; }
-}
-void free_ds_constructor_bool_true (struct tl_ds_bool *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return; }
-}
-void free_ds_constructor_bot_command (struct tl_ds_bot_command *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->command, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->description, field2);
-}
-void free_ds_constructor_bot_command_old (struct tl_ds_bot_command *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->command, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->params, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->description, field3);
-}
-void free_ds_constructor_bot_info_empty (struct tl_ds_bot_info *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return; }
-}
-void free_ds_constructor_bot_info (struct tl_ds_bot_info *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->version, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->share_text, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->description, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x75e7ea6c, .id = "BotCommand", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->commands, field5);
-}
-void free_ds_constructor_bytes (struct tl_ds_string *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0ee1379f && T->type->name != 0xf11ec860)) { return; }
- tfree (D->data, D->len + 1);
- tfree (D, sizeof (*D));
-}
-void free_ds_constructor_chat_empty (struct tl_ds_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
-}
-void free_ds_constructor_chat (struct tl_ds_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_chat_photo (D->photo, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->participants_count, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->left, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->version, field7);
-}
-void free_ds_constructor_chat_forbidden (struct tl_ds_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field3);
-}
-void free_ds_constructor_geo_chat (struct tl_ds_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->address, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->venue, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_geo_point (D->geo, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_chat_photo (D->photo, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->participants_count, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->checked_in, field10);
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->version, field11);
-}
-void free_ds_constructor_chat_full (struct tl_ds_chat_full *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02a614 && T->type->name != 0xd1fd59eb)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_chat_participants (D->participants, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo (D->chat_photo, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_peer_notify_settings (D->notify_settings, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f132d5, .id = "ExportedChatInvite", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_exported_chat_invite (D->exported_invite, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->bot_info, field6);
-}
-void free_ds_constructor_chat_invite_already (struct tl_ds_chat_invite *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_chat (D->chat, field1);
-}
-void free_ds_constructor_chat_invite (struct tl_ds_chat_invite *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field1);
-}
-void free_ds_constructor_chat_located (struct tl_ds_chat_located *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3631cf4c && T->type->name != 0xc9ce30b3)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->distance, field2);
-}
-void free_ds_constructor_chat_participant (struct tl_ds_chat_participant *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc8d7493e && T->type->name != 0x3728b6c1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->inviter_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field3);
-}
-void free_ds_constructor_chat_participants_forbidden (struct tl_ds_chat_participants *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
-}
-void free_ds_constructor_chat_participants (struct tl_ds_chat_participants *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->admin_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->participants, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->version, field4);
-}
-void free_ds_constructor_chat_photo_empty (struct tl_ds_chat_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return; }
-}
-void free_ds_constructor_chat_photo (struct tl_ds_chat_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_file_location (D->photo_small, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_file_location (D->photo_big, field2);
-}
-void free_ds_constructor_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6643b654 && T->type->name != 0x99bc49ab)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->retry_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->g_b, field4);
-}
-void free_ds_constructor_config (struct tl_ds_config *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e32b894 && T->type->name != 0xb1cd476b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->expires, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->test_mode, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->this_dc, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->dc_options, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_size_max, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->broadcast_size_max, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->forwarded_count_max, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->online_update_period_ms, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->offline_blur_timeout_ms, field10);
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->offline_idle_timeout_ms, field11);
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->online_cloud_timeout_ms, field12);
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->notify_cloud_delay_ms, field13);
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->notify_default_delay_ms, field14);
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_big_size, field15);
- struct paramed_type *field16 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->push_chat_period_ms, field16);
- struct paramed_type *field17 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->push_chat_limit, field17);
- struct paramed_type *field18 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae636f24, .id = "DisabledFeature", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->disabled_features, field18);
-}
-void free_ds_constructor_contact (struct tl_ds_contact *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf911c994 && T->type->name != 0x06ee366b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->mutual, field2);
-}
-void free_ds_constructor_contact_blocked (struct tl_ds_contact_blocked *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x561bc879 && T->type->name != 0xa9e43786)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field2);
-}
-void free_ds_constructor_contact_found (struct tl_ds_contact_found *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xea879f95 && T->type->name != 0x1578606a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
-}
-void free_ds_constructor_contact_link_unknown (struct tl_ds_contact_link *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return; }
-}
-void free_ds_constructor_contact_link_none (struct tl_ds_contact_link *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return; }
-}
-void free_ds_constructor_contact_link_has_phone (struct tl_ds_contact_link *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return; }
-}
-void free_ds_constructor_contact_link_contact (struct tl_ds_contact_link *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return; }
-}
-void free_ds_constructor_contact_status (struct tl_ds_contact_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd3680c61 && T->type->name != 0x2c97f39e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_user_status (D->status, field2);
-}
-void free_ds_constructor_contact_suggested (struct tl_ds_contact_suggested *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3de191a1 && T->type->name != 0xc21e6e5e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->mutual_contacts, field2);
-}
-void free_ds_constructor_dc_option_l28 (struct tl_ds_dc_option *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->hostname, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->ip_address, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->port, field4);
-}
-void free_ds_constructor_dc_option (struct tl_ds_dc_option *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->flags, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->ip_address, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->port, field4);
-}
-void free_ds_constructor_decrypted_message (struct tl_ds_decrypted_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->random_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->ttl, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->message, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_decrypted_message_media (D->media, field4);
-}
-void free_ds_constructor_decrypted_message_service (struct tl_ds_decrypted_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->random_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_decrypted_message_action (D->action, field2);
-}
-void free_ds_constructor_decrypted_message_action_set_message_t_t_l (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->ttl_seconds, field1);
-}
-void free_ds_constructor_decrypted_message_action_read_messages (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->random_ids, field1);
-}
-void free_ds_constructor_decrypted_message_action_delete_messages (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->random_ids, field1);
-}
-void free_ds_constructor_decrypted_message_action_screenshot_messages (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->random_ids, field1);
-}
-void free_ds_constructor_decrypted_message_action_flush_history (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
-}
-void free_ds_constructor_decrypted_message_action_resend (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->start_seq_no, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->end_seq_no, field2);
-}
-void free_ds_constructor_decrypted_message_action_notify_layer (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->layer, field1);
-}
-void free_ds_constructor_decrypted_message_action_typing (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_send_message_action (D->action, field1);
-}
-void free_ds_constructor_decrypted_message_action_request_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->exchange_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->g_a, field2);
-}
-void free_ds_constructor_decrypted_message_action_accept_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->exchange_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->g_b, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->key_fingerprint, field3);
-}
-void free_ds_constructor_decrypted_message_action_abort_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->exchange_id, field1);
-}
-void free_ds_constructor_decrypted_message_action_commit_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->exchange_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->key_fingerprint, field2);
-}
-void free_ds_constructor_decrypted_message_action_noop (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
-}
-void free_ds_constructor_decrypted_message_layer (struct tl_ds_decrypted_message_layer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1be31789 && T->type->name != 0xe41ce876)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->random_bytes, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->layer, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->in_seq_no, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->out_seq_no, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x535b7918, .id = "DecryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_decrypted_message (D->message, field5);
-}
-void free_ds_constructor_decrypted_message_media_empty (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
-}
-void free_ds_constructor_decrypted_message_media_photo (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->str_thumb, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->thumb_w, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->thumb_h, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->w, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->h, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->key, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->iv, field8);
-}
-void free_ds_constructor_decrypted_message_media_geo_point (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_double (D->latitude, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_double (D->longitude, field2);
-}
-void free_ds_constructor_decrypted_message_media_contact (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->phone_number, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->first_name, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->last_name, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field4);
-}
-void free_ds_constructor_decrypted_message_media_document (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->str_thumb, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->thumb_w, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->thumb_h, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->file_name, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->mime_type, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->key, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->iv, field8);
-}
-void free_ds_constructor_decrypted_message_media_video (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->str_thumb, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->thumb_w, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->thumb_h, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->mime_type, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->w, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->h, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->key, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->iv, field10);
-}
-void free_ds_constructor_decrypted_message_media_audio (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->mime_type, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->key, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->iv, field5);
-}
-void free_ds_constructor_decrypted_message_media_external_document (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->mime_type, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo_size (D->thumb, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc_id, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->attributes, field8);
-}
-void free_ds_constructor_decrypted_message_media_video_l12 (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->str_thumb, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->thumb_w, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->thumb_h, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->w, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->h, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->key, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->iv, field9);
-}
-void free_ds_constructor_decrypted_message_media_audio_l12 (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->key, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->iv, field4);
-}
-void free_ds_constructor_dialog (struct tl_ds_dialog *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc1dd804a && T->type->name != 0x3e227fb5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_peer (D->peer, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->top_message, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->read_inbox_max_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->unread_count, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_peer_notify_settings (D->notify_settings, field5);
-}
-void free_ds_constructor_disabled_feature (struct tl_ds_disabled_feature *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae636f24 && T->type->name != 0x519c90db)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->feature, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->description, field2);
-}
-void free_ds_constructor_document_empty (struct tl_ds_document *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
-}
-void free_ds_constructor_document (struct tl_ds_document *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->mime_type, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo_size (D->thumb, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc_id, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->attributes, field8);
-}
-void free_ds_constructor_document_l19 (struct tl_ds_document *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->file_name, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->mime_type, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo_size (D->thumb, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc_id, field9);
-}
-void free_ds_constructor_document_attribute_image_size (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->w, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->h, field2);
-}
-void free_ds_constructor_document_attribute_animated (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
-}
-void free_ds_constructor_document_attribute_sticker_l28 (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->alt, field1);
-}
-void free_ds_constructor_document_attribute_sticker (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->alt, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_sticker_set (D->stickerset, field2);
-}
-void free_ds_constructor_document_attribute_video (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->w, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->h, field3);
-}
-void free_ds_constructor_document_attribute_audio (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field1);
-}
-void free_ds_constructor_document_attribute_filename (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->file_name, field1);
-}
-void free_ds_constructor_double (double *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2210c154 && T->type->name != 0xddef3eab)) { return; }
- tfree (D, sizeof (*D));
-}
-void free_ds_constructor_encrypted_chat_empty (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
-}
-void free_ds_constructor_encrypted_chat_waiting (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->admin_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->participant_id, field5);
-}
-void free_ds_constructor_encrypted_chat_requested (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->admin_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->participant_id, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->g_a, field6);
-}
-void free_ds_constructor_encrypted_chat (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->admin_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->participant_id, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->g_a_or_b, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->key_fingerprint, field7);
-}
-void free_ds_constructor_encrypted_chat_discarded (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
-}
-void free_ds_constructor_encrypted_file_empty (struct tl_ds_encrypted_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return; }
-}
-void free_ds_constructor_encrypted_file (struct tl_ds_encrypted_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->key_fingerprint, field5);
-}
-void free_ds_constructor_encrypted_message (struct tl_ds_encrypted_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->random_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->bytes, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_encrypted_file (D->file, field5);
-}
-void free_ds_constructor_encrypted_message_service (struct tl_ds_encrypted_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->random_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->bytes, field4);
-}
-void free_ds_constructor_error (struct tl_ds_error *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc4b9f9bb && T->type->name != 0x3b460644)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->code, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->text, field2);
-}
-void free_ds_constructor_chat_invite_empty (struct tl_ds_exported_chat_invite *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return; }
-}
-void free_ds_constructor_chat_invite_exported (struct tl_ds_exported_chat_invite *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->link, field1);
-}
-void free_ds_constructor_file_location_unavailable (struct tl_ds_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->volume_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->local_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->secret, field3);
-}
-void free_ds_constructor_file_location (struct tl_ds_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->volume_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->local_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->secret, field4);
-}
-void free_ds_constructor_geo_chat_message_empty (struct tl_ds_geo_chat_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
-}
-void free_ds_constructor_geo_chat_message (struct tl_ds_geo_chat_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->from_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->message, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_message_media (D->media, field6);
-}
-void free_ds_constructor_geo_chat_message_service (struct tl_ds_geo_chat_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->from_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_message_action (D->action, field5);
-}
-void free_ds_constructor_geo_point_empty (struct tl_ds_geo_point *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return; }
-}
-void free_ds_constructor_geo_point (struct tl_ds_geo_point *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_double (D->longitude, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_double (D->latitude, field2);
-}
-void free_ds_constructor_imported_contact (struct tl_ds_imported_contact *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd0028438 && T->type->name != 0x2ffd7bc7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->client_id, field2);
-}
-void free_ds_constructor_input_app_event (struct tl_ds_input_app_event *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x770656a8 && T->type->name != 0x88f9a957)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_double (D->time, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->type, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->peer, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->data, field4);
-}
-void free_ds_constructor_input_audio_empty (struct tl_ds_input_audio *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return; }
-}
-void free_ds_constructor_input_audio (struct tl_ds_input_audio *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_chat_photo_empty (struct tl_ds_input_chat_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return; }
-}
-void free_ds_constructor_input_chat_uploaded_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_photo_crop (D->crop, field2);
-}
-void free_ds_constructor_input_chat_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_photo (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_photo_crop (D->crop, field2);
-}
-void free_ds_constructor_input_phone_contact (struct tl_ds_input_contact *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf392b7f4 && T->type->name != 0x0c6d480b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->client_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->phone, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->first_name, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->last_name, field4);
-}
-void free_ds_constructor_input_document_empty (struct tl_ds_input_document *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return; }
-}
-void free_ds_constructor_input_document (struct tl_ds_input_document *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_encrypted_chat (struct tl_ds_input_encrypted_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf141b5e1 && T->type->name != 0x0ebe4a1e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_encrypted_file_empty (struct tl_ds_input_encrypted_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return; }
-}
-void free_ds_constructor_input_encrypted_file_uploaded (struct tl_ds_input_encrypted_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->parts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->md5_checksum, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->key_fingerprint, field4);
-}
-void free_ds_constructor_input_encrypted_file (struct tl_ds_input_encrypted_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_encrypted_file_big_uploaded (struct tl_ds_input_encrypted_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->parts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->key_fingerprint, field3);
-}
-void free_ds_constructor_input_file (struct tl_ds_input_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->parts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->name, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->md5_checksum, field4);
-}
-void free_ds_constructor_input_file_big (struct tl_ds_input_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->parts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->name, field3);
-}
-void free_ds_constructor_input_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->volume_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->local_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->secret, field3);
-}
-void free_ds_constructor_input_video_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_encrypted_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_audio_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_document_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_geo_chat (struct tl_ds_input_geo_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x74d456fa && T->type->name != 0x8b2ba905)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_geo_point_empty (struct tl_ds_input_geo_point *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return; }
-}
-void free_ds_constructor_input_geo_point (struct tl_ds_input_geo_point *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_double (D->latitude, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_double (D->longitude, field2);
-}
-void free_ds_constructor_input_media_empty (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
-}
-void free_ds_constructor_input_media_uploaded_photo (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->caption, field2);
-}
-void free_ds_constructor_input_media_photo (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_photo (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->caption, field2);
-}
-void free_ds_constructor_input_media_geo_point (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_geo_point (D->geo_point, field1);
-}
-void free_ds_constructor_input_media_contact (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->phone_number, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->first_name, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->last_name, field3);
-}
-void free_ds_constructor_input_media_uploaded_video (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->w, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->h, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->caption, field5);
-}
-void free_ds_constructor_input_media_uploaded_thumb_video (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_file (D->thumb, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->w, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->h, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->caption, field6);
-}
-void free_ds_constructor_input_media_video (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbb5f7a27, .id = "InputVideo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_video (D->video_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->caption, field2);
-}
-void free_ds_constructor_input_media_uploaded_audio (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->mime_type, field3);
-}
-void free_ds_constructor_input_media_audio (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae8e9c7b, .id = "InputAudio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_audio (D->audio_id, field1);
-}
-void free_ds_constructor_input_media_uploaded_document (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->mime_type, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->attributes, field3);
-}
-void free_ds_constructor_input_media_uploaded_thumb_document (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_file (D->thumb, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->mime_type, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->attributes, field4);
-}
-void free_ds_constructor_input_media_document (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6a8963fc, .id = "InputDocument", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_document (D->document_id, field1);
-}
-void free_ds_constructor_input_media_venue (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_geo_point (D->geo_point, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->address, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->provider, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->venue_id, field5);
-}
-void free_ds_constructor_input_notify_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_peer (D->peer, field1);
-}
-void free_ds_constructor_input_notify_users (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return; }
-}
-void free_ds_constructor_input_notify_chats (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return; }
-}
-void free_ds_constructor_input_notify_all (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return; }
-}
-void free_ds_constructor_input_notify_geo_chat_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_input_geo_chat (D->geo_peer, field1);
-}
-void free_ds_constructor_input_peer_empty (struct tl_ds_input_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return; }
-}
-void free_ds_constructor_input_peer_self (struct tl_ds_input_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return; }
-}
-void free_ds_constructor_input_peer_contact (struct tl_ds_input_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
-}
-void free_ds_constructor_input_peer_foreign (struct tl_ds_input_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_peer_chat (struct tl_ds_input_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
-}
-void free_ds_constructor_input_peer_notify_events_empty (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return; }
-}
-void free_ds_constructor_input_peer_notify_events_all (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return; }
-}
-void free_ds_constructor_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x46a2ce98 && T->type->name != 0xb95d3167)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->mute_until, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->sound, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->show_previews, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->events_mask, field4);
-}
-void free_ds_constructor_input_photo_empty (struct tl_ds_input_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return; }
-}
-void free_ds_constructor_input_photo (struct tl_ds_input_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_photo_crop_auto (struct tl_ds_input_photo_crop *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return; }
-}
-void free_ds_constructor_input_photo_crop (struct tl_ds_input_photo_crop *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_double (D->crop_left, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_double (D->crop_top, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_double (D->crop_width, field3);
-}
-void free_ds_constructor_input_privacy_key_status_timestamp (struct tl_ds_input_privacy_key *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4f96cb18 && T->type->name != 0xb06934e7)) { return; }
-}
-void free_ds_constructor_input_privacy_value_allow_contacts (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return; }
-}
-void free_ds_constructor_input_privacy_value_allow_all (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return; }
-}
-void free_ds_constructor_input_privacy_value_allow_users (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field1);
-}
-void free_ds_constructor_input_privacy_value_disallow_contacts (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return; }
-}
-void free_ds_constructor_input_privacy_value_disallow_all (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return; }
-}
-void free_ds_constructor_input_privacy_value_disallow_users (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field1);
-}
-void free_ds_constructor_input_sticker_set_empty (struct tl_ds_input_sticker_set *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return; }
-}
-void free_ds_constructor_input_sticker_set_i_d (struct tl_ds_input_sticker_set *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_sticker_set_short_name (struct tl_ds_input_sticker_set *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->short_name, field1);
-}
-void free_ds_constructor_input_user_empty (struct tl_ds_input_user *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return; }
-}
-void free_ds_constructor_input_user_self (struct tl_ds_input_user *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return; }
-}
-void free_ds_constructor_input_user_contact (struct tl_ds_input_user *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
-}
-void free_ds_constructor_input_user_foreign (struct tl_ds_input_user *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_input_video_empty (struct tl_ds_input_video *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return; }
-}
-void free_ds_constructor_input_video (struct tl_ds_input_video *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
-}
-void free_ds_constructor_int (int *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8509bda && T->type->name != 0x57af6425)) { return; }
- tfree (D, sizeof (*D));
-}
-void free_ds_constructor_int128 (struct tl_ds_int128 *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7d36c439 && T->type->name != 0x82c93bc6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->f0, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->f1, field2);
-}
-void free_ds_constructor_int256 (struct tl_ds_int256 *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf2c798b3 && T->type->name != 0x0d38674c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->f0, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->f1, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->f2, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->f3, field4);
-}
-void free_ds_constructor_keyboard_button (struct tl_ds_keyboard_button *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa2fa4880 && T->type->name != 0x5d05b77f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->text, field1);
-}
-void free_ds_constructor_keyboard_button_row (struct tl_ds_keyboard_button_row *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77608b83 && T->type->name != 0x889f747c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa2fa4880, .id = "KeyboardButton", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->buttons, field1);
-}
-void free_ds_constructor_long (long long *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22076cba && T->type->name != 0xddf89345)) { return; }
- tfree (D, sizeof (*D));
-}
-void free_ds_constructor_message_empty (struct tl_ds_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
-}
-void free_ds_constructor_message (struct tl_ds_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- tfree (D->flags, sizeof (*D->flags));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->from_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_peer (D->to_id, field4);
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->fwd_from_id, field5);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->fwd_date, field6);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->reply_to_msg_id, field7);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->message, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_message_media (D->media, field10);
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_reply_markup (D->reply_markup, field11);
- }
-}
-void free_ds_constructor_message_service (struct tl_ds_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->flags, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->from_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_peer (D->to_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_message_action (D->action, field6);
-}
-void free_ds_constructor_message_action_empty (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
-}
-void free_ds_constructor_message_action_chat_create (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field2);
-}
-void free_ds_constructor_message_action_chat_edit_title (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field1);
-}
-void free_ds_constructor_message_action_chat_edit_photo (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo (D->photo, field1);
-}
-void free_ds_constructor_message_action_chat_delete_photo (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
-}
-void free_ds_constructor_message_action_chat_add_user (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
-}
-void free_ds_constructor_message_action_chat_delete_user (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
-}
-void free_ds_constructor_message_action_geo_chat_create (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->address, field2);
-}
-void free_ds_constructor_message_action_geo_chat_checkin (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
-}
-void free_ds_constructor_message_action_chat_joined_by_link (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->inviter_id, field1);
-}
-void free_ds_constructor_message_media_empty (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
-}
-void free_ds_constructor_message_media_photo (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo (D->photo, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->caption, field2);
-}
-void free_ds_constructor_message_media_video (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_video (D->video, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->caption, field2);
-}
-void free_ds_constructor_message_media_geo (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_geo_point (D->geo, field1);
-}
-void free_ds_constructor_message_media_contact (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->phone_number, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->first_name, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->last_name, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field4);
-}
-void free_ds_constructor_message_media_unsupported (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
-}
-void free_ds_constructor_message_media_document (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_document (D->document, field1);
-}
-void free_ds_constructor_message_media_audio (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fc5ec4e, .id = "Audio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_audio (D->audio, field1);
-}
-void free_ds_constructor_message_media_web_page (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_web_page (D->webpage, field1);
-}
-void free_ds_constructor_message_media_venue (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_geo_point (D->geo, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->address, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->provider, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->venue_id, field5);
-}
-void free_ds_constructor_message_media_photo_l27 (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo (D->photo, field1);
-}
-void free_ds_constructor_message_media_video_l27 (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_video (D->video, field1);
-}
-void free_ds_constructor_input_messages_filter_empty (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void free_ds_constructor_input_messages_filter_photos (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void free_ds_constructor_input_messages_filter_video (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void free_ds_constructor_input_messages_filter_photo_video (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void free_ds_constructor_input_messages_filter_photo_video_documents (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void free_ds_constructor_input_messages_filter_document (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void free_ds_constructor_input_messages_filter_audio (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void free_ds_constructor_nearest_dc (struct tl_ds_nearest_dc *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8e1a1775 && T->type->name != 0x71e5e88a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->country, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->this_dc, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->nearest_dc, field3);
-}
-void free_ds_constructor_notify_peer (struct tl_ds_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_peer (D->peer, field1);
-}
-void free_ds_constructor_notify_users (struct tl_ds_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return; }
-}
-void free_ds_constructor_notify_chats (struct tl_ds_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return; }
-}
-void free_ds_constructor_notify_all (struct tl_ds_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return; }
-}
-void free_ds_constructor_null (struct tl_ds_null *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56730bcc && T->type->name != 0xa98cf433)) { return; }
-}
-void free_ds_constructor_p_q_inner_data (struct tl_ds_p_q_inner_data *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->pq, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->p, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->q, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->nonce, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->server_nonce, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int256 (D->new_nonce, field6);
-}
-void free_ds_constructor_p_q_inner_data_temp (struct tl_ds_p_q_inner_data *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->pq, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->p, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->q, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->nonce, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->server_nonce, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int256 (D->new_nonce, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->expires_in, field7);
-}
-void free_ds_constructor_peer_user (struct tl_ds_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
-}
-void free_ds_constructor_peer_chat (struct tl_ds_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
-}
-void free_ds_constructor_peer_notify_events_empty (struct tl_ds_peer_notify_events *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return; }
-}
-void free_ds_constructor_peer_notify_events_all (struct tl_ds_peer_notify_events *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return; }
-}
-void free_ds_constructor_peer_notify_settings_empty (struct tl_ds_peer_notify_settings *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return; }
-}
-void free_ds_constructor_peer_notify_settings (struct tl_ds_peer_notify_settings *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->mute_until, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->sound, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->show_previews, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->events_mask, field4);
-}
-void free_ds_constructor_photo_empty (struct tl_ds_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
-}
-void free_ds_constructor_photo (struct tl_ds_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_geo_point (D->geo, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->sizes, field6);
-}
-void free_ds_constructor_photo_l27 (struct tl_ds_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->caption, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_geo_point (D->geo, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->sizes, field7);
-}
-void free_ds_constructor_photo_size_empty (struct tl_ds_photo_size *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->type, field1);
-}
-void free_ds_constructor_photo_size (struct tl_ds_photo_size *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->type, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_file_location (D->location, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->w, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->h, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field5);
-}
-void free_ds_constructor_photo_cached_size (struct tl_ds_photo_size *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->type, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_file_location (D->location, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->w, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->h, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->bytes, field5);
-}
-void free_ds_constructor_privacy_key_status_timestamp (struct tl_ds_privacy_key *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbc2eab30 && T->type->name != 0x43d154cf)) { return; }
-}
-void free_ds_constructor_privacy_value_allow_contacts (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return; }
-}
-void free_ds_constructor_privacy_value_allow_all (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return; }
-}
-void free_ds_constructor_privacy_value_allow_users (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field1);
-}
-void free_ds_constructor_privacy_value_disallow_contacts (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return; }
-}
-void free_ds_constructor_privacy_value_disallow_all (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return; }
-}
-void free_ds_constructor_privacy_value_disallow_users (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field1);
-}
-void free_ds_constructor_received_notify_message (struct tl_ds_received_notify_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa384b779 && T->type->name != 0x5c7b4886)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->flags, field2);
-}
-void free_ds_constructor_reply_keyboard_hide (struct tl_ds_reply_markup *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->flags, field1);
-}
-void free_ds_constructor_reply_keyboard_force_reply (struct tl_ds_reply_markup *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->flags, field1);
-}
-void free_ds_constructor_reply_keyboard_markup (struct tl_ds_reply_markup *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->flags, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77608b83, .id = "KeyboardButtonRow", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->rows, field2);
-}
-void free_ds_constructor_res_p_q (struct tl_ds_res_p_q *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x05162463 && T->type->name != 0xfae9db9c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->pq, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->server_public_key_fingerprints, field4);
-}
-void free_ds_constructor_send_message_typing_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void free_ds_constructor_send_message_cancel_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void free_ds_constructor_send_message_record_video_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void free_ds_constructor_send_message_upload_video_action_l27 (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void free_ds_constructor_send_message_upload_video_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->progress, field1);
-}
-void free_ds_constructor_send_message_record_audio_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void free_ds_constructor_send_message_upload_audio_action_l27 (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void free_ds_constructor_send_message_upload_audio_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->progress, field1);
-}
-void free_ds_constructor_send_message_upload_photo_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->progress, field1);
-}
-void free_ds_constructor_send_message_upload_document_action_l27 (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void free_ds_constructor_send_message_upload_document_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->progress, field1);
-}
-void free_ds_constructor_send_message_geo_location_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void free_ds_constructor_send_message_choose_contact_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void free_ds_constructor_server_d_h_params_fail (struct tl_ds_server_d_h_params *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->new_nonce_hash, field3);
-}
-void free_ds_constructor_server_d_h_params_ok (struct tl_ds_server_d_h_params *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->encrypted_answer, field3);
-}
-void free_ds_constructor_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5890dba && T->type->name != 0x4a76f245)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->g, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->dh_prime, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->g_a, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->server_time, field6);
-}
-void free_ds_constructor_dh_gen_ok (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->new_nonce_hash1, field3);
-}
-void free_ds_constructor_dh_gen_retry (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->new_nonce_hash2, field3);
-}
-void free_ds_constructor_dh_gen_fail (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int128 (D->new_nonce_hash3, field3);
-}
-void free_ds_constructor_sticker_pack (struct tl_ds_sticker_pack *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x12b299d4 && T->type->name != 0xed4d662b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->emoticon, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->documents, field2);
-}
-void free_ds_constructor_sticker_set (struct tl_ds_sticker_set *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa7a43b17 && T->type->name != 0x585bc4e8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->short_name, field4);
-}
-void free_ds_constructor_string (struct tl_ds_string *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5286e24 && T->type->name != 0x4ad791db)) { return; }
- tfree (D->data, D->len + 1);
- tfree (D, sizeof (*D));
-}
-void free_ds_constructor_update_new_message (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_message (D->message, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts_count, field3);
-}
-void free_ds_constructor_update_message_i_d (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->random_id, field2);
-}
-void free_ds_constructor_update_delete_messages (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->messages, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts_count, field3);
-}
-void free_ds_constructor_update_user_typing (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_send_message_action (D->action, field2);
-}
-void free_ds_constructor_update_chat_user_typing (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_send_message_action (D->action, field3);
-}
-void free_ds_constructor_update_chat_participants (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_chat_participants (D->participants, field1);
-}
-void free_ds_constructor_update_user_status (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_user_status (D->status, field2);
-}
-void free_ds_constructor_update_user_name (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->first_name, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->last_name, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->username, field4);
-}
-void free_ds_constructor_update_user_photo (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_user_profile_photo (D->photo, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->previous, field4);
-}
-void free_ds_constructor_update_contact_registered (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field2);
-}
-void free_ds_constructor_update_contact_link (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_contact_link (D->my_link, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_contact_link (D->foreign_link, field3);
-}
-void free_ds_constructor_update_new_authorization (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->auth_key_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->device, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->location, field4);
-}
-void free_ds_constructor_update_new_geo_chat_message (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_geo_chat_message (D->geo_message, field1);
-}
-void free_ds_constructor_update_new_encrypted_message (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_encrypted_message (D->encr_message, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->qts, field2);
-}
-void free_ds_constructor_update_encrypted_chat_typing (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
-}
-void free_ds_constructor_update_encryption (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb1718213, .id = "EncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_encrypted_chat (D->encr_chat, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field2);
-}
-void free_ds_constructor_update_encrypted_messages_read (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->max_date, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field3);
-}
-void free_ds_constructor_update_chat_participant_add (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->inviter_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->version, field4);
-}
-void free_ds_constructor_update_chat_participant_delete (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->version, field3);
-}
-void free_ds_constructor_update_dc_options (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->dc_options, field1);
-}
-void free_ds_constructor_update_user_blocked (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->blocked, field2);
-}
-void free_ds_constructor_update_notify_settings (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fcb8237, .id = "NotifyPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_notify_peer (D->notify_peer, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_peer_notify_settings (D->notify_settings, field2);
-}
-void free_ds_constructor_update_service_notification (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->type, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->message_text, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_message_media (D->media, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->popup, field4);
-}
-void free_ds_constructor_update_privacy (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbc2eab30, .id = "PrivacyKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_privacy_key (D->key, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->rules, field2);
-}
-void free_ds_constructor_update_user_phone (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->phone, field2);
-}
-void free_ds_constructor_update_read_history_inbox (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_peer (D->peer, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->max_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts_count, field4);
-}
-void free_ds_constructor_update_read_history_outbox (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_peer (D->peer, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->max_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts_count, field4);
-}
-void free_ds_constructor_update_web_page (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_web_page (D->webpage, field1);
-}
-void free_ds_constructor_update_read_messages_contents (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->messages, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts_count, field3);
-}
-void free_ds_constructor_update_msg_update (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts_count, field3);
-}
-void free_ds_constructor_updates_too_long (struct tl_ds_updates *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return; }
-}
-void free_ds_constructor_update_short_message (struct tl_ds_updates *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- tfree (D->flags, sizeof (*D->flags));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->message, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts_count, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field7);
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->fwd_from_id, field8);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->fwd_date, field9);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->reply_to_msg_id, field10);
- }
-}
-void free_ds_constructor_update_short_chat_message (struct tl_ds_updates *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- tfree (D->flags, sizeof (*D->flags));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->from_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->chat_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->message, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts_count, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field8);
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->fwd_from_id, field9);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->fwd_date, field10);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->reply_to_msg_id, field11);
- }
-}
-void free_ds_constructor_update_short (struct tl_ds_updates *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_update (D->update, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field2);
-}
-void free_ds_constructor_updates_combined (struct tl_ds_updates *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->updates, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->seq_start, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->seq, field6);
-}
-void free_ds_constructor_updates (struct tl_ds_updates *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->updates, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->seq, field5);
-}
-void free_ds_constructor_user_empty (struct tl_ds_user *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
-}
-void free_ds_constructor_user (struct tl_ds_user *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- tfree (D->flags, sizeof (*D->flags));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field3);
- }
- if (PTR2INT (var0) & (1 << 1)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->first_name, field4);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->last_name, field5);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->username, field6);
- }
- if (PTR2INT (var0) & (1 << 4)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->phone, field7);
- }
- if (PTR2INT (var0) & (1 << 5)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_user_profile_photo (D->photo, field8);
- }
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_user_status (D->status, field9);
- }
- if (PTR2INT (var0) & (1 << 14)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->bot_info_version, field10);
- }
-}
-void free_ds_constructor_user_full (struct tl_ds_user_full *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5a89ac5b && T->type->name != 0xa57653a4)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_user (D->user, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_contacts_link (D->link, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo (D->profile_photo, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_peer_notify_settings (D->notify_settings, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->blocked, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bot_info (D->bot_info, field6);
-}
-void free_ds_constructor_user_profile_photo_empty (struct tl_ds_user_profile_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return; }
-}
-void free_ds_constructor_user_profile_photo (struct tl_ds_user_profile_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->photo_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_file_location (D->photo_small, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_file_location (D->photo_big, field3);
-}
-void free_ds_constructor_user_status_empty (struct tl_ds_user_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return; }
-}
-void free_ds_constructor_user_status_online (struct tl_ds_user_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->expires, field1);
-}
-void free_ds_constructor_user_status_offline (struct tl_ds_user_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->was_online, field1);
-}
-void free_ds_constructor_user_status_recently (struct tl_ds_user_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return; }
-}
-void free_ds_constructor_user_status_last_week (struct tl_ds_user_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return; }
-}
-void free_ds_constructor_user_status_last_month (struct tl_ds_user_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return; }
-}
-void free_ds_constructor_vector (struct tl_ds_vector *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1cb5c415 && T->type->name != 0xe34a3bea)) { return; }
- if (ODDP(T->params[0])) { return; }
- struct paramed_type *var0 = T->params[0]; assert (var0);
- struct paramed_type *var1 = INT2PTR (*D->f1);
- tfree (D->f1, sizeof (*D->f1));
- int multiplicity3 = PTR2INT (
- ((void *)var1) + 0 );
- struct paramed_type *field3 =
- var0;
- {
- int i = 0;
- while (i < multiplicity3) {
- free_ds_type_any (D->f2[i ++], field3);
- }
- }
- tfree (D->f2, sizeof (void *) * multiplicity3);
-}
-void free_ds_constructor_video_empty (struct tl_ds_video *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
-}
-void free_ds_constructor_video (struct tl_ds_video *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo_size (D->thumb, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc_id, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->w, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->h, field10);
-}
-void free_ds_constructor_video_l27 (struct tl_ds_video *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->caption, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->mime_type, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->size, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo_size (D->thumb, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc_id, field10);
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->w, field11);
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->h, field12);
-}
-void free_ds_constructor_wall_paper (struct tl_ds_wall_paper *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->sizes, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->color, field4);
-}
-void free_ds_constructor_wall_paper_solid (struct tl_ds_wall_paper *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->bg_color, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->color, field4);
-}
-void free_ds_constructor_web_page_empty (struct tl_ds_web_page *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
-}
-void free_ds_constructor_web_page_pending (struct tl_ds_web_page *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field2);
-}
-void free_ds_constructor_web_page (struct tl_ds_web_page *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- tfree (D->flags, sizeof (*D->flags));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->url, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->display_url, field4);
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->type, field5);
- }
- if (PTR2INT (var0) & (1 << 1)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->site_name, field6);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field7);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->description, field8);
- }
- if (PTR2INT (var0) & (1 << 4)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo (D->photo, field9);
- }
- if (PTR2INT (var0) & (1 << 5)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->embed_url, field10);
- }
- if (PTR2INT (var0) & (1 << 5)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->embed_type, field11);
- }
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->embed_width, field12);
- }
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->embed_height, field13);
- }
- if (PTR2INT (var0) & (1 << 7)) {
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->duration, field14);
- }
- if (PTR2INT (var0) & (1 << 8)) {
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->author, field15);
- }
-}
-void free_ds_constructor_account_authorizations (struct tl_ds_account_authorizations *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1250abde && T->type->name != 0xedaf5421)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bf2e6f6, .id = "Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->authorizations, field1);
-}
-void free_ds_constructor_account_no_password (struct tl_ds_account_password *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->new_salt, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->email_unconfirmed_pattern, field2);
-}
-void free_ds_constructor_account_password (struct tl_ds_account_password *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->current_salt, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->new_salt, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->hint, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->has_recovery, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->email_unconfirmed_pattern, field5);
-}
-void free_ds_constructor_account_password_input_settings (struct tl_ds_account_password_input_settings *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbcfc532c && T->type->name != 0x4303acd3)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- tfree (D->flags, sizeof (*D->flags));
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->new_salt, field2);
- }
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->new_password_hash, field3);
- }
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->hint, field4);
- }
- if (PTR2INT (var0) & (1 << 1)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->email, field5);
- }
-}
-void free_ds_constructor_account_password_settings (struct tl_ds_account_password_settings *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb7b72ab3 && T->type->name != 0x4848d54c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->email, field1);
-}
-void free_ds_constructor_account_privacy_rules (struct tl_ds_account_privacy_rules *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x554abb6f && T->type->name != 0xaab54490)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->rules, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field2);
-}
-void free_ds_constructor_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa4f58c4c && T->type->name != 0x5b0a73b3)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->phone_code_hash, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->send_call_timeout, field2);
-}
-void free_ds_constructor_auth_authorization (struct tl_ds_auth_authorization *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xff036af1 && T->type->name != 0x00fc950e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_user (D->user, field1);
-}
-void free_ds_constructor_auth_checked_phone (struct tl_ds_auth_checked_phone *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x811ea28e && T->type->name != 0x7ee15d71)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->phone_registered, field1);
-}
-void free_ds_constructor_auth_exported_authorization (struct tl_ds_auth_exported_authorization *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdf969c2d && T->type->name != 0x206963d2)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->bytes, field2);
-}
-void free_ds_constructor_auth_password_recovery (struct tl_ds_auth_password_recovery *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x137948a5 && T->type->name != 0xec86b75a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->email_pattern, field1);
-}
-void free_ds_constructor_auth_sent_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->phone_registered, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->phone_code_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->send_call_timeout, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->is_password, field4);
-}
-void free_ds_constructor_auth_sent_app_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->phone_registered, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->phone_code_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->send_call_timeout, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->is_password, field4);
-}
-void free_ds_constructor_binlog_encr_key (struct tl_ds_binlog_encr_key *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0377168f && T->type->name != 0xfc88e970)) { return; }
- int multiplicity1 = PTR2INT (
- INT2PTR (64) );
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- {
- int i = 0;
- while (i < multiplicity1) {
- free_ds_type_any (D->key[i ++], field1);
- }
- }
- tfree (D->key, sizeof (void *) * multiplicity1);
-}
-void free_ds_constructor_binlog_start (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
-}
-void free_ds_constructor_binlog_dc_option (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->name, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->ip, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->port, field4);
-}
-void free_ds_constructor_binlog_dc_option_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->flags, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->name, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->ip, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->port, field5);
-}
-void free_ds_constructor_binlog_auth_key (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_binlog_encr_key (D->key, field2);
-}
-void free_ds_constructor_binlog_default_dc (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc, field1);
-}
-void free_ds_constructor_binlog_dc_signed (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->dc, field1);
-}
-void free_ds_constructor_binlog_our_id (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
-}
-void free_ds_constructor_binlog_set_dh_params (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->root, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_binlog_encr_key (D->prime, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->version, field3);
-}
-void free_ds_constructor_binlog_set_pts (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field1);
-}
-void free_ds_constructor_binlog_set_qts (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->qts, field1);
-}
-void free_ds_constructor_binlog_set_date (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field1);
-}
-void free_ds_constructor_binlog_set_seq (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->seq, field1);
-}
-void free_ds_constructor_binlog_encr_chat_delete (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
-}
-void free_ds_constructor_binlog_encr_chat_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- tfree (D->flags, sizeof (*D->flags));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field3);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field4);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->admin, field5);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field6);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_binlog_encr_key (D->key, field7);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_binlog_encr_key (D->g_key, field8);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->state, field9);
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->ttl, field10);
- }
- if (PTR2INT (var0) & (1 << 25)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->layer, field11);
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->in_seq_no, field12);
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->last_in_seq_no, field13);
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->out_seq_no, field14);
- }
- if (PTR2INT (var0) & (1 << 27)) {
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->key_fingerprint, field15);
- }
-}
-void free_ds_constructor_binlog_encr_chat_exchange_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- tfree (D->flags, sizeof (*D->flags));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->exchange_id, field3);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_binlog_encr_key (D->key, field4);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->state, field5);
- }
-}
-void free_ds_constructor_binlog_user_delete (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
-}
-void free_ds_constructor_binlog_user_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- tfree (D->flags, sizeof (*D->flags));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->access_hash, field3);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->first_name, field4);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->last_name, field5);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->phone, field6);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->username, field7);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo (D->photo, field8);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->real_first_name, field9);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->real_last_name, field10);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_user_profile_photo (D->user_photo, field11);
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->last_read_in, field12);
- }
- if (PTR2INT (var0) & (1 << 25)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->last_read_out, field13);
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bot_info (D->bot_info, field14);
- }
-}
-void free_ds_constructor_binlog_chat_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- tfree (D->flags, sizeof (*D->flags));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->title, field3);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_num, field4);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field5);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->version, field6);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->participants, field7);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_chat_photo (D->chat_photo, field8);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo (D->photo, field9);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->admin, field10);
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->last_read_in, field11);
- }
- if (PTR2INT (var0) & (1 << 25)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->last_read_out, field12);
- }
-}
-void free_ds_constructor_binlog_chat_add_participant (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->version, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->inviter_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field5);
-}
-void free_ds_constructor_binlog_chat_del_participant (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->version, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->user_id, field3);
-}
-void free_ds_constructor_binlog_set_msg_id (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->old_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->new_id, field2);
-}
-void free_ds_constructor_binlog_message_delete (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->lid, field1);
-}
-void free_ds_constructor_binlog_message_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- tfree (D->flags, sizeof (*D->flags));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->lid, field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->from_id, field3);
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->to_type, field4);
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->to_id, field5);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->fwd_from_id, field6);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->fwd_date, field7);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field8);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->message, field9);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_message_media (D->media, field10);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_message_action (D->action, field11);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->reply_id, field12);
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_reply_markup (D->reply_markup, field13);
- }
-}
-void free_ds_constructor_binlog_message_encr_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- tfree (D->flags, sizeof (*D->flags));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->lid, field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->from_id, field3);
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->to_type, field4);
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->to_id, field5);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field6);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->message, field7);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_decrypted_message_media (D->encr_media, field8);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_decrypted_message_action (D->encr_action, field9);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_encrypted_file (D->file, field10);
- }
-}
-void free_ds_constructor_binlog_msg_update (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_long (D->lid, field1);
-}
-void free_ds_constructor_binlog_reset_authorization (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
-}
-void free_ds_constructor_contacts_blocked (struct tl_ds_contacts_blocked *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->blocked, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field2);
-}
-void free_ds_constructor_contacts_blocked_slice (struct tl_ds_contacts_blocked *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->count, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->blocked, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field3);
-}
-void free_ds_constructor_contacts_contacts_not_modified (struct tl_ds_contacts_contacts *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return; }
-}
-void free_ds_constructor_contacts_contacts (struct tl_ds_contacts_contacts *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf911c994, .id = "Contact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->contacts, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field2);
-}
-void free_ds_constructor_contacts_found (struct tl_ds_contacts_found *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0566000e && T->type->name != 0xfa99fff1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xea879f95, .id = "ContactFound", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->results, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field2);
-}
-void free_ds_constructor_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xad524315 && T->type->name != 0x52adbcea)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xd0028438, .id = "ImportedContact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->imported, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->retry_contacts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field3);
-}
-void free_ds_constructor_contacts_link (struct tl_ds_contacts_link *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3ace484c && T->type->name != 0xc531b7b3)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_contact_link (D->my_link, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_contact_link (D->foreign_link, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_user (D->user, field3);
-}
-void free_ds_constructor_contacts_suggested (struct tl_ds_contacts_suggested *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5649dcc5 && T->type->name != 0xa9b6233a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3de191a1, .id = "ContactSuggested", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->results, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field2);
-}
-void free_ds_constructor_geochats_located (struct tl_ds_geochats_located *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x48feb267 && T->type->name != 0xb7014d98)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3631cf4c, .id = "ChatLocated", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->results, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->messages, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field4);
-}
-void free_ds_constructor_geochats_messages (struct tl_ds_geochats_messages *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->messages, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field3);
-}
-void free_ds_constructor_geochats_messages_slice (struct tl_ds_geochats_messages *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->count, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->messages, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field4);
-}
-void free_ds_constructor_geochats_stated_message (struct tl_ds_geochats_stated_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17b1578b && T->type->name != 0xe84ea874)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_geo_chat_message (D->message, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->seq, field4);
-}
-void free_ds_constructor_help_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bool (D->critical, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->url, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->text, field4);
-}
-void free_ds_constructor_help_no_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return; }
-}
-void free_ds_constructor_help_invite_text (struct tl_ds_help_invite_text *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x18cb9f78 && T->type->name != 0xe7346087)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->message, field1);
-}
-void free_ds_constructor_help_support (struct tl_ds_help_support *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17c6b5f6 && T->type->name != 0xe8394a09)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->phone_number, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_user (D->user, field2);
-}
-void free_ds_constructor_messages_affected_history (struct tl_ds_messages_affected_history *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb45c69d1 && T->type->name != 0x4ba3962e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts_count, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->offset, field3);
-}
-void free_ds_constructor_messages_affected_messages (struct tl_ds_messages_affected_messages *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x84d19185 && T->type->name != 0x7b2e6e7a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts_count, field2);
-}
-void free_ds_constructor_messages_all_stickers_not_modified (struct tl_ds_messages_all_stickers *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return; }
-}
-void free_ds_constructor_messages_all_stickers (struct tl_ds_messages_all_stickers *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->hash, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->packs, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->sets, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->documents, field4);
-}
-void free_ds_constructor_messages_chat_full (struct tl_ds_messages_chat_full *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe5d7d19c && T->type->name != 0x1a282e63)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02a614, .id = "ChatFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_chat_full (D->full_chat, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field3);
-}
-void free_ds_constructor_messages_chats (struct tl_ds_messages_chats *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x64ff9fd5 && T->type->name != 0x9b00602a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field1);
-}
-void free_ds_constructor_messages_dh_config_not_modified (struct tl_ds_messages_dh_config *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->random, field1);
-}
-void free_ds_constructor_messages_dh_config (struct tl_ds_messages_dh_config *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->g, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->p, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->version, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->random, field4);
-}
-void free_ds_constructor_messages_dialogs (struct tl_ds_messages_dialogs *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->dialogs, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->messages, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field4);
-}
-void free_ds_constructor_messages_dialogs_slice (struct tl_ds_messages_dialogs *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->count, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->dialogs, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->messages, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field5);
-}
-void free_ds_constructor_messages_message_empty (struct tl_ds_messages_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3f4e0648 && T->type->name != 0xc0b1f9b7)) { return; }
-}
-void free_ds_constructor_messages_messages (struct tl_ds_messages_messages *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->messages, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field3);
-}
-void free_ds_constructor_messages_messages_slice (struct tl_ds_messages_messages *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->count, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->messages, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field4);
-}
-void free_ds_constructor_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field1);
-}
-void free_ds_constructor_messages_sent_encrypted_file (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_encrypted_file (D->file, field2);
-}
-void free_ds_constructor_messages_sent_message (struct tl_ds_messages_sent_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_message_media (D->media, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts_count, field5);
-}
-void free_ds_constructor_messages_sent_message_link (struct tl_ds_messages_sent_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_message_media (D->media, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts_count, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->links, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->seq, field7);
-}
-void free_ds_constructor_messages_sticker_set (struct tl_ds_messages_sticker_set *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb60a24a6 && T->type->name != 0x49f5db59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_sticker_set (D->set, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->packs, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->documents, field3);
-}
-void free_ds_constructor_messages_stickers_not_modified (struct tl_ds_messages_stickers *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return; }
-}
-void free_ds_constructor_messages_stickers (struct tl_ds_messages_stickers *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_string (D->hash, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->stickers, field2);
-}
-void free_ds_constructor_photos_photo (struct tl_ds_photos_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x20212ca8 && T->type->name != 0xdfded357)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_photo (D->photo, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field2);
-}
-void free_ds_constructor_photos_photos (struct tl_ds_photos_photos *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->photos, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field2);
-}
-void free_ds_constructor_photos_photos_slice (struct tl_ds_photos_photos *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->count, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->photos, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field3);
-}
-void free_ds_constructor_storage_file_unknown (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void free_ds_constructor_storage_file_jpeg (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void free_ds_constructor_storage_file_gif (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void free_ds_constructor_storage_file_png (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void free_ds_constructor_storage_file_pdf (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void free_ds_constructor_storage_file_mp3 (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void free_ds_constructor_storage_file_mov (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void free_ds_constructor_storage_file_partial (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void free_ds_constructor_storage_file_mp4 (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void free_ds_constructor_storage_file_webp (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void free_ds_constructor_updates_difference_empty (struct tl_ds_updates_difference *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->seq, field2);
-}
-void free_ds_constructor_updates_difference (struct tl_ds_updates_difference *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->new_messages, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->new_encrypted_messages, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->other_updates, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_updates_state (D->state, field6);
-}
-void free_ds_constructor_updates_difference_slice (struct tl_ds_updates_difference *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->new_messages, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->new_encrypted_messages, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->other_updates, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->chats, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- free_ds_type_any (D->users, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_updates_state (D->intermediate_state, field6);
-}
-void free_ds_constructor_updates_state (struct tl_ds_updates_state *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa56c2a3e && T->type->name != 0x5a93d5c1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->pts, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->qts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->seq, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->unread_count, field5);
-}
-void free_ds_constructor_upload_file (struct tl_ds_upload_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x096a18d5 && T->type->name != 0xf695e72a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3e2838a8, .id = "storage.FileType", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_storage_file_type (D->type, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_int (D->mtime, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- free_ds_type_bytes (D->bytes, field3);
-}
-void free_ds_type_account_days_t_t_l (struct tl_ds_account_days_t_t_l *D, struct paramed_type *T) {
- free_ds_constructor_account_days_t_t_l (D, T); return;
-}
-void free_ds_type_audio (struct tl_ds_audio *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x586988d8: free_ds_constructor_audio_empty (D, T); return;
- case 0xc7ac6496: free_ds_constructor_audio (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_authorization (struct tl_ds_authorization *D, struct paramed_type *T) {
- free_ds_constructor_authorization (D, T); return;
-}
-void free_ds_type_bool (struct tl_ds_bool *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xbc799737: free_ds_constructor_bool_false (D, T); return;
- case 0x997275b5: free_ds_constructor_bool_true (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_bot_command (struct tl_ds_bot_command *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xc27ac8c7: free_ds_constructor_bot_command (D, T); return;
- case 0xb79d22ab: free_ds_constructor_bot_command_old (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_bot_info (struct tl_ds_bot_info *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xbb2e37ce: free_ds_constructor_bot_info_empty (D, T); return;
- case 0x09cf585d: free_ds_constructor_bot_info (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_bytes (struct tl_ds_string *D, struct paramed_type *T) {
- free_ds_constructor_bytes (D, T); return;
-}
-void free_ds_type_chat (struct tl_ds_chat *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x9ba2d800: free_ds_constructor_chat_empty (D, T); return;
- case 0x6e9c9bc7: free_ds_constructor_chat (D, T); return;
- case 0xfb0ccc41: free_ds_constructor_chat_forbidden (D, T); return;
- case 0x75eaea5a: free_ds_constructor_geo_chat (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_chat_full (struct tl_ds_chat_full *D, struct paramed_type *T) {
- free_ds_constructor_chat_full (D, T); return;
-}
-void free_ds_type_chat_invite (struct tl_ds_chat_invite *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x5a686d7c: free_ds_constructor_chat_invite_already (D, T); return;
- case 0xce917dcd: free_ds_constructor_chat_invite (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_chat_located (struct tl_ds_chat_located *D, struct paramed_type *T) {
- free_ds_constructor_chat_located (D, T); return;
-}
-void free_ds_type_chat_participant (struct tl_ds_chat_participant *D, struct paramed_type *T) {
- free_ds_constructor_chat_participant (D, T); return;
-}
-void free_ds_type_chat_participants (struct tl_ds_chat_participants *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x0fd2bb8a: free_ds_constructor_chat_participants_forbidden (D, T); return;
- case 0x7841b415: free_ds_constructor_chat_participants (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_chat_photo (struct tl_ds_chat_photo *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x37c1011c: free_ds_constructor_chat_photo_empty (D, T); return;
- case 0x6153276a: free_ds_constructor_chat_photo (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *D, struct paramed_type *T) {
- free_ds_constructor_client_d_h_inner_data (D, T); return;
-}
-void free_ds_type_config (struct tl_ds_config *D, struct paramed_type *T) {
- free_ds_constructor_config (D, T); return;
-}
-void free_ds_type_contact (struct tl_ds_contact *D, struct paramed_type *T) {
- free_ds_constructor_contact (D, T); return;
-}
-void free_ds_type_contact_blocked (struct tl_ds_contact_blocked *D, struct paramed_type *T) {
- free_ds_constructor_contact_blocked (D, T); return;
-}
-void free_ds_type_contact_found (struct tl_ds_contact_found *D, struct paramed_type *T) {
- free_ds_constructor_contact_found (D, T); return;
-}
-void free_ds_type_contact_link (struct tl_ds_contact_link *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x5f4f9247: free_ds_constructor_contact_link_unknown (D, T); return;
- case 0xfeedd3ad: free_ds_constructor_contact_link_none (D, T); return;
- case 0x268f3f59: free_ds_constructor_contact_link_has_phone (D, T); return;
- case 0xd502c2d0: free_ds_constructor_contact_link_contact (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_contact_status (struct tl_ds_contact_status *D, struct paramed_type *T) {
- free_ds_constructor_contact_status (D, T); return;
-}
-void free_ds_type_contact_suggested (struct tl_ds_contact_suggested *D, struct paramed_type *T) {
- free_ds_constructor_contact_suggested (D, T); return;
-}
-void free_ds_type_dc_option (struct tl_ds_dc_option *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x2ec2a43c: free_ds_constructor_dc_option_l28 (D, T); return;
- case 0x05d8c6cc: free_ds_constructor_dc_option (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_decrypted_message (struct tl_ds_decrypted_message *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x204d3878: free_ds_constructor_decrypted_message (D, T); return;
- case 0x73164160: free_ds_constructor_decrypted_message_service (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_decrypted_message_action (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xa1733aec: free_ds_constructor_decrypted_message_action_set_message_t_t_l (D, T); return;
- case 0x0c4f40be: free_ds_constructor_decrypted_message_action_read_messages (D, T); return;
- case 0x65614304: free_ds_constructor_decrypted_message_action_delete_messages (D, T); return;
- case 0x8ac1f475: free_ds_constructor_decrypted_message_action_screenshot_messages (D, T); return;
- case 0x6719e45c: free_ds_constructor_decrypted_message_action_flush_history (D, T); return;
- case 0x511110b0: free_ds_constructor_decrypted_message_action_resend (D, T); return;
- case 0xf3048883: free_ds_constructor_decrypted_message_action_notify_layer (D, T); return;
- case 0xccb27641: free_ds_constructor_decrypted_message_action_typing (D, T); return;
- case 0xf3c9611b: free_ds_constructor_decrypted_message_action_request_key (D, T); return;
- case 0x6fe1735b: free_ds_constructor_decrypted_message_action_accept_key (D, T); return;
- case 0xdd05ec6b: free_ds_constructor_decrypted_message_action_abort_key (D, T); return;
- case 0xec2e0b9b: free_ds_constructor_decrypted_message_action_commit_key (D, T); return;
- case 0xa82fdd63: free_ds_constructor_decrypted_message_action_noop (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_decrypted_message_layer (struct tl_ds_decrypted_message_layer *D, struct paramed_type *T) {
- free_ds_constructor_decrypted_message_layer (D, T); return;
-}
-void free_ds_type_decrypted_message_media (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x089f5c4a: free_ds_constructor_decrypted_message_media_empty (D, T); return;
- case 0x32798a8c: free_ds_constructor_decrypted_message_media_photo (D, T); return;
- case 0x35480a59: free_ds_constructor_decrypted_message_media_geo_point (D, T); return;
- case 0x588a0a97: free_ds_constructor_decrypted_message_media_contact (D, T); return;
- case 0xb095434b: free_ds_constructor_decrypted_message_media_document (D, T); return;
- case 0x524a415d: free_ds_constructor_decrypted_message_media_video (D, T); return;
- case 0x57e0a9cb: free_ds_constructor_decrypted_message_media_audio (D, T); return;
- case 0xfa95b0dd: free_ds_constructor_decrypted_message_media_external_document (D, T); return;
- case 0x4cee6ef3: free_ds_constructor_decrypted_message_media_video_l12 (D, T); return;
- case 0x6080758f: free_ds_constructor_decrypted_message_media_audio_l12 (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_dialog (struct tl_ds_dialog *D, struct paramed_type *T) {
- free_ds_constructor_dialog (D, T); return;
-}
-void free_ds_type_disabled_feature (struct tl_ds_disabled_feature *D, struct paramed_type *T) {
- free_ds_constructor_disabled_feature (D, T); return;
-}
-void free_ds_type_document (struct tl_ds_document *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x36f8c871: free_ds_constructor_document_empty (D, T); return;
- case 0xf9a39f4f: free_ds_constructor_document (D, T); return;
- case 0x9efc6326: free_ds_constructor_document_l19 (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_document_attribute (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x6c37c15c: free_ds_constructor_document_attribute_image_size (D, T); return;
- case 0x11b58939: free_ds_constructor_document_attribute_animated (D, T); return;
- case 0x994c9882: free_ds_constructor_document_attribute_sticker_l28 (D, T); return;
- case 0x3a556302: free_ds_constructor_document_attribute_sticker (D, T); return;
- case 0x5910cccb: free_ds_constructor_document_attribute_video (D, T); return;
- case 0x051448e5: free_ds_constructor_document_attribute_audio (D, T); return;
- case 0x15590068: free_ds_constructor_document_attribute_filename (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_double (double *D, struct paramed_type *T) {
- free_ds_constructor_double (D, T); return;
-}
-void free_ds_type_encrypted_chat (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xab7ec0a0: free_ds_constructor_encrypted_chat_empty (D, T); return;
- case 0x3bf703dc: free_ds_constructor_encrypted_chat_waiting (D, T); return;
- case 0xc878527e: free_ds_constructor_encrypted_chat_requested (D, T); return;
- case 0xfa56ce36: free_ds_constructor_encrypted_chat (D, T); return;
- case 0x13d6dd27: free_ds_constructor_encrypted_chat_discarded (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_encrypted_file (struct tl_ds_encrypted_file *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xc21f497e: free_ds_constructor_encrypted_file_empty (D, T); return;
- case 0x4a70994c: free_ds_constructor_encrypted_file (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_encrypted_message (struct tl_ds_encrypted_message *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xed18c118: free_ds_constructor_encrypted_message (D, T); return;
- case 0x23734b06: free_ds_constructor_encrypted_message_service (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_error (struct tl_ds_error *D, struct paramed_type *T) {
- free_ds_constructor_error (D, T); return;
-}
-void free_ds_type_exported_chat_invite (struct tl_ds_exported_chat_invite *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x69df3769: free_ds_constructor_chat_invite_empty (D, T); return;
- case 0xfc2e05bc: free_ds_constructor_chat_invite_exported (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_file_location (struct tl_ds_file_location *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x7c596b46: free_ds_constructor_file_location_unavailable (D, T); return;
- case 0x53d69076: free_ds_constructor_file_location (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_geo_chat_message (struct tl_ds_geo_chat_message *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x60311a9b: free_ds_constructor_geo_chat_message_empty (D, T); return;
- case 0x4505f8e1: free_ds_constructor_geo_chat_message (D, T); return;
- case 0xd34fa24e: free_ds_constructor_geo_chat_message_service (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_geo_point (struct tl_ds_geo_point *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x1117dd5f: free_ds_constructor_geo_point_empty (D, T); return;
- case 0x2049d70c: free_ds_constructor_geo_point (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_imported_contact (struct tl_ds_imported_contact *D, struct paramed_type *T) {
- free_ds_constructor_imported_contact (D, T); return;
-}
-void free_ds_type_input_app_event (struct tl_ds_input_app_event *D, struct paramed_type *T) {
- free_ds_constructor_input_app_event (D, T); return;
-}
-void free_ds_type_input_audio (struct tl_ds_input_audio *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xd95adc84: free_ds_constructor_input_audio_empty (D, T); return;
- case 0x77d440ff: free_ds_constructor_input_audio (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_chat_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x1ca48f57: free_ds_constructor_input_chat_photo_empty (D, T); return;
- case 0x94254732: free_ds_constructor_input_chat_uploaded_photo (D, T); return;
- case 0xb2e1bf08: free_ds_constructor_input_chat_photo (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_contact (struct tl_ds_input_contact *D, struct paramed_type *T) {
- free_ds_constructor_input_phone_contact (D, T); return;
-}
-void free_ds_type_input_document (struct tl_ds_input_document *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x72f0eaae: free_ds_constructor_input_document_empty (D, T); return;
- case 0x18798952: free_ds_constructor_input_document (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_encrypted_chat (struct tl_ds_input_encrypted_chat *D, struct paramed_type *T) {
- free_ds_constructor_input_encrypted_chat (D, T); return;
-}
-void free_ds_type_input_encrypted_file (struct tl_ds_input_encrypted_file *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x1837c364: free_ds_constructor_input_encrypted_file_empty (D, T); return;
- case 0x64bd0306: free_ds_constructor_input_encrypted_file_uploaded (D, T); return;
- case 0x5a17b5e5: free_ds_constructor_input_encrypted_file (D, T); return;
- case 0x2dc173c8: free_ds_constructor_input_encrypted_file_big_uploaded (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_file (struct tl_ds_input_file *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xf52ff27f: free_ds_constructor_input_file (D, T); return;
- case 0xfa4f0bb5: free_ds_constructor_input_file_big (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x14637196: free_ds_constructor_input_file_location (D, T); return;
- case 0x3d0364ec: free_ds_constructor_input_video_file_location (D, T); return;
- case 0xf5235d55: free_ds_constructor_input_encrypted_file_location (D, T); return;
- case 0x74dc404d: free_ds_constructor_input_audio_file_location (D, T); return;
- case 0x4e45abe9: free_ds_constructor_input_document_file_location (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_geo_chat (struct tl_ds_input_geo_chat *D, struct paramed_type *T) {
- free_ds_constructor_input_geo_chat (D, T); return;
-}
-void free_ds_type_input_geo_point (struct tl_ds_input_geo_point *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xe4c123d6: free_ds_constructor_input_geo_point_empty (D, T); return;
- case 0xf3b7acc9: free_ds_constructor_input_geo_point (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_media (struct tl_ds_input_media *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x9664f57f: free_ds_constructor_input_media_empty (D, T); return;
- case 0xf7aff1c0: free_ds_constructor_input_media_uploaded_photo (D, T); return;
- case 0xe9bfb4f3: free_ds_constructor_input_media_photo (D, T); return;
- case 0xf9c44144: free_ds_constructor_input_media_geo_point (D, T); return;
- case 0xa6e45987: free_ds_constructor_input_media_contact (D, T); return;
- case 0xe13fd4bc: free_ds_constructor_input_media_uploaded_video (D, T); return;
- case 0x96fb97dc: free_ds_constructor_input_media_uploaded_thumb_video (D, T); return;
- case 0x936a4ebd: free_ds_constructor_input_media_video (D, T); return;
- case 0x4e498cab: free_ds_constructor_input_media_uploaded_audio (D, T); return;
- case 0x89938781: free_ds_constructor_input_media_audio (D, T); return;
- case 0xffe76b78: free_ds_constructor_input_media_uploaded_document (D, T); return;
- case 0x41481486: free_ds_constructor_input_media_uploaded_thumb_document (D, T); return;
- case 0xd184e841: free_ds_constructor_input_media_document (D, T); return;
- case 0x2827a81a: free_ds_constructor_input_media_venue (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_notify_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xb8bc5b0c: free_ds_constructor_input_notify_peer (D, T); return;
- case 0x193b4417: free_ds_constructor_input_notify_users (D, T); return;
- case 0x4a95e84e: free_ds_constructor_input_notify_chats (D, T); return;
- case 0xa429b886: free_ds_constructor_input_notify_all (D, T); return;
- case 0x4d8ddec8: free_ds_constructor_input_notify_geo_chat_peer (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_peer (struct tl_ds_input_peer *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x7f3b18ea: free_ds_constructor_input_peer_empty (D, T); return;
- case 0x7da07ec9: free_ds_constructor_input_peer_self (D, T); return;
- case 0x1023dbe8: free_ds_constructor_input_peer_contact (D, T); return;
- case 0x9b447325: free_ds_constructor_input_peer_foreign (D, T); return;
- case 0x179be863: free_ds_constructor_input_peer_chat (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_peer_notify_events (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xf03064d8: free_ds_constructor_input_peer_notify_events_empty (D, T); return;
- case 0xe86a2c74: free_ds_constructor_input_peer_notify_events_all (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *D, struct paramed_type *T) {
- free_ds_constructor_input_peer_notify_settings (D, T); return;
-}
-void free_ds_type_input_photo (struct tl_ds_input_photo *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x1cd7bf0d: free_ds_constructor_input_photo_empty (D, T); return;
- case 0xfb95c6c4: free_ds_constructor_input_photo (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_photo_crop (struct tl_ds_input_photo_crop *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xade6b004: free_ds_constructor_input_photo_crop_auto (D, T); return;
- case 0xd9915325: free_ds_constructor_input_photo_crop (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_privacy_key (struct tl_ds_input_privacy_key *D, struct paramed_type *T) {
- free_ds_constructor_input_privacy_key_status_timestamp (D, T); return;
-}
-void free_ds_type_input_privacy_rule (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x0d09e07b: free_ds_constructor_input_privacy_value_allow_contacts (D, T); return;
- case 0x184b35ce: free_ds_constructor_input_privacy_value_allow_all (D, T); return;
- case 0x131cc67f: free_ds_constructor_input_privacy_value_allow_users (D, T); return;
- case 0x0ba52007: free_ds_constructor_input_privacy_value_disallow_contacts (D, T); return;
- case 0xd66b66c9: free_ds_constructor_input_privacy_value_disallow_all (D, T); return;
- case 0x90110467: free_ds_constructor_input_privacy_value_disallow_users (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_sticker_set (struct tl_ds_input_sticker_set *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xffb62b95: free_ds_constructor_input_sticker_set_empty (D, T); return;
- case 0x9de7a269: free_ds_constructor_input_sticker_set_i_d (D, T); return;
- case 0x861cc8a0: free_ds_constructor_input_sticker_set_short_name (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_user (struct tl_ds_input_user *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xb98886cf: free_ds_constructor_input_user_empty (D, T); return;
- case 0xf7c1b13f: free_ds_constructor_input_user_self (D, T); return;
- case 0x86e94f65: free_ds_constructor_input_user_contact (D, T); return;
- case 0x655e74ff: free_ds_constructor_input_user_foreign (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_input_video (struct tl_ds_input_video *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x5508ec75: free_ds_constructor_input_video_empty (D, T); return;
- case 0xee579652: free_ds_constructor_input_video (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_int (int *D, struct paramed_type *T) {
- free_ds_constructor_int (D, T); return;
-}
-void free_ds_type_int128 (struct tl_ds_int128 *D, struct paramed_type *T) {
- free_ds_constructor_int128 (D, T); return;
-}
-void free_ds_type_int256 (struct tl_ds_int256 *D, struct paramed_type *T) {
- free_ds_constructor_int256 (D, T); return;
-}
-void free_ds_type_keyboard_button (struct tl_ds_keyboard_button *D, struct paramed_type *T) {
- free_ds_constructor_keyboard_button (D, T); return;
-}
-void free_ds_type_keyboard_button_row (struct tl_ds_keyboard_button_row *D, struct paramed_type *T) {
- free_ds_constructor_keyboard_button_row (D, T); return;
-}
-void free_ds_type_long (long long *D, struct paramed_type *T) {
- free_ds_constructor_long (D, T); return;
-}
-void free_ds_type_message (struct tl_ds_message *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x83e5de54: free_ds_constructor_message_empty (D, T); return;
- case 0xc3060325: free_ds_constructor_message (D, T); return;
- case 0x1d86f70e: free_ds_constructor_message_service (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_message_action (struct tl_ds_message_action *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xb6aef7b0: free_ds_constructor_message_action_empty (D, T); return;
- case 0xa6638b9a: free_ds_constructor_message_action_chat_create (D, T); return;
- case 0xb5a1ce5a: free_ds_constructor_message_action_chat_edit_title (D, T); return;
- case 0x7fcb13a8: free_ds_constructor_message_action_chat_edit_photo (D, T); return;
- case 0x95e3fbef: free_ds_constructor_message_action_chat_delete_photo (D, T); return;
- case 0x5e3cfc4b: free_ds_constructor_message_action_chat_add_user (D, T); return;
- case 0xb2ae9b0c: free_ds_constructor_message_action_chat_delete_user (D, T); return;
- case 0x6f038ebc: free_ds_constructor_message_action_geo_chat_create (D, T); return;
- case 0x0c7d53de: free_ds_constructor_message_action_geo_chat_checkin (D, T); return;
- case 0xf89cf5e8: free_ds_constructor_message_action_chat_joined_by_link (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_message_media (struct tl_ds_message_media *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x3ded6320: free_ds_constructor_message_media_empty (D, T); return;
- case 0x3d8ce53d: free_ds_constructor_message_media_photo (D, T); return;
- case 0x5bcf1675: free_ds_constructor_message_media_video (D, T); return;
- case 0x56e0d474: free_ds_constructor_message_media_geo (D, T); return;
- case 0x5e7d2f39: free_ds_constructor_message_media_contact (D, T); return;
- case 0x9f84f49e: free_ds_constructor_message_media_unsupported (D, T); return;
- case 0x2fda2204: free_ds_constructor_message_media_document (D, T); return;
- case 0xc6b68300: free_ds_constructor_message_media_audio (D, T); return;
- case 0xa32dd600: free_ds_constructor_message_media_web_page (D, T); return;
- case 0x7912b71f: free_ds_constructor_message_media_venue (D, T); return;
- case 0xc8c45a2a: free_ds_constructor_message_media_photo_l27 (D, T); return;
- case 0xa2d24290: free_ds_constructor_message_media_video_l27 (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_messages_filter (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x57e2f66c: free_ds_constructor_input_messages_filter_empty (D, T); return;
- case 0x9609a51c: free_ds_constructor_input_messages_filter_photos (D, T); return;
- case 0x9fc00e65: free_ds_constructor_input_messages_filter_video (D, T); return;
- case 0x56e9f0e4: free_ds_constructor_input_messages_filter_photo_video (D, T); return;
- case 0xd95e73bb: free_ds_constructor_input_messages_filter_photo_video_documents (D, T); return;
- case 0x9eddf188: free_ds_constructor_input_messages_filter_document (D, T); return;
- case 0xcfc87522: free_ds_constructor_input_messages_filter_audio (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_nearest_dc (struct tl_ds_nearest_dc *D, struct paramed_type *T) {
- free_ds_constructor_nearest_dc (D, T); return;
-}
-void free_ds_type_notify_peer (struct tl_ds_notify_peer *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x9fd40bd8: free_ds_constructor_notify_peer (D, T); return;
- case 0xb4c83b4c: free_ds_constructor_notify_users (D, T); return;
- case 0xc007cec3: free_ds_constructor_notify_chats (D, T); return;
- case 0x74d07c60: free_ds_constructor_notify_all (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_null (struct tl_ds_null *D, struct paramed_type *T) {
- free_ds_constructor_null (D, T); return;
-}
-void free_ds_type_p_q_inner_data (struct tl_ds_p_q_inner_data *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x83c95aec: free_ds_constructor_p_q_inner_data (D, T); return;
- case 0x3c6a84d4: free_ds_constructor_p_q_inner_data_temp (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_peer (struct tl_ds_peer *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x9db1bc6d: free_ds_constructor_peer_user (D, T); return;
- case 0xbad0e5bb: free_ds_constructor_peer_chat (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_peer_notify_events (struct tl_ds_peer_notify_events *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xadd53cb3: free_ds_constructor_peer_notify_events_empty (D, T); return;
- case 0x6d1ded88: free_ds_constructor_peer_notify_events_all (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_peer_notify_settings (struct tl_ds_peer_notify_settings *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x70a68512: free_ds_constructor_peer_notify_settings_empty (D, T); return;
- case 0x8d5e11ee: free_ds_constructor_peer_notify_settings (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_photo (struct tl_ds_photo *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x2331b22d: free_ds_constructor_photo_empty (D, T); return;
- case 0xc3838076: free_ds_constructor_photo (D, T); return;
- case 0x22b56751: free_ds_constructor_photo_l27 (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_photo_size (struct tl_ds_photo_size *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x0e17e23c: free_ds_constructor_photo_size_empty (D, T); return;
- case 0x77bfb61b: free_ds_constructor_photo_size (D, T); return;
- case 0xe9a734fa: free_ds_constructor_photo_cached_size (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_privacy_key (struct tl_ds_privacy_key *D, struct paramed_type *T) {
- free_ds_constructor_privacy_key_status_timestamp (D, T); return;
-}
-void free_ds_type_privacy_rule (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xfffe1bac: free_ds_constructor_privacy_value_allow_contacts (D, T); return;
- case 0x65427b82: free_ds_constructor_privacy_value_allow_all (D, T); return;
- case 0x4d5bbe0c: free_ds_constructor_privacy_value_allow_users (D, T); return;
- case 0xf888fa1a: free_ds_constructor_privacy_value_disallow_contacts (D, T); return;
- case 0x8b73e763: free_ds_constructor_privacy_value_disallow_all (D, T); return;
- case 0x0c7f49b7: free_ds_constructor_privacy_value_disallow_users (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_received_notify_message (struct tl_ds_received_notify_message *D, struct paramed_type *T) {
- free_ds_constructor_received_notify_message (D, T); return;
-}
-void free_ds_type_reply_markup (struct tl_ds_reply_markup *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xa03e5b85: free_ds_constructor_reply_keyboard_hide (D, T); return;
- case 0xf4108aa0: free_ds_constructor_reply_keyboard_force_reply (D, T); return;
- case 0x3502758c: free_ds_constructor_reply_keyboard_markup (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_res_p_q (struct tl_ds_res_p_q *D, struct paramed_type *T) {
- free_ds_constructor_res_p_q (D, T); return;
-}
-void free_ds_type_send_message_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x16bf744e: free_ds_constructor_send_message_typing_action (D, T); return;
- case 0xfd5ec8f5: free_ds_constructor_send_message_cancel_action (D, T); return;
- case 0xa187d66f: free_ds_constructor_send_message_record_video_action (D, T); return;
- case 0x92042ff7: free_ds_constructor_send_message_upload_video_action_l27 (D, T); return;
- case 0xe9763aec: free_ds_constructor_send_message_upload_video_action (D, T); return;
- case 0xd52f73f7: free_ds_constructor_send_message_record_audio_action (D, T); return;
- case 0xe6ac8a6f: free_ds_constructor_send_message_upload_audio_action_l27 (D, T); return;
- case 0xf351d7ab: free_ds_constructor_send_message_upload_audio_action (D, T); return;
- case 0xd1d34a26: free_ds_constructor_send_message_upload_photo_action (D, T); return;
- case 0x8faee98e: free_ds_constructor_send_message_upload_document_action_l27 (D, T); return;
- case 0xaa0cd9e4: free_ds_constructor_send_message_upload_document_action (D, T); return;
- case 0x176f8ba1: free_ds_constructor_send_message_geo_location_action (D, T); return;
- case 0x628cbc6f: free_ds_constructor_send_message_choose_contact_action (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_server_d_h_params (struct tl_ds_server_d_h_params *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x79cb045d: free_ds_constructor_server_d_h_params_fail (D, T); return;
- case 0xd0e8075c: free_ds_constructor_server_d_h_params_ok (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *D, struct paramed_type *T) {
- free_ds_constructor_server_d_h_inner_data (D, T); return;
-}
-void free_ds_type_set_client_d_h_params_answer (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x3bcbf734: free_ds_constructor_dh_gen_ok (D, T); return;
- case 0x46dc1fb9: free_ds_constructor_dh_gen_retry (D, T); return;
- case 0xa69dae02: free_ds_constructor_dh_gen_fail (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_sticker_pack (struct tl_ds_sticker_pack *D, struct paramed_type *T) {
- free_ds_constructor_sticker_pack (D, T); return;
-}
-void free_ds_type_sticker_set (struct tl_ds_sticker_set *D, struct paramed_type *T) {
- free_ds_constructor_sticker_set (D, T); return;
-}
-void free_ds_type_string (struct tl_ds_string *D, struct paramed_type *T) {
- free_ds_constructor_string (D, T); return;
-}
-void free_ds_type_update (struct tl_ds_update *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x1f2b0afd: free_ds_constructor_update_new_message (D, T); return;
- case 0x4e90bfd6: free_ds_constructor_update_message_i_d (D, T); return;
- case 0xa20db0e5: free_ds_constructor_update_delete_messages (D, T); return;
- case 0x5c486927: free_ds_constructor_update_user_typing (D, T); return;
- case 0x9a65ea1f: free_ds_constructor_update_chat_user_typing (D, T); return;
- case 0x07761198: free_ds_constructor_update_chat_participants (D, T); return;
- case 0x1bfbd823: free_ds_constructor_update_user_status (D, T); return;
- case 0xa7332b73: free_ds_constructor_update_user_name (D, T); return;
- case 0x95313b0c: free_ds_constructor_update_user_photo (D, T); return;
- case 0x2575bbb9: free_ds_constructor_update_contact_registered (D, T); return;
- case 0x9d2e67c5: free_ds_constructor_update_contact_link (D, T); return;
- case 0x8f06529a: free_ds_constructor_update_new_authorization (D, T); return;
- case 0x5a68e3f7: free_ds_constructor_update_new_geo_chat_message (D, T); return;
- case 0x12bcbd9a: free_ds_constructor_update_new_encrypted_message (D, T); return;
- case 0x1710f156: free_ds_constructor_update_encrypted_chat_typing (D, T); return;
- case 0xb4a2e88d: free_ds_constructor_update_encryption (D, T); return;
- case 0x38fe25b7: free_ds_constructor_update_encrypted_messages_read (D, T); return;
- case 0x3a0eeb22: free_ds_constructor_update_chat_participant_add (D, T); return;
- case 0x6e5f8c22: free_ds_constructor_update_chat_participant_delete (D, T); return;
- case 0x8e5e9873: free_ds_constructor_update_dc_options (D, T); return;
- case 0x80ece81a: free_ds_constructor_update_user_blocked (D, T); return;
- case 0xbec268ef: free_ds_constructor_update_notify_settings (D, T); return;
- case 0x382dd3e4: free_ds_constructor_update_service_notification (D, T); return;
- case 0xee3b272a: free_ds_constructor_update_privacy (D, T); return;
- case 0x12b9417b: free_ds_constructor_update_user_phone (D, T); return;
- case 0x9961fd5c: free_ds_constructor_update_read_history_inbox (D, T); return;
- case 0x2f2f21bf: free_ds_constructor_update_read_history_outbox (D, T); return;
- case 0x2cc36971: free_ds_constructor_update_web_page (D, T); return;
- case 0x68c13933: free_ds_constructor_update_read_messages_contents (D, T); return;
- case 0x03114739: free_ds_constructor_update_msg_update (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_updates (struct tl_ds_updates *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xe317af7e: free_ds_constructor_updates_too_long (D, T); return;
- case 0xed5c2127: free_ds_constructor_update_short_message (D, T); return;
- case 0x52238b3c: free_ds_constructor_update_short_chat_message (D, T); return;
- case 0x78d4dec1: free_ds_constructor_update_short (D, T); return;
- case 0x725b04c3: free_ds_constructor_updates_combined (D, T); return;
- case 0x74ae4240: free_ds_constructor_updates (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_user (struct tl_ds_user *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x200250ba: free_ds_constructor_user_empty (D, T); return;
- case 0x22e49072: free_ds_constructor_user (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_user_full (struct tl_ds_user_full *D, struct paramed_type *T) {
- free_ds_constructor_user_full (D, T); return;
-}
-void free_ds_type_user_profile_photo (struct tl_ds_user_profile_photo *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x4f11bae1: free_ds_constructor_user_profile_photo_empty (D, T); return;
- case 0xd559d8c8: free_ds_constructor_user_profile_photo (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_user_status (struct tl_ds_user_status *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x09d05049: free_ds_constructor_user_status_empty (D, T); return;
- case 0xedb93949: free_ds_constructor_user_status_online (D, T); return;
- case 0x008c703f: free_ds_constructor_user_status_offline (D, T); return;
- case 0xe26f42f1: free_ds_constructor_user_status_recently (D, T); return;
- case 0x07bf09fc: free_ds_constructor_user_status_last_week (D, T); return;
- case 0x77ebc742: free_ds_constructor_user_status_last_month (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_vector (struct tl_ds_vector *D, struct paramed_type *T) {
- free_ds_constructor_vector (D, T); return;
-}
-void free_ds_type_video (struct tl_ds_video *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xc10658a8: free_ds_constructor_video_empty (D, T); return;
- case 0xee9f4a4d: free_ds_constructor_video (D, T); return;
- case 0x388fa391: free_ds_constructor_video_l27 (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_wall_paper (struct tl_ds_wall_paper *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xccb03657: free_ds_constructor_wall_paper (D, T); return;
- case 0x63117f24: free_ds_constructor_wall_paper_solid (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_web_page (struct tl_ds_web_page *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xeb1477e8: free_ds_constructor_web_page_empty (D, T); return;
- case 0xc586da1c: free_ds_constructor_web_page_pending (D, T); return;
- case 0xa31ea0b5: free_ds_constructor_web_page (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_account_authorizations (struct tl_ds_account_authorizations *D, struct paramed_type *T) {
- free_ds_constructor_account_authorizations (D, T); return;
-}
-void free_ds_type_account_password (struct tl_ds_account_password *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x96dabc18: free_ds_constructor_account_no_password (D, T); return;
- case 0x7c18141c: free_ds_constructor_account_password (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_account_password_input_settings (struct tl_ds_account_password_input_settings *D, struct paramed_type *T) {
- free_ds_constructor_account_password_input_settings (D, T); return;
-}
-void free_ds_type_account_password_settings (struct tl_ds_account_password_settings *D, struct paramed_type *T) {
- free_ds_constructor_account_password_settings (D, T); return;
-}
-void free_ds_type_account_privacy_rules (struct tl_ds_account_privacy_rules *D, struct paramed_type *T) {
- free_ds_constructor_account_privacy_rules (D, T); return;
-}
-void free_ds_type_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *D, struct paramed_type *T) {
- free_ds_constructor_account_sent_change_phone_code (D, T); return;
-}
-void free_ds_type_auth_authorization (struct tl_ds_auth_authorization *D, struct paramed_type *T) {
- free_ds_constructor_auth_authorization (D, T); return;
-}
-void free_ds_type_auth_checked_phone (struct tl_ds_auth_checked_phone *D, struct paramed_type *T) {
- free_ds_constructor_auth_checked_phone (D, T); return;
-}
-void free_ds_type_auth_exported_authorization (struct tl_ds_auth_exported_authorization *D, struct paramed_type *T) {
- free_ds_constructor_auth_exported_authorization (D, T); return;
-}
-void free_ds_type_auth_password_recovery (struct tl_ds_auth_password_recovery *D, struct paramed_type *T) {
- free_ds_constructor_auth_password_recovery (D, T); return;
-}
-void free_ds_type_auth_sent_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xefed51d9: free_ds_constructor_auth_sent_code (D, T); return;
- case 0xe325edcf: free_ds_constructor_auth_sent_app_code (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_binlog_encr_key (struct tl_ds_binlog_encr_key *D, struct paramed_type *T) {
- free_ds_constructor_binlog_encr_key (D, T); return;
-}
-void free_ds_type_binlog_update (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x3b06de69: free_ds_constructor_binlog_start (D, T); return;
- case 0xf96feb32: free_ds_constructor_binlog_dc_option (D, T); return;
- case 0x7c0d22d8: free_ds_constructor_binlog_dc_option_new (D, T); return;
- case 0x71e8c156: free_ds_constructor_binlog_auth_key (D, T); return;
- case 0x9e83dbdc: free_ds_constructor_binlog_default_dc (D, T); return;
- case 0x26451bb5: free_ds_constructor_binlog_dc_signed (D, T); return;
- case 0x68a870e8: free_ds_constructor_binlog_our_id (D, T); return;
- case 0xeaeb7826: free_ds_constructor_binlog_set_dh_params (D, T); return;
- case 0x2ca8c939: free_ds_constructor_binlog_set_pts (D, T); return;
- case 0xd95738ac: free_ds_constructor_binlog_set_qts (D, T); return;
- case 0x1d0f4b52: free_ds_constructor_binlog_set_date (D, T); return;
- case 0x6eeb2989: free_ds_constructor_binlog_set_seq (D, T); return;
- case 0xee1b38e8: free_ds_constructor_binlog_encr_chat_delete (D, T); return;
- case 0x84977251: free_ds_constructor_binlog_encr_chat_new (D, T); return;
- case 0x9d49488d: free_ds_constructor_binlog_encr_chat_exchange_new (D, T); return;
- case 0xac55d447: free_ds_constructor_binlog_user_delete (D, T); return;
- case 0x127cf2f9: free_ds_constructor_binlog_user_new (D, T); return;
- case 0x0a10aa92: free_ds_constructor_binlog_chat_new (D, T); return;
- case 0x535475ea: free_ds_constructor_binlog_chat_add_participant (D, T); return;
- case 0x7dd1a1a2: free_ds_constructor_binlog_chat_del_participant (D, T); return;
- case 0x3c873416: free_ds_constructor_binlog_set_msg_id (D, T); return;
- case 0x847e77b1: free_ds_constructor_binlog_message_delete (D, T); return;
- case 0x427cfcdb: free_ds_constructor_binlog_message_new (D, T); return;
- case 0x6cf7cabc: free_ds_constructor_binlog_message_encr_new (D, T); return;
- case 0x6dd4d85f: free_ds_constructor_binlog_msg_update (D, T); return;
- case 0x83327955: free_ds_constructor_binlog_reset_authorization (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_contacts_blocked (struct tl_ds_contacts_blocked *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x1c138d15: free_ds_constructor_contacts_blocked (D, T); return;
- case 0x900802a1: free_ds_constructor_contacts_blocked_slice (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_contacts_contacts (struct tl_ds_contacts_contacts *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xb74ba9d2: free_ds_constructor_contacts_contacts_not_modified (D, T); return;
- case 0x6f8b8cb2: free_ds_constructor_contacts_contacts (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_contacts_found (struct tl_ds_contacts_found *D, struct paramed_type *T) {
- free_ds_constructor_contacts_found (D, T); return;
-}
-void free_ds_type_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *D, struct paramed_type *T) {
- free_ds_constructor_contacts_imported_contacts (D, T); return;
-}
-void free_ds_type_contacts_link (struct tl_ds_contacts_link *D, struct paramed_type *T) {
- free_ds_constructor_contacts_link (D, T); return;
-}
-void free_ds_type_contacts_suggested (struct tl_ds_contacts_suggested *D, struct paramed_type *T) {
- free_ds_constructor_contacts_suggested (D, T); return;
-}
-void free_ds_type_geochats_located (struct tl_ds_geochats_located *D, struct paramed_type *T) {
- free_ds_constructor_geochats_located (D, T); return;
-}
-void free_ds_type_geochats_messages (struct tl_ds_geochats_messages *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xd1526db1: free_ds_constructor_geochats_messages (D, T); return;
- case 0xbc5863e8: free_ds_constructor_geochats_messages_slice (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_geochats_stated_message (struct tl_ds_geochats_stated_message *D, struct paramed_type *T) {
- free_ds_constructor_geochats_stated_message (D, T); return;
-}
-void free_ds_type_help_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x8987f311: free_ds_constructor_help_app_update (D, T); return;
- case 0xc45a6536: free_ds_constructor_help_no_app_update (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_help_invite_text (struct tl_ds_help_invite_text *D, struct paramed_type *T) {
- free_ds_constructor_help_invite_text (D, T); return;
-}
-void free_ds_type_help_support (struct tl_ds_help_support *D, struct paramed_type *T) {
- free_ds_constructor_help_support (D, T); return;
-}
-void free_ds_type_messages_affected_history (struct tl_ds_messages_affected_history *D, struct paramed_type *T) {
- free_ds_constructor_messages_affected_history (D, T); return;
-}
-void free_ds_type_messages_affected_messages (struct tl_ds_messages_affected_messages *D, struct paramed_type *T) {
- free_ds_constructor_messages_affected_messages (D, T); return;
-}
-void free_ds_type_messages_all_stickers (struct tl_ds_messages_all_stickers *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xe86602c3: free_ds_constructor_messages_all_stickers_not_modified (D, T); return;
- case 0x5ce352ec: free_ds_constructor_messages_all_stickers (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_messages_chat_full (struct tl_ds_messages_chat_full *D, struct paramed_type *T) {
- free_ds_constructor_messages_chat_full (D, T); return;
-}
-void free_ds_type_messages_chats (struct tl_ds_messages_chats *D, struct paramed_type *T) {
- free_ds_constructor_messages_chats (D, T); return;
-}
-void free_ds_type_messages_dh_config (struct tl_ds_messages_dh_config *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xc0e24635: free_ds_constructor_messages_dh_config_not_modified (D, T); return;
- case 0x2c221edd: free_ds_constructor_messages_dh_config (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_messages_dialogs (struct tl_ds_messages_dialogs *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x15ba6c40: free_ds_constructor_messages_dialogs (D, T); return;
- case 0x71e094f3: free_ds_constructor_messages_dialogs_slice (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_messages_message (struct tl_ds_messages_message *D, struct paramed_type *T) {
- free_ds_constructor_messages_message_empty (D, T); return;
-}
-void free_ds_type_messages_messages (struct tl_ds_messages_messages *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x8c718e87: free_ds_constructor_messages_messages (D, T); return;
- case 0x0b446ae3: free_ds_constructor_messages_messages_slice (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x560f8935: free_ds_constructor_messages_sent_encrypted_message (D, T); return;
- case 0x9493ff32: free_ds_constructor_messages_sent_encrypted_file (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_messages_sent_message (struct tl_ds_messages_sent_message *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x4c3d47f3: free_ds_constructor_messages_sent_message (D, T); return;
- case 0x35a1a663: free_ds_constructor_messages_sent_message_link (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_messages_sticker_set (struct tl_ds_messages_sticker_set *D, struct paramed_type *T) {
- free_ds_constructor_messages_sticker_set (D, T); return;
-}
-void free_ds_type_messages_stickers (struct tl_ds_messages_stickers *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xf1749a22: free_ds_constructor_messages_stickers_not_modified (D, T); return;
- case 0x8a8ecd32: free_ds_constructor_messages_stickers (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_photos_photo (struct tl_ds_photos_photo *D, struct paramed_type *T) {
- free_ds_constructor_photos_photo (D, T); return;
-}
-void free_ds_type_photos_photos (struct tl_ds_photos_photos *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x8dca6aa5: free_ds_constructor_photos_photos (D, T); return;
- case 0x15051f54: free_ds_constructor_photos_photos_slice (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_storage_file_type (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xaa963b05: free_ds_constructor_storage_file_unknown (D, T); return;
- case 0x007efe0e: free_ds_constructor_storage_file_jpeg (D, T); return;
- case 0xcae1aadf: free_ds_constructor_storage_file_gif (D, T); return;
- case 0x0a4f63c0: free_ds_constructor_storage_file_png (D, T); return;
- case 0xae1e508d: free_ds_constructor_storage_file_pdf (D, T); return;
- case 0x528a0677: free_ds_constructor_storage_file_mp3 (D, T); return;
- case 0x4b09ebbc: free_ds_constructor_storage_file_mov (D, T); return;
- case 0x40bc6f52: free_ds_constructor_storage_file_partial (D, T); return;
- case 0xb3cea0e4: free_ds_constructor_storage_file_mp4 (D, T); return;
- case 0x1081464c: free_ds_constructor_storage_file_webp (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_updates_difference (struct tl_ds_updates_difference *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x5d75a138: free_ds_constructor_updates_difference_empty (D, T); return;
- case 0x00f49ca0: free_ds_constructor_updates_difference (D, T); return;
- case 0xa8fb1981: free_ds_constructor_updates_difference_slice (D, T); return;
- default: assert (0);
- }
-}
-void free_ds_type_updates_state (struct tl_ds_updates_state *D, struct paramed_type *T) {
- free_ds_constructor_updates_state (D, T); return;
-}
-void free_ds_type_upload_file (struct tl_ds_upload_file *D, struct paramed_type *T) {
- free_ds_constructor_upload_file (D, T); return;
-}
-void free_ds_type_any (void *D, struct paramed_type *T) {
- switch (T->type->name) {
- case 0xb8d0afdf: free_ds_type_account_days_t_t_l (D, T); return;
- case 0x472f5020: free_ds_type_account_days_t_t_l (D, T); return;
- case 0x9fc5ec4e: free_ds_type_audio (D, T); return;
- case 0x603a13b1: free_ds_type_audio (D, T); return;
- case 0x7bf2e6f6: free_ds_type_authorization (D, T); return;
- case 0x840d1909: free_ds_type_authorization (D, T); return;
- case 0x250be282: free_ds_type_bool (D, T); return;
- case 0xdaf41d7d: free_ds_type_bool (D, T); return;
- case 0x75e7ea6c: free_ds_type_bot_command (D, T); return;
- case 0x8a181593: free_ds_type_bot_command (D, T); return;
- case 0xb2e16f93: free_ds_type_bot_info (D, T); return;
- case 0x4d1e906c: free_ds_type_bot_info (D, T); return;
- case 0x0ee1379f: free_ds_type_bytes (D, T); return;
- case 0xf11ec860: free_ds_type_bytes (D, T); return;
- case 0x7bd865dc: free_ds_type_chat (D, T); return;
- case 0x84279a23: free_ds_type_chat (D, T); return;
- case 0x2e02a614: free_ds_type_chat_full (D, T); return;
- case 0xd1fd59eb: free_ds_type_chat_full (D, T); return;
- case 0x94f910b1: free_ds_type_chat_invite (D, T); return;
- case 0x6b06ef4e: free_ds_type_chat_invite (D, T); return;
- case 0x3631cf4c: free_ds_type_chat_located (D, T); return;
- case 0xc9ce30b3: free_ds_type_chat_located (D, T); return;
- case 0xc8d7493e: free_ds_type_chat_participant (D, T); return;
- case 0x3728b6c1: free_ds_type_chat_participant (D, T); return;
- case 0x77930f9f: free_ds_type_chat_participants (D, T); return;
- case 0x886cf060: free_ds_type_chat_participants (D, T); return;
- case 0x56922676: free_ds_type_chat_photo (D, T); return;
- case 0xa96dd989: free_ds_type_chat_photo (D, T); return;
- case 0x6643b654: free_ds_type_client_d_h_inner_data (D, T); return;
- case 0x99bc49ab: free_ds_type_client_d_h_inner_data (D, T); return;
- case 0x4e32b894: free_ds_type_config (D, T); return;
- case 0xb1cd476b: free_ds_type_config (D, T); return;
- case 0xf911c994: free_ds_type_contact (D, T); return;
- case 0x06ee366b: free_ds_type_contact (D, T); return;
- case 0x561bc879: free_ds_type_contact_blocked (D, T); return;
- case 0xa9e43786: free_ds_type_contact_blocked (D, T); return;
- case 0xea879f95: free_ds_type_contact_found (D, T); return;
- case 0x1578606a: free_ds_type_contact_found (D, T); return;
- case 0x522fbc63: free_ds_type_contact_link (D, T); return;
- case 0xadd0439c: free_ds_type_contact_link (D, T); return;
- case 0xd3680c61: free_ds_type_contact_status (D, T); return;
- case 0x2c97f39e: free_ds_type_contact_status (D, T); return;
- case 0x3de191a1: free_ds_type_contact_suggested (D, T); return;
- case 0xc21e6e5e: free_ds_type_contact_suggested (D, T); return;
- case 0x2b1a62f0: free_ds_type_dc_option (D, T); return;
- case 0xd4e59d0f: free_ds_type_dc_option (D, T); return;
- case 0x535b7918: free_ds_type_decrypted_message (D, T); return;
- case 0xaca486e7: free_ds_type_decrypted_message (D, T); return;
- case 0x4e0eefde: free_ds_type_decrypted_message_action (D, T); return;
- case 0xb1f11021: free_ds_type_decrypted_message_action (D, T); return;
- case 0x1be31789: free_ds_type_decrypted_message_layer (D, T); return;
- case 0xe41ce876: free_ds_type_decrypted_message_layer (D, T); return;
- case 0x34e0d674: free_ds_type_decrypted_message_media (D, T); return;
- case 0xcb1f298b: free_ds_type_decrypted_message_media (D, T); return;
- case 0xc1dd804a: free_ds_type_dialog (D, T); return;
- case 0x3e227fb5: free_ds_type_dialog (D, T); return;
- case 0xae636f24: free_ds_type_disabled_feature (D, T); return;
- case 0x519c90db: free_ds_type_disabled_feature (D, T); return;
- case 0x51a73418: free_ds_type_document (D, T); return;
- case 0xae58cbe7: free_ds_type_document (D, T); return;
- case 0x97c637a3: free_ds_type_document_attribute (D, T); return;
- case 0x6839c85c: free_ds_type_document_attribute (D, T); return;
- case 0x2210c154: free_ds_type_double (D, T); return;
- case 0xddef3eab: free_ds_type_double (D, T); return;
- case 0xb1718213: free_ds_type_encrypted_chat (D, T); return;
- case 0x4e8e7dec: free_ds_type_encrypted_chat (D, T); return;
- case 0x886fd032: free_ds_type_encrypted_file (D, T); return;
- case 0x77902fcd: free_ds_type_encrypted_file (D, T); return;
- case 0xce6b8a1e: free_ds_type_encrypted_message (D, T); return;
- case 0x319475e1: free_ds_type_encrypted_message (D, T); return;
- case 0xc4b9f9bb: free_ds_type_error (D, T); return;
- case 0x3b460644: free_ds_type_error (D, T); return;
- case 0x95f132d5: free_ds_type_exported_chat_invite (D, T); return;
- case 0x6a0ecd2a: free_ds_type_exported_chat_invite (D, T); return;
- case 0x2f8ffb30: free_ds_type_file_location (D, T); return;
- case 0xd07004cf: free_ds_type_file_location (D, T); return;
- case 0xf67b4034: free_ds_type_geo_chat_message (D, T); return;
- case 0x0984bfcb: free_ds_type_geo_chat_message (D, T); return;
- case 0x315e0a53: free_ds_type_geo_point (D, T); return;
- case 0xcea1f5ac: free_ds_type_geo_point (D, T); return;
- case 0xd0028438: free_ds_type_imported_contact (D, T); return;
- case 0x2ffd7bc7: free_ds_type_imported_contact (D, T); return;
- case 0x770656a8: free_ds_type_input_app_event (D, T); return;
- case 0x88f9a957: free_ds_type_input_app_event (D, T); return;
- case 0xae8e9c7b: free_ds_type_input_audio (D, T); return;
- case 0x51716384: free_ds_type_input_audio (D, T); return;
- case 0x3a60776d: free_ds_type_input_chat_photo (D, T); return;
- case 0xc59f8892: free_ds_type_input_chat_photo (D, T); return;
- case 0xf392b7f4: free_ds_type_input_contact (D, T); return;
- case 0x0c6d480b: free_ds_type_input_contact (D, T); return;
- case 0x6a8963fc: free_ds_type_input_document (D, T); return;
- case 0x95769c03: free_ds_type_input_document (D, T); return;
- case 0xf141b5e1: free_ds_type_input_encrypted_chat (D, T); return;
- case 0x0ebe4a1e: free_ds_type_input_encrypted_chat (D, T); return;
- case 0x0b5c064f: free_ds_type_input_encrypted_file (D, T); return;
- case 0xf4a3f9b0: free_ds_type_input_encrypted_file (D, T); return;
- case 0x0f60f9ca: free_ds_type_input_file (D, T); return;
- case 0xf09f0635: free_ds_type_input_file (D, T); return;
- case 0xe6daa38b: free_ds_type_input_file_location (D, T); return;
- case 0x19255c74: free_ds_type_input_file_location (D, T); return;
- case 0x74d456fa: free_ds_type_input_geo_chat (D, T); return;
- case 0x8b2ba905: free_ds_type_input_geo_chat (D, T); return;
- case 0x17768f1f: free_ds_type_input_geo_point (D, T); return;
- case 0xe88970e0: free_ds_type_input_geo_point (D, T); return;
- case 0xb32c91dd: free_ds_type_input_media (D, T); return;
- case 0x4cd36e22: free_ds_type_input_media (D, T); return;
- case 0x02b6911b: free_ds_type_input_notify_peer (D, T); return;
- case 0xfd496ee4: free_ds_type_input_notify_peer (D, T); return;
- case 0x9e67268d: free_ds_type_input_peer (D, T); return;
- case 0x6198d972: free_ds_type_input_peer (D, T); return;
- case 0x185a48ac: free_ds_type_input_peer_notify_events (D, T); return;
- case 0xe7a5b753: free_ds_type_input_peer_notify_events (D, T); return;
- case 0x46a2ce98: free_ds_type_input_peer_notify_settings (D, T); return;
- case 0xb95d3167: free_ds_type_input_peer_notify_settings (D, T); return;
- case 0xe74279c9: free_ds_type_input_photo (D, T); return;
- case 0x18bd8636: free_ds_type_input_photo (D, T); return;
- case 0x7477e321: free_ds_type_input_photo_crop (D, T); return;
- case 0x8b881cde: free_ds_type_input_photo_crop (D, T); return;
- case 0x4f96cb18: free_ds_type_input_privacy_key (D, T); return;
- case 0xb06934e7: free_ds_type_input_privacy_key (D, T); return;
- case 0x4b815163: free_ds_type_input_privacy_rule (D, T); return;
- case 0xb47eae9c: free_ds_type_input_privacy_rule (D, T); return;
- case 0xe44d415c: free_ds_type_input_sticker_set (D, T); return;
- case 0x1bb2bea3: free_ds_type_input_sticker_set (D, T); return;
- case 0xadfe0c6a: free_ds_type_input_user (D, T); return;
- case 0x5201f395: free_ds_type_input_user (D, T); return;
- case 0xbb5f7a27: free_ds_type_input_video (D, T); return;
- case 0x44a085d8: free_ds_type_input_video (D, T); return;
- case 0xa8509bda: free_ds_type_int (D, T); return;
- case 0x57af6425: free_ds_type_int (D, T); return;
- case 0x7d36c439: free_ds_type_int128 (D, T); return;
- case 0x82c93bc6: free_ds_type_int128 (D, T); return;
- case 0xf2c798b3: free_ds_type_int256 (D, T); return;
- case 0x0d38674c: free_ds_type_int256 (D, T); return;
- case 0xa2fa4880: free_ds_type_keyboard_button (D, T); return;
- case 0x5d05b77f: free_ds_type_keyboard_button (D, T); return;
- case 0x77608b83: free_ds_type_keyboard_button_row (D, T); return;
- case 0x889f747c: free_ds_type_keyboard_button_row (D, T); return;
- case 0x22076cba: free_ds_type_long (D, T); return;
- case 0xddf89345: free_ds_type_long (D, T); return;
- case 0x5d652a7f: free_ds_type_message (D, T); return;
- case 0xa29ad580: free_ds_type_message (D, T); return;
- case 0x383415fa: free_ds_type_message_action (D, T); return;
- case 0xc7cbea05: free_ds_type_message_action (D, T); return;
- case 0x95f2471a: free_ds_type_message_media (D, T); return;
- case 0x6a0db8e5: free_ds_type_message_media (D, T); return;
- case 0x80895ae0: free_ds_type_messages_filter (D, T); return;
- case 0x7f76a51f: free_ds_type_messages_filter (D, T); return;
- case 0x8e1a1775: free_ds_type_nearest_dc (D, T); return;
- case 0x71e5e88a: free_ds_type_nearest_dc (D, T); return;
- case 0x9fcb8237: free_ds_type_notify_peer (D, T); return;
- case 0x60347dc8: free_ds_type_notify_peer (D, T); return;
- case 0x56730bcc: free_ds_type_null (D, T); return;
- case 0xa98cf433: free_ds_type_null (D, T); return;
- case 0xbfa3de38: free_ds_type_p_q_inner_data (D, T); return;
- case 0x405c21c7: free_ds_type_p_q_inner_data (D, T); return;
- case 0x276159d6: free_ds_type_peer (D, T); return;
- case 0xd89ea629: free_ds_type_peer (D, T); return;
- case 0xc0c8d13b: free_ds_type_peer_notify_events (D, T); return;
- case 0x3f372ec4: free_ds_type_peer_notify_events (D, T); return;
- case 0xfdf894fc: free_ds_type_peer_notify_settings (D, T); return;
- case 0x02076b03: free_ds_type_peer_notify_settings (D, T); return;
- case 0xc207550a: free_ds_type_photo (D, T); return;
- case 0x3df8aaf5: free_ds_type_photo (D, T); return;
- case 0x900f60dd: free_ds_type_photo_size (D, T); return;
- case 0x6ff09f22: free_ds_type_photo_size (D, T); return;
- case 0xbc2eab30: free_ds_type_privacy_key (D, T); return;
- case 0x43d154cf: free_ds_type_privacy_key (D, T); return;
- case 0xa8638aec: free_ds_type_privacy_rule (D, T); return;
- case 0x579c7513: free_ds_type_privacy_rule (D, T); return;
- case 0xa384b779: free_ds_type_received_notify_message (D, T); return;
- case 0x5c7b4886: free_ds_type_received_notify_message (D, T); return;
- case 0x612ca4a9: free_ds_type_reply_markup (D, T); return;
- case 0x9ed35b56: free_ds_type_reply_markup (D, T); return;
- case 0x05162463: free_ds_type_res_p_q (D, T); return;
- case 0xfae9db9c: free_ds_type_res_p_q (D, T); return;
- case 0x70541c7e: free_ds_type_send_message_action (D, T); return;
- case 0x8fabe381: free_ds_type_send_message_action (D, T); return;
- case 0xa9230301: free_ds_type_server_d_h_params (D, T); return;
- case 0x56dcfcfe: free_ds_type_server_d_h_params (D, T); return;
- case 0xb5890dba: free_ds_type_server_d_h_inner_data (D, T); return;
- case 0x4a76f245: free_ds_type_server_d_h_inner_data (D, T); return;
- case 0xdb8a468f: free_ds_type_set_client_d_h_params_answer (D, T); return;
- case 0x2475b970: free_ds_type_set_client_d_h_params_answer (D, T); return;
- case 0x12b299d4: free_ds_type_sticker_pack (D, T); return;
- case 0xed4d662b: free_ds_type_sticker_pack (D, T); return;
- case 0xa7a43b17: free_ds_type_sticker_set (D, T); return;
- case 0x585bc4e8: free_ds_type_sticker_set (D, T); return;
- case 0xb5286e24: free_ds_type_string (D, T); return;
- case 0x4ad791db: free_ds_type_string (D, T); return;
- case 0x2e02b27e: free_ds_type_update (D, T); return;
- case 0xd1fd4d81: free_ds_type_update (D, T); return;
- case 0x22499d27: free_ds_type_updates (D, T); return;
- case 0xddb662d8: free_ds_type_updates (D, T); return;
- case 0x02e6c0c8: free_ds_type_user (D, T); return;
- case 0xfd193f37: free_ds_type_user (D, T); return;
- case 0x5a89ac5b: free_ds_type_user_full (D, T); return;
- case 0xa57653a4: free_ds_type_user_full (D, T); return;
- case 0x9a486229: free_ds_type_user_profile_photo (D, T); return;
- case 0x65b79dd6: free_ds_type_user_profile_photo (D, T); return;
- case 0x76de9570: free_ds_type_user_status (D, T); return;
- case 0x89216a8f: free_ds_type_user_status (D, T); return;
- case 0x1cb5c415: free_ds_type_vector (D, T); return;
- case 0xe34a3bea: free_ds_type_vector (D, T); return;
- case 0x1716b174: free_ds_type_video (D, T); return;
- case 0xe8e94e8b: free_ds_type_video (D, T); return;
- case 0xafa14973: free_ds_type_wall_paper (D, T); return;
- case 0x505eb68c: free_ds_type_wall_paper (D, T); return;
- case 0x8d8c0d41: free_ds_type_web_page (D, T); return;
- case 0x7273f2be: free_ds_type_web_page (D, T); return;
- case 0x1250abde: free_ds_type_account_authorizations (D, T); return;
- case 0xedaf5421: free_ds_type_account_authorizations (D, T); return;
- case 0xeac2a804: free_ds_type_account_password (D, T); return;
- case 0x153d57fb: free_ds_type_account_password (D, T); return;
- case 0xbcfc532c: free_ds_type_account_password_input_settings (D, T); return;
- case 0x4303acd3: free_ds_type_account_password_input_settings (D, T); return;
- case 0xb7b72ab3: free_ds_type_account_password_settings (D, T); return;
- case 0x4848d54c: free_ds_type_account_password_settings (D, T); return;
- case 0x554abb6f: free_ds_type_account_privacy_rules (D, T); return;
- case 0xaab54490: free_ds_type_account_privacy_rules (D, T); return;
- case 0xa4f58c4c: free_ds_type_account_sent_change_phone_code (D, T); return;
- case 0x5b0a73b3: free_ds_type_account_sent_change_phone_code (D, T); return;
- case 0xff036af1: free_ds_type_auth_authorization (D, T); return;
- case 0x00fc950e: free_ds_type_auth_authorization (D, T); return;
- case 0x811ea28e: free_ds_type_auth_checked_phone (D, T); return;
- case 0x7ee15d71: free_ds_type_auth_checked_phone (D, T); return;
- case 0xdf969c2d: free_ds_type_auth_exported_authorization (D, T); return;
- case 0x206963d2: free_ds_type_auth_exported_authorization (D, T); return;
- case 0x137948a5: free_ds_type_auth_password_recovery (D, T); return;
- case 0xec86b75a: free_ds_type_auth_password_recovery (D, T); return;
- case 0x0cc8bc16: free_ds_type_auth_sent_code (D, T); return;
- case 0xf33743e9: free_ds_type_auth_sent_code (D, T); return;
- case 0x0377168f: free_ds_type_binlog_encr_key (D, T); return;
- case 0xfc88e970: free_ds_type_binlog_encr_key (D, T); return;
- case 0x66ff03a6: free_ds_type_binlog_update (D, T); return;
- case 0x9900fc59: free_ds_type_binlog_update (D, T); return;
- case 0x8c1b8fb4: free_ds_type_contacts_blocked (D, T); return;
- case 0x73e4704b: free_ds_type_contacts_blocked (D, T); return;
- case 0xd8c02560: free_ds_type_contacts_contacts (D, T); return;
- case 0x273fda9f: free_ds_type_contacts_contacts (D, T); return;
- case 0x0566000e: free_ds_type_contacts_found (D, T); return;
- case 0xfa99fff1: free_ds_type_contacts_found (D, T); return;
- case 0xad524315: free_ds_type_contacts_imported_contacts (D, T); return;
- case 0x52adbcea: free_ds_type_contacts_imported_contacts (D, T); return;
- case 0x3ace484c: free_ds_type_contacts_link (D, T); return;
- case 0xc531b7b3: free_ds_type_contacts_link (D, T); return;
- case 0x5649dcc5: free_ds_type_contacts_suggested (D, T); return;
- case 0xa9b6233a: free_ds_type_contacts_suggested (D, T); return;
- case 0x48feb267: free_ds_type_geochats_located (D, T); return;
- case 0xb7014d98: free_ds_type_geochats_located (D, T); return;
- case 0x6d0a0e59: free_ds_type_geochats_messages (D, T); return;
- case 0x92f5f1a6: free_ds_type_geochats_messages (D, T); return;
- case 0x17b1578b: free_ds_type_geochats_stated_message (D, T); return;
- case 0xe84ea874: free_ds_type_geochats_stated_message (D, T); return;
- case 0x4ddd9627: free_ds_type_help_app_update (D, T); return;
- case 0xb22269d8: free_ds_type_help_app_update (D, T); return;
- case 0x18cb9f78: free_ds_type_help_invite_text (D, T); return;
- case 0xe7346087: free_ds_type_help_invite_text (D, T); return;
- case 0x17c6b5f6: free_ds_type_help_support (D, T); return;
- case 0xe8394a09: free_ds_type_help_support (D, T); return;
- case 0xb45c69d1: free_ds_type_messages_affected_history (D, T); return;
- case 0x4ba3962e: free_ds_type_messages_affected_history (D, T); return;
- case 0x84d19185: free_ds_type_messages_affected_messages (D, T); return;
- case 0x7b2e6e7a: free_ds_type_messages_affected_messages (D, T); return;
- case 0xb485502f: free_ds_type_messages_all_stickers (D, T); return;
- case 0x4b7aafd0: free_ds_type_messages_all_stickers (D, T); return;
- case 0xe5d7d19c: free_ds_type_messages_chat_full (D, T); return;
- case 0x1a282e63: free_ds_type_messages_chat_full (D, T); return;
- case 0x64ff9fd5: free_ds_type_messages_chats (D, T); return;
- case 0x9b00602a: free_ds_type_messages_chats (D, T); return;
- case 0xecc058e8: free_ds_type_messages_dh_config (D, T); return;
- case 0x133fa717: free_ds_type_messages_dh_config (D, T); return;
- case 0x645af8b3: free_ds_type_messages_dialogs (D, T); return;
- case 0x9ba5074c: free_ds_type_messages_dialogs (D, T); return;
- case 0x3f4e0648: free_ds_type_messages_message (D, T); return;
- case 0xc0b1f9b7: free_ds_type_messages_message (D, T); return;
- case 0x8735e464: free_ds_type_messages_messages (D, T); return;
- case 0x78ca1b9b: free_ds_type_messages_messages (D, T); return;
- case 0xc29c7607: free_ds_type_messages_sent_encrypted_message (D, T); return;
- case 0x3d6389f8: free_ds_type_messages_sent_encrypted_message (D, T); return;
- case 0x799ce190: free_ds_type_messages_sent_message (D, T); return;
- case 0x86631e6f: free_ds_type_messages_sent_message (D, T); return;
- case 0xb60a24a6: free_ds_type_messages_sticker_set (D, T); return;
- case 0x49f5db59: free_ds_type_messages_sticker_set (D, T); return;
- case 0x7bfa5710: free_ds_type_messages_stickers (D, T); return;
- case 0x8405a8ef: free_ds_type_messages_stickers (D, T); return;
- case 0x20212ca8: free_ds_type_photos_photo (D, T); return;
- case 0xdfded357: free_ds_type_photos_photo (D, T); return;
- case 0x98cf75f1: free_ds_type_photos_photos (D, T); return;
- case 0x67308a0e: free_ds_type_photos_photos (D, T); return;
- case 0x3e2838a8: free_ds_type_storage_file_type (D, T); return;
- case 0xc1d7c757: free_ds_type_storage_file_type (D, T); return;
- case 0xf57a2419: free_ds_type_updates_difference (D, T); return;
- case 0x0a85dbe6: free_ds_type_updates_difference (D, T); return;
- case 0xa56c2a3e: free_ds_type_updates_state (D, T); return;
- case 0x5a93d5c1: free_ds_type_updates_state (D, T); return;
- case 0x096a18d5: free_ds_type_upload_file (D, T); return;
- case 0xf695e72a: free_ds_type_upload_file (D, T); return;
- default: return; }
-}
diff --git a/protocols/Telegram/src/tgl/auto/auto-free-ds.h b/protocols/Telegram/src/tgl/auto/auto-free-ds.h
deleted file mode 100644
index 7785aa0141..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-free-ds.h
+++ /dev/null
@@ -1,569 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#include "auto-types.h"
-#else
-#include "auto.h"
-#include "auto/auto-types.h"
-#endif
-#include <assert.h>
-#include <stdio.h>
-struct tgl_state;
-void free_ds_constructor_account_days_t_t_l (struct tl_ds_account_days_t_t_l *D, struct paramed_type *T);
-void free_ds_constructor_audio_empty (struct tl_ds_audio *D, struct paramed_type *T);
-void free_ds_constructor_audio (struct tl_ds_audio *D, struct paramed_type *T);
-void free_ds_constructor_authorization (struct tl_ds_authorization *D, struct paramed_type *T);
-void free_ds_constructor_bool_false (struct tl_ds_bool *D, struct paramed_type *T);
-void free_ds_constructor_bool_true (struct tl_ds_bool *D, struct paramed_type *T);
-void free_ds_constructor_bot_command (struct tl_ds_bot_command *D, struct paramed_type *T);
-void free_ds_constructor_bot_command_old (struct tl_ds_bot_command *D, struct paramed_type *T);
-void free_ds_constructor_bot_info_empty (struct tl_ds_bot_info *D, struct paramed_type *T);
-void free_ds_constructor_bot_info (struct tl_ds_bot_info *D, struct paramed_type *T);
-void free_ds_constructor_bytes (struct tl_ds_string *D, struct paramed_type *T);
-void free_ds_constructor_chat_empty (struct tl_ds_chat *D, struct paramed_type *T);
-void free_ds_constructor_chat (struct tl_ds_chat *D, struct paramed_type *T);
-void free_ds_constructor_chat_forbidden (struct tl_ds_chat *D, struct paramed_type *T);
-void free_ds_constructor_geo_chat (struct tl_ds_chat *D, struct paramed_type *T);
-void free_ds_constructor_chat_full (struct tl_ds_chat_full *D, struct paramed_type *T);
-void free_ds_constructor_chat_invite_already (struct tl_ds_chat_invite *D, struct paramed_type *T);
-void free_ds_constructor_chat_invite (struct tl_ds_chat_invite *D, struct paramed_type *T);
-void free_ds_constructor_chat_located (struct tl_ds_chat_located *D, struct paramed_type *T);
-void free_ds_constructor_chat_participant (struct tl_ds_chat_participant *D, struct paramed_type *T);
-void free_ds_constructor_chat_participants_forbidden (struct tl_ds_chat_participants *D, struct paramed_type *T);
-void free_ds_constructor_chat_participants (struct tl_ds_chat_participants *D, struct paramed_type *T);
-void free_ds_constructor_chat_photo_empty (struct tl_ds_chat_photo *D, struct paramed_type *T);
-void free_ds_constructor_chat_photo (struct tl_ds_chat_photo *D, struct paramed_type *T);
-void free_ds_constructor_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *D, struct paramed_type *T);
-void free_ds_constructor_config (struct tl_ds_config *D, struct paramed_type *T);
-void free_ds_constructor_contact (struct tl_ds_contact *D, struct paramed_type *T);
-void free_ds_constructor_contact_blocked (struct tl_ds_contact_blocked *D, struct paramed_type *T);
-void free_ds_constructor_contact_found (struct tl_ds_contact_found *D, struct paramed_type *T);
-void free_ds_constructor_contact_link_unknown (struct tl_ds_contact_link *D, struct paramed_type *T);
-void free_ds_constructor_contact_link_none (struct tl_ds_contact_link *D, struct paramed_type *T);
-void free_ds_constructor_contact_link_has_phone (struct tl_ds_contact_link *D, struct paramed_type *T);
-void free_ds_constructor_contact_link_contact (struct tl_ds_contact_link *D, struct paramed_type *T);
-void free_ds_constructor_contact_status (struct tl_ds_contact_status *D, struct paramed_type *T);
-void free_ds_constructor_contact_suggested (struct tl_ds_contact_suggested *D, struct paramed_type *T);
-void free_ds_constructor_dc_option_l28 (struct tl_ds_dc_option *D, struct paramed_type *T);
-void free_ds_constructor_dc_option (struct tl_ds_dc_option *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message (struct tl_ds_decrypted_message *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_service (struct tl_ds_decrypted_message *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_set_message_t_t_l (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_read_messages (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_delete_messages (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_screenshot_messages (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_flush_history (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_resend (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_notify_layer (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_typing (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_request_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_accept_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_abort_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_commit_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_action_noop (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_layer (struct tl_ds_decrypted_message_layer *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_media_empty (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_media_photo (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_media_geo_point (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_media_contact (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_media_document (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_media_video (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_media_audio (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_media_external_document (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_media_video_l12 (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void free_ds_constructor_decrypted_message_media_audio_l12 (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void free_ds_constructor_dialog (struct tl_ds_dialog *D, struct paramed_type *T);
-void free_ds_constructor_disabled_feature (struct tl_ds_disabled_feature *D, struct paramed_type *T);
-void free_ds_constructor_document_empty (struct tl_ds_document *D, struct paramed_type *T);
-void free_ds_constructor_document (struct tl_ds_document *D, struct paramed_type *T);
-void free_ds_constructor_document_l19 (struct tl_ds_document *D, struct paramed_type *T);
-void free_ds_constructor_document_attribute_image_size (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void free_ds_constructor_document_attribute_animated (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void free_ds_constructor_document_attribute_sticker_l28 (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void free_ds_constructor_document_attribute_sticker (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void free_ds_constructor_document_attribute_video (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void free_ds_constructor_document_attribute_audio (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void free_ds_constructor_document_attribute_filename (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void free_ds_constructor_double (double *D, struct paramed_type *T);
-void free_ds_constructor_encrypted_chat_empty (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void free_ds_constructor_encrypted_chat_waiting (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void free_ds_constructor_encrypted_chat_requested (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void free_ds_constructor_encrypted_chat (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void free_ds_constructor_encrypted_chat_discarded (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void free_ds_constructor_encrypted_file_empty (struct tl_ds_encrypted_file *D, struct paramed_type *T);
-void free_ds_constructor_encrypted_file (struct tl_ds_encrypted_file *D, struct paramed_type *T);
-void free_ds_constructor_encrypted_message (struct tl_ds_encrypted_message *D, struct paramed_type *T);
-void free_ds_constructor_encrypted_message_service (struct tl_ds_encrypted_message *D, struct paramed_type *T);
-void free_ds_constructor_error (struct tl_ds_error *D, struct paramed_type *T);
-void free_ds_constructor_chat_invite_empty (struct tl_ds_exported_chat_invite *D, struct paramed_type *T);
-void free_ds_constructor_chat_invite_exported (struct tl_ds_exported_chat_invite *D, struct paramed_type *T);
-void free_ds_constructor_file_location_unavailable (struct tl_ds_file_location *D, struct paramed_type *T);
-void free_ds_constructor_file_location (struct tl_ds_file_location *D, struct paramed_type *T);
-void free_ds_constructor_geo_chat_message_empty (struct tl_ds_geo_chat_message *D, struct paramed_type *T);
-void free_ds_constructor_geo_chat_message (struct tl_ds_geo_chat_message *D, struct paramed_type *T);
-void free_ds_constructor_geo_chat_message_service (struct tl_ds_geo_chat_message *D, struct paramed_type *T);
-void free_ds_constructor_geo_point_empty (struct tl_ds_geo_point *D, struct paramed_type *T);
-void free_ds_constructor_geo_point (struct tl_ds_geo_point *D, struct paramed_type *T);
-void free_ds_constructor_imported_contact (struct tl_ds_imported_contact *D, struct paramed_type *T);
-void free_ds_constructor_input_app_event (struct tl_ds_input_app_event *D, struct paramed_type *T);
-void free_ds_constructor_input_audio_empty (struct tl_ds_input_audio *D, struct paramed_type *T);
-void free_ds_constructor_input_audio (struct tl_ds_input_audio *D, struct paramed_type *T);
-void free_ds_constructor_input_chat_photo_empty (struct tl_ds_input_chat_photo *D, struct paramed_type *T);
-void free_ds_constructor_input_chat_uploaded_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T);
-void free_ds_constructor_input_chat_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T);
-void free_ds_constructor_input_phone_contact (struct tl_ds_input_contact *D, struct paramed_type *T);
-void free_ds_constructor_input_document_empty (struct tl_ds_input_document *D, struct paramed_type *T);
-void free_ds_constructor_input_document (struct tl_ds_input_document *D, struct paramed_type *T);
-void free_ds_constructor_input_encrypted_chat (struct tl_ds_input_encrypted_chat *D, struct paramed_type *T);
-void free_ds_constructor_input_encrypted_file_empty (struct tl_ds_input_encrypted_file *D, struct paramed_type *T);
-void free_ds_constructor_input_encrypted_file_uploaded (struct tl_ds_input_encrypted_file *D, struct paramed_type *T);
-void free_ds_constructor_input_encrypted_file (struct tl_ds_input_encrypted_file *D, struct paramed_type *T);
-void free_ds_constructor_input_encrypted_file_big_uploaded (struct tl_ds_input_encrypted_file *D, struct paramed_type *T);
-void free_ds_constructor_input_file (struct tl_ds_input_file *D, struct paramed_type *T);
-void free_ds_constructor_input_file_big (struct tl_ds_input_file *D, struct paramed_type *T);
-void free_ds_constructor_input_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void free_ds_constructor_input_video_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void free_ds_constructor_input_encrypted_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void free_ds_constructor_input_audio_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void free_ds_constructor_input_document_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void free_ds_constructor_input_geo_chat (struct tl_ds_input_geo_chat *D, struct paramed_type *T);
-void free_ds_constructor_input_geo_point_empty (struct tl_ds_input_geo_point *D, struct paramed_type *T);
-void free_ds_constructor_input_geo_point (struct tl_ds_input_geo_point *D, struct paramed_type *T);
-void free_ds_constructor_input_media_empty (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_uploaded_photo (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_photo (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_geo_point (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_contact (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_uploaded_video (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_uploaded_thumb_video (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_video (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_uploaded_audio (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_audio (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_uploaded_document (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_uploaded_thumb_document (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_document (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_media_venue (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_constructor_input_notify_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void free_ds_constructor_input_notify_users (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void free_ds_constructor_input_notify_chats (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void free_ds_constructor_input_notify_all (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void free_ds_constructor_input_notify_geo_chat_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void free_ds_constructor_input_peer_empty (struct tl_ds_input_peer *D, struct paramed_type *T);
-void free_ds_constructor_input_peer_self (struct tl_ds_input_peer *D, struct paramed_type *T);
-void free_ds_constructor_input_peer_contact (struct tl_ds_input_peer *D, struct paramed_type *T);
-void free_ds_constructor_input_peer_foreign (struct tl_ds_input_peer *D, struct paramed_type *T);
-void free_ds_constructor_input_peer_chat (struct tl_ds_input_peer *D, struct paramed_type *T);
-void free_ds_constructor_input_peer_notify_events_empty (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T);
-void free_ds_constructor_input_peer_notify_events_all (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T);
-void free_ds_constructor_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *D, struct paramed_type *T);
-void free_ds_constructor_input_photo_empty (struct tl_ds_input_photo *D, struct paramed_type *T);
-void free_ds_constructor_input_photo (struct tl_ds_input_photo *D, struct paramed_type *T);
-void free_ds_constructor_input_photo_crop_auto (struct tl_ds_input_photo_crop *D, struct paramed_type *T);
-void free_ds_constructor_input_photo_crop (struct tl_ds_input_photo_crop *D, struct paramed_type *T);
-void free_ds_constructor_input_privacy_key_status_timestamp (struct tl_ds_input_privacy_key *D, struct paramed_type *T);
-void free_ds_constructor_input_privacy_value_allow_contacts (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void free_ds_constructor_input_privacy_value_allow_all (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void free_ds_constructor_input_privacy_value_allow_users (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void free_ds_constructor_input_privacy_value_disallow_contacts (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void free_ds_constructor_input_privacy_value_disallow_all (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void free_ds_constructor_input_privacy_value_disallow_users (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void free_ds_constructor_input_sticker_set_empty (struct tl_ds_input_sticker_set *D, struct paramed_type *T);
-void free_ds_constructor_input_sticker_set_i_d (struct tl_ds_input_sticker_set *D, struct paramed_type *T);
-void free_ds_constructor_input_sticker_set_short_name (struct tl_ds_input_sticker_set *D, struct paramed_type *T);
-void free_ds_constructor_input_user_empty (struct tl_ds_input_user *D, struct paramed_type *T);
-void free_ds_constructor_input_user_self (struct tl_ds_input_user *D, struct paramed_type *T);
-void free_ds_constructor_input_user_contact (struct tl_ds_input_user *D, struct paramed_type *T);
-void free_ds_constructor_input_user_foreign (struct tl_ds_input_user *D, struct paramed_type *T);
-void free_ds_constructor_input_video_empty (struct tl_ds_input_video *D, struct paramed_type *T);
-void free_ds_constructor_input_video (struct tl_ds_input_video *D, struct paramed_type *T);
-void free_ds_constructor_int (int *D, struct paramed_type *T);
-void free_ds_constructor_int128 (struct tl_ds_int128 *D, struct paramed_type *T);
-void free_ds_constructor_int256 (struct tl_ds_int256 *D, struct paramed_type *T);
-void free_ds_constructor_keyboard_button (struct tl_ds_keyboard_button *D, struct paramed_type *T);
-void free_ds_constructor_keyboard_button_row (struct tl_ds_keyboard_button_row *D, struct paramed_type *T);
-void free_ds_constructor_long (long long *D, struct paramed_type *T);
-void free_ds_constructor_message_empty (struct tl_ds_message *D, struct paramed_type *T);
-void free_ds_constructor_message (struct tl_ds_message *D, struct paramed_type *T);
-void free_ds_constructor_message_service (struct tl_ds_message *D, struct paramed_type *T);
-void free_ds_constructor_message_action_empty (struct tl_ds_message_action *D, struct paramed_type *T);
-void free_ds_constructor_message_action_chat_create (struct tl_ds_message_action *D, struct paramed_type *T);
-void free_ds_constructor_message_action_chat_edit_title (struct tl_ds_message_action *D, struct paramed_type *T);
-void free_ds_constructor_message_action_chat_edit_photo (struct tl_ds_message_action *D, struct paramed_type *T);
-void free_ds_constructor_message_action_chat_delete_photo (struct tl_ds_message_action *D, struct paramed_type *T);
-void free_ds_constructor_message_action_chat_add_user (struct tl_ds_message_action *D, struct paramed_type *T);
-void free_ds_constructor_message_action_chat_delete_user (struct tl_ds_message_action *D, struct paramed_type *T);
-void free_ds_constructor_message_action_geo_chat_create (struct tl_ds_message_action *D, struct paramed_type *T);
-void free_ds_constructor_message_action_geo_chat_checkin (struct tl_ds_message_action *D, struct paramed_type *T);
-void free_ds_constructor_message_action_chat_joined_by_link (struct tl_ds_message_action *D, struct paramed_type *T);
-void free_ds_constructor_message_media_empty (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_constructor_message_media_photo (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_constructor_message_media_video (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_constructor_message_media_geo (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_constructor_message_media_contact (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_constructor_message_media_unsupported (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_constructor_message_media_document (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_constructor_message_media_audio (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_constructor_message_media_web_page (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_constructor_message_media_venue (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_constructor_message_media_photo_l27 (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_constructor_message_media_video_l27 (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_constructor_input_messages_filter_empty (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void free_ds_constructor_input_messages_filter_photos (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void free_ds_constructor_input_messages_filter_video (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void free_ds_constructor_input_messages_filter_photo_video (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void free_ds_constructor_input_messages_filter_photo_video_documents (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void free_ds_constructor_input_messages_filter_document (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void free_ds_constructor_input_messages_filter_audio (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void free_ds_constructor_nearest_dc (struct tl_ds_nearest_dc *D, struct paramed_type *T);
-void free_ds_constructor_notify_peer (struct tl_ds_notify_peer *D, struct paramed_type *T);
-void free_ds_constructor_notify_users (struct tl_ds_notify_peer *D, struct paramed_type *T);
-void free_ds_constructor_notify_chats (struct tl_ds_notify_peer *D, struct paramed_type *T);
-void free_ds_constructor_notify_all (struct tl_ds_notify_peer *D, struct paramed_type *T);
-void free_ds_constructor_null (struct tl_ds_null *D, struct paramed_type *T);
-void free_ds_constructor_p_q_inner_data (struct tl_ds_p_q_inner_data *D, struct paramed_type *T);
-void free_ds_constructor_p_q_inner_data_temp (struct tl_ds_p_q_inner_data *D, struct paramed_type *T);
-void free_ds_constructor_peer_user (struct tl_ds_peer *D, struct paramed_type *T);
-void free_ds_constructor_peer_chat (struct tl_ds_peer *D, struct paramed_type *T);
-void free_ds_constructor_peer_notify_events_empty (struct tl_ds_peer_notify_events *D, struct paramed_type *T);
-void free_ds_constructor_peer_notify_events_all (struct tl_ds_peer_notify_events *D, struct paramed_type *T);
-void free_ds_constructor_peer_notify_settings_empty (struct tl_ds_peer_notify_settings *D, struct paramed_type *T);
-void free_ds_constructor_peer_notify_settings (struct tl_ds_peer_notify_settings *D, struct paramed_type *T);
-void free_ds_constructor_photo_empty (struct tl_ds_photo *D, struct paramed_type *T);
-void free_ds_constructor_photo (struct tl_ds_photo *D, struct paramed_type *T);
-void free_ds_constructor_photo_l27 (struct tl_ds_photo *D, struct paramed_type *T);
-void free_ds_constructor_photo_size_empty (struct tl_ds_photo_size *D, struct paramed_type *T);
-void free_ds_constructor_photo_size (struct tl_ds_photo_size *D, struct paramed_type *T);
-void free_ds_constructor_photo_cached_size (struct tl_ds_photo_size *D, struct paramed_type *T);
-void free_ds_constructor_privacy_key_status_timestamp (struct tl_ds_privacy_key *D, struct paramed_type *T);
-void free_ds_constructor_privacy_value_allow_contacts (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void free_ds_constructor_privacy_value_allow_all (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void free_ds_constructor_privacy_value_allow_users (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void free_ds_constructor_privacy_value_disallow_contacts (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void free_ds_constructor_privacy_value_disallow_all (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void free_ds_constructor_privacy_value_disallow_users (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void free_ds_constructor_received_notify_message (struct tl_ds_received_notify_message *D, struct paramed_type *T);
-void free_ds_constructor_reply_keyboard_hide (struct tl_ds_reply_markup *D, struct paramed_type *T);
-void free_ds_constructor_reply_keyboard_force_reply (struct tl_ds_reply_markup *D, struct paramed_type *T);
-void free_ds_constructor_reply_keyboard_markup (struct tl_ds_reply_markup *D, struct paramed_type *T);
-void free_ds_constructor_res_p_q (struct tl_ds_res_p_q *D, struct paramed_type *T);
-void free_ds_constructor_send_message_typing_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_send_message_cancel_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_send_message_record_video_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_send_message_upload_video_action_l27 (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_send_message_upload_video_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_send_message_record_audio_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_send_message_upload_audio_action_l27 (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_send_message_upload_audio_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_send_message_upload_photo_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_send_message_upload_document_action_l27 (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_send_message_upload_document_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_send_message_geo_location_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_send_message_choose_contact_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_constructor_server_d_h_params_fail (struct tl_ds_server_d_h_params *D, struct paramed_type *T);
-void free_ds_constructor_server_d_h_params_ok (struct tl_ds_server_d_h_params *D, struct paramed_type *T);
-void free_ds_constructor_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *D, struct paramed_type *T);
-void free_ds_constructor_dh_gen_ok (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T);
-void free_ds_constructor_dh_gen_retry (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T);
-void free_ds_constructor_dh_gen_fail (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T);
-void free_ds_constructor_sticker_pack (struct tl_ds_sticker_pack *D, struct paramed_type *T);
-void free_ds_constructor_sticker_set (struct tl_ds_sticker_set *D, struct paramed_type *T);
-void free_ds_constructor_string (struct tl_ds_string *D, struct paramed_type *T);
-void free_ds_constructor_update_new_message (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_message_i_d (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_delete_messages (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_user_typing (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_chat_user_typing (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_chat_participants (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_user_status (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_user_name (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_user_photo (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_contact_registered (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_contact_link (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_new_authorization (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_new_geo_chat_message (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_new_encrypted_message (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_encrypted_chat_typing (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_encryption (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_encrypted_messages_read (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_chat_participant_add (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_chat_participant_delete (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_dc_options (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_user_blocked (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_notify_settings (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_service_notification (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_privacy (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_user_phone (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_read_history_inbox (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_read_history_outbox (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_web_page (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_read_messages_contents (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_update_msg_update (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_constructor_updates_too_long (struct tl_ds_updates *D, struct paramed_type *T);
-void free_ds_constructor_update_short_message (struct tl_ds_updates *D, struct paramed_type *T);
-void free_ds_constructor_update_short_chat_message (struct tl_ds_updates *D, struct paramed_type *T);
-void free_ds_constructor_update_short (struct tl_ds_updates *D, struct paramed_type *T);
-void free_ds_constructor_updates_combined (struct tl_ds_updates *D, struct paramed_type *T);
-void free_ds_constructor_updates (struct tl_ds_updates *D, struct paramed_type *T);
-void free_ds_constructor_user_empty (struct tl_ds_user *D, struct paramed_type *T);
-void free_ds_constructor_user (struct tl_ds_user *D, struct paramed_type *T);
-void free_ds_constructor_user_full (struct tl_ds_user_full *D, struct paramed_type *T);
-void free_ds_constructor_user_profile_photo_empty (struct tl_ds_user_profile_photo *D, struct paramed_type *T);
-void free_ds_constructor_user_profile_photo (struct tl_ds_user_profile_photo *D, struct paramed_type *T);
-void free_ds_constructor_user_status_empty (struct tl_ds_user_status *D, struct paramed_type *T);
-void free_ds_constructor_user_status_online (struct tl_ds_user_status *D, struct paramed_type *T);
-void free_ds_constructor_user_status_offline (struct tl_ds_user_status *D, struct paramed_type *T);
-void free_ds_constructor_user_status_recently (struct tl_ds_user_status *D, struct paramed_type *T);
-void free_ds_constructor_user_status_last_week (struct tl_ds_user_status *D, struct paramed_type *T);
-void free_ds_constructor_user_status_last_month (struct tl_ds_user_status *D, struct paramed_type *T);
-void free_ds_constructor_vector (struct tl_ds_vector *D, struct paramed_type *T);
-void free_ds_constructor_video_empty (struct tl_ds_video *D, struct paramed_type *T);
-void free_ds_constructor_video (struct tl_ds_video *D, struct paramed_type *T);
-void free_ds_constructor_video_l27 (struct tl_ds_video *D, struct paramed_type *T);
-void free_ds_constructor_wall_paper (struct tl_ds_wall_paper *D, struct paramed_type *T);
-void free_ds_constructor_wall_paper_solid (struct tl_ds_wall_paper *D, struct paramed_type *T);
-void free_ds_constructor_web_page_empty (struct tl_ds_web_page *D, struct paramed_type *T);
-void free_ds_constructor_web_page_pending (struct tl_ds_web_page *D, struct paramed_type *T);
-void free_ds_constructor_web_page (struct tl_ds_web_page *D, struct paramed_type *T);
-void free_ds_constructor_account_authorizations (struct tl_ds_account_authorizations *D, struct paramed_type *T);
-void free_ds_constructor_account_no_password (struct tl_ds_account_password *D, struct paramed_type *T);
-void free_ds_constructor_account_password (struct tl_ds_account_password *D, struct paramed_type *T);
-void free_ds_constructor_account_password_input_settings (struct tl_ds_account_password_input_settings *D, struct paramed_type *T);
-void free_ds_constructor_account_password_settings (struct tl_ds_account_password_settings *D, struct paramed_type *T);
-void free_ds_constructor_account_privacy_rules (struct tl_ds_account_privacy_rules *D, struct paramed_type *T);
-void free_ds_constructor_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *D, struct paramed_type *T);
-void free_ds_constructor_auth_authorization (struct tl_ds_auth_authorization *D, struct paramed_type *T);
-void free_ds_constructor_auth_checked_phone (struct tl_ds_auth_checked_phone *D, struct paramed_type *T);
-void free_ds_constructor_auth_exported_authorization (struct tl_ds_auth_exported_authorization *D, struct paramed_type *T);
-void free_ds_constructor_auth_password_recovery (struct tl_ds_auth_password_recovery *D, struct paramed_type *T);
-void free_ds_constructor_auth_sent_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T);
-void free_ds_constructor_auth_sent_app_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T);
-void free_ds_constructor_binlog_encr_key (struct tl_ds_binlog_encr_key *D, struct paramed_type *T);
-void free_ds_constructor_binlog_start (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_dc_option (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_dc_option_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_auth_key (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_default_dc (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_dc_signed (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_our_id (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_set_dh_params (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_set_pts (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_set_qts (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_set_date (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_set_seq (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_encr_chat_delete (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_encr_chat_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_encr_chat_exchange_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_user_delete (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_user_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_chat_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_chat_add_participant (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_chat_del_participant (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_set_msg_id (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_message_delete (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_message_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_message_encr_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_msg_update (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_binlog_reset_authorization (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_constructor_contacts_blocked (struct tl_ds_contacts_blocked *D, struct paramed_type *T);
-void free_ds_constructor_contacts_blocked_slice (struct tl_ds_contacts_blocked *D, struct paramed_type *T);
-void free_ds_constructor_contacts_contacts_not_modified (struct tl_ds_contacts_contacts *D, struct paramed_type *T);
-void free_ds_constructor_contacts_contacts (struct tl_ds_contacts_contacts *D, struct paramed_type *T);
-void free_ds_constructor_contacts_found (struct tl_ds_contacts_found *D, struct paramed_type *T);
-void free_ds_constructor_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *D, struct paramed_type *T);
-void free_ds_constructor_contacts_link (struct tl_ds_contacts_link *D, struct paramed_type *T);
-void free_ds_constructor_contacts_suggested (struct tl_ds_contacts_suggested *D, struct paramed_type *T);
-void free_ds_constructor_geochats_located (struct tl_ds_geochats_located *D, struct paramed_type *T);
-void free_ds_constructor_geochats_messages (struct tl_ds_geochats_messages *D, struct paramed_type *T);
-void free_ds_constructor_geochats_messages_slice (struct tl_ds_geochats_messages *D, struct paramed_type *T);
-void free_ds_constructor_geochats_stated_message (struct tl_ds_geochats_stated_message *D, struct paramed_type *T);
-void free_ds_constructor_help_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T);
-void free_ds_constructor_help_no_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T);
-void free_ds_constructor_help_invite_text (struct tl_ds_help_invite_text *D, struct paramed_type *T);
-void free_ds_constructor_help_support (struct tl_ds_help_support *D, struct paramed_type *T);
-void free_ds_constructor_messages_affected_history (struct tl_ds_messages_affected_history *D, struct paramed_type *T);
-void free_ds_constructor_messages_affected_messages (struct tl_ds_messages_affected_messages *D, struct paramed_type *T);
-void free_ds_constructor_messages_all_stickers_not_modified (struct tl_ds_messages_all_stickers *D, struct paramed_type *T);
-void free_ds_constructor_messages_all_stickers (struct tl_ds_messages_all_stickers *D, struct paramed_type *T);
-void free_ds_constructor_messages_chat_full (struct tl_ds_messages_chat_full *D, struct paramed_type *T);
-void free_ds_constructor_messages_chats (struct tl_ds_messages_chats *D, struct paramed_type *T);
-void free_ds_constructor_messages_dh_config_not_modified (struct tl_ds_messages_dh_config *D, struct paramed_type *T);
-void free_ds_constructor_messages_dh_config (struct tl_ds_messages_dh_config *D, struct paramed_type *T);
-void free_ds_constructor_messages_dialogs (struct tl_ds_messages_dialogs *D, struct paramed_type *T);
-void free_ds_constructor_messages_dialogs_slice (struct tl_ds_messages_dialogs *D, struct paramed_type *T);
-void free_ds_constructor_messages_message_empty (struct tl_ds_messages_message *D, struct paramed_type *T);
-void free_ds_constructor_messages_messages (struct tl_ds_messages_messages *D, struct paramed_type *T);
-void free_ds_constructor_messages_messages_slice (struct tl_ds_messages_messages *D, struct paramed_type *T);
-void free_ds_constructor_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T);
-void free_ds_constructor_messages_sent_encrypted_file (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T);
-void free_ds_constructor_messages_sent_message (struct tl_ds_messages_sent_message *D, struct paramed_type *T);
-void free_ds_constructor_messages_sent_message_link (struct tl_ds_messages_sent_message *D, struct paramed_type *T);
-void free_ds_constructor_messages_sticker_set (struct tl_ds_messages_sticker_set *D, struct paramed_type *T);
-void free_ds_constructor_messages_stickers_not_modified (struct tl_ds_messages_stickers *D, struct paramed_type *T);
-void free_ds_constructor_messages_stickers (struct tl_ds_messages_stickers *D, struct paramed_type *T);
-void free_ds_constructor_photos_photo (struct tl_ds_photos_photo *D, struct paramed_type *T);
-void free_ds_constructor_photos_photos (struct tl_ds_photos_photos *D, struct paramed_type *T);
-void free_ds_constructor_photos_photos_slice (struct tl_ds_photos_photos *D, struct paramed_type *T);
-void free_ds_constructor_storage_file_unknown (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void free_ds_constructor_storage_file_jpeg (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void free_ds_constructor_storage_file_gif (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void free_ds_constructor_storage_file_png (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void free_ds_constructor_storage_file_pdf (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void free_ds_constructor_storage_file_mp3 (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void free_ds_constructor_storage_file_mov (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void free_ds_constructor_storage_file_partial (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void free_ds_constructor_storage_file_mp4 (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void free_ds_constructor_storage_file_webp (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void free_ds_constructor_updates_difference_empty (struct tl_ds_updates_difference *D, struct paramed_type *T);
-void free_ds_constructor_updates_difference (struct tl_ds_updates_difference *D, struct paramed_type *T);
-void free_ds_constructor_updates_difference_slice (struct tl_ds_updates_difference *D, struct paramed_type *T);
-void free_ds_constructor_updates_state (struct tl_ds_updates_state *D, struct paramed_type *T);
-void free_ds_constructor_upload_file (struct tl_ds_upload_file *D, struct paramed_type *T);
-void free_ds_type_account_days_t_t_l (struct tl_ds_account_days_t_t_l *D, struct paramed_type *T);
-void free_ds_type_audio (struct tl_ds_audio *D, struct paramed_type *T);
-void free_ds_type_authorization (struct tl_ds_authorization *D, struct paramed_type *T);
-void free_ds_type_bool (struct tl_ds_bool *D, struct paramed_type *T);
-void free_ds_type_bot_command (struct tl_ds_bot_command *D, struct paramed_type *T);
-void free_ds_type_bot_info (struct tl_ds_bot_info *D, struct paramed_type *T);
-void free_ds_type_bytes (struct tl_ds_string *D, struct paramed_type *T);
-void free_ds_type_chat (struct tl_ds_chat *D, struct paramed_type *T);
-void free_ds_type_chat_full (struct tl_ds_chat_full *D, struct paramed_type *T);
-void free_ds_type_chat_invite (struct tl_ds_chat_invite *D, struct paramed_type *T);
-void free_ds_type_chat_located (struct tl_ds_chat_located *D, struct paramed_type *T);
-void free_ds_type_chat_participant (struct tl_ds_chat_participant *D, struct paramed_type *T);
-void free_ds_type_chat_participants (struct tl_ds_chat_participants *D, struct paramed_type *T);
-void free_ds_type_chat_photo (struct tl_ds_chat_photo *D, struct paramed_type *T);
-void free_ds_type_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *D, struct paramed_type *T);
-void free_ds_type_config (struct tl_ds_config *D, struct paramed_type *T);
-void free_ds_type_contact (struct tl_ds_contact *D, struct paramed_type *T);
-void free_ds_type_contact_blocked (struct tl_ds_contact_blocked *D, struct paramed_type *T);
-void free_ds_type_contact_found (struct tl_ds_contact_found *D, struct paramed_type *T);
-void free_ds_type_contact_link (struct tl_ds_contact_link *D, struct paramed_type *T);
-void free_ds_type_contact_status (struct tl_ds_contact_status *D, struct paramed_type *T);
-void free_ds_type_contact_suggested (struct tl_ds_contact_suggested *D, struct paramed_type *T);
-void free_ds_type_dc_option (struct tl_ds_dc_option *D, struct paramed_type *T);
-void free_ds_type_decrypted_message (struct tl_ds_decrypted_message *D, struct paramed_type *T);
-void free_ds_type_decrypted_message_action (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void free_ds_type_decrypted_message_layer (struct tl_ds_decrypted_message_layer *D, struct paramed_type *T);
-void free_ds_type_decrypted_message_media (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void free_ds_type_dialog (struct tl_ds_dialog *D, struct paramed_type *T);
-void free_ds_type_disabled_feature (struct tl_ds_disabled_feature *D, struct paramed_type *T);
-void free_ds_type_document (struct tl_ds_document *D, struct paramed_type *T);
-void free_ds_type_document_attribute (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void free_ds_type_double (double *D, struct paramed_type *T);
-void free_ds_type_encrypted_chat (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void free_ds_type_encrypted_file (struct tl_ds_encrypted_file *D, struct paramed_type *T);
-void free_ds_type_encrypted_message (struct tl_ds_encrypted_message *D, struct paramed_type *T);
-void free_ds_type_error (struct tl_ds_error *D, struct paramed_type *T);
-void free_ds_type_exported_chat_invite (struct tl_ds_exported_chat_invite *D, struct paramed_type *T);
-void free_ds_type_file_location (struct tl_ds_file_location *D, struct paramed_type *T);
-void free_ds_type_geo_chat_message (struct tl_ds_geo_chat_message *D, struct paramed_type *T);
-void free_ds_type_geo_point (struct tl_ds_geo_point *D, struct paramed_type *T);
-void free_ds_type_imported_contact (struct tl_ds_imported_contact *D, struct paramed_type *T);
-void free_ds_type_input_app_event (struct tl_ds_input_app_event *D, struct paramed_type *T);
-void free_ds_type_input_audio (struct tl_ds_input_audio *D, struct paramed_type *T);
-void free_ds_type_input_chat_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T);
-void free_ds_type_input_contact (struct tl_ds_input_contact *D, struct paramed_type *T);
-void free_ds_type_input_document (struct tl_ds_input_document *D, struct paramed_type *T);
-void free_ds_type_input_encrypted_chat (struct tl_ds_input_encrypted_chat *D, struct paramed_type *T);
-void free_ds_type_input_encrypted_file (struct tl_ds_input_encrypted_file *D, struct paramed_type *T);
-void free_ds_type_input_file (struct tl_ds_input_file *D, struct paramed_type *T);
-void free_ds_type_input_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void free_ds_type_input_geo_chat (struct tl_ds_input_geo_chat *D, struct paramed_type *T);
-void free_ds_type_input_geo_point (struct tl_ds_input_geo_point *D, struct paramed_type *T);
-void free_ds_type_input_media (struct tl_ds_input_media *D, struct paramed_type *T);
-void free_ds_type_input_notify_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void free_ds_type_input_peer (struct tl_ds_input_peer *D, struct paramed_type *T);
-void free_ds_type_input_peer_notify_events (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T);
-void free_ds_type_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *D, struct paramed_type *T);
-void free_ds_type_input_photo (struct tl_ds_input_photo *D, struct paramed_type *T);
-void free_ds_type_input_photo_crop (struct tl_ds_input_photo_crop *D, struct paramed_type *T);
-void free_ds_type_input_privacy_key (struct tl_ds_input_privacy_key *D, struct paramed_type *T);
-void free_ds_type_input_privacy_rule (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void free_ds_type_input_sticker_set (struct tl_ds_input_sticker_set *D, struct paramed_type *T);
-void free_ds_type_input_user (struct tl_ds_input_user *D, struct paramed_type *T);
-void free_ds_type_input_video (struct tl_ds_input_video *D, struct paramed_type *T);
-void free_ds_type_int (int *D, struct paramed_type *T);
-void free_ds_type_int128 (struct tl_ds_int128 *D, struct paramed_type *T);
-void free_ds_type_int256 (struct tl_ds_int256 *D, struct paramed_type *T);
-void free_ds_type_keyboard_button (struct tl_ds_keyboard_button *D, struct paramed_type *T);
-void free_ds_type_keyboard_button_row (struct tl_ds_keyboard_button_row *D, struct paramed_type *T);
-void free_ds_type_long (long long *D, struct paramed_type *T);
-void free_ds_type_message (struct tl_ds_message *D, struct paramed_type *T);
-void free_ds_type_message_action (struct tl_ds_message_action *D, struct paramed_type *T);
-void free_ds_type_message_media (struct tl_ds_message_media *D, struct paramed_type *T);
-void free_ds_type_messages_filter (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void free_ds_type_nearest_dc (struct tl_ds_nearest_dc *D, struct paramed_type *T);
-void free_ds_type_notify_peer (struct tl_ds_notify_peer *D, struct paramed_type *T);
-void free_ds_type_null (struct tl_ds_null *D, struct paramed_type *T);
-void free_ds_type_p_q_inner_data (struct tl_ds_p_q_inner_data *D, struct paramed_type *T);
-void free_ds_type_peer (struct tl_ds_peer *D, struct paramed_type *T);
-void free_ds_type_peer_notify_events (struct tl_ds_peer_notify_events *D, struct paramed_type *T);
-void free_ds_type_peer_notify_settings (struct tl_ds_peer_notify_settings *D, struct paramed_type *T);
-void free_ds_type_photo (struct tl_ds_photo *D, struct paramed_type *T);
-void free_ds_type_photo_size (struct tl_ds_photo_size *D, struct paramed_type *T);
-void free_ds_type_privacy_key (struct tl_ds_privacy_key *D, struct paramed_type *T);
-void free_ds_type_privacy_rule (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void free_ds_type_received_notify_message (struct tl_ds_received_notify_message *D, struct paramed_type *T);
-void free_ds_type_reply_markup (struct tl_ds_reply_markup *D, struct paramed_type *T);
-void free_ds_type_res_p_q (struct tl_ds_res_p_q *D, struct paramed_type *T);
-void free_ds_type_send_message_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void free_ds_type_server_d_h_params (struct tl_ds_server_d_h_params *D, struct paramed_type *T);
-void free_ds_type_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *D, struct paramed_type *T);
-void free_ds_type_set_client_d_h_params_answer (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T);
-void free_ds_type_sticker_pack (struct tl_ds_sticker_pack *D, struct paramed_type *T);
-void free_ds_type_sticker_set (struct tl_ds_sticker_set *D, struct paramed_type *T);
-void free_ds_type_string (struct tl_ds_string *D, struct paramed_type *T);
-void free_ds_type_update (struct tl_ds_update *D, struct paramed_type *T);
-void free_ds_type_updates (struct tl_ds_updates *D, struct paramed_type *T);
-void free_ds_type_user (struct tl_ds_user *D, struct paramed_type *T);
-void free_ds_type_user_full (struct tl_ds_user_full *D, struct paramed_type *T);
-void free_ds_type_user_profile_photo (struct tl_ds_user_profile_photo *D, struct paramed_type *T);
-void free_ds_type_user_status (struct tl_ds_user_status *D, struct paramed_type *T);
-void free_ds_type_vector (struct tl_ds_vector *D, struct paramed_type *T);
-void free_ds_type_video (struct tl_ds_video *D, struct paramed_type *T);
-void free_ds_type_wall_paper (struct tl_ds_wall_paper *D, struct paramed_type *T);
-void free_ds_type_web_page (struct tl_ds_web_page *D, struct paramed_type *T);
-void free_ds_type_account_authorizations (struct tl_ds_account_authorizations *D, struct paramed_type *T);
-void free_ds_type_account_password (struct tl_ds_account_password *D, struct paramed_type *T);
-void free_ds_type_account_password_input_settings (struct tl_ds_account_password_input_settings *D, struct paramed_type *T);
-void free_ds_type_account_password_settings (struct tl_ds_account_password_settings *D, struct paramed_type *T);
-void free_ds_type_account_privacy_rules (struct tl_ds_account_privacy_rules *D, struct paramed_type *T);
-void free_ds_type_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *D, struct paramed_type *T);
-void free_ds_type_auth_authorization (struct tl_ds_auth_authorization *D, struct paramed_type *T);
-void free_ds_type_auth_checked_phone (struct tl_ds_auth_checked_phone *D, struct paramed_type *T);
-void free_ds_type_auth_exported_authorization (struct tl_ds_auth_exported_authorization *D, struct paramed_type *T);
-void free_ds_type_auth_password_recovery (struct tl_ds_auth_password_recovery *D, struct paramed_type *T);
-void free_ds_type_auth_sent_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T);
-void free_ds_type_binlog_encr_key (struct tl_ds_binlog_encr_key *D, struct paramed_type *T);
-void free_ds_type_binlog_update (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void free_ds_type_contacts_blocked (struct tl_ds_contacts_blocked *D, struct paramed_type *T);
-void free_ds_type_contacts_contacts (struct tl_ds_contacts_contacts *D, struct paramed_type *T);
-void free_ds_type_contacts_found (struct tl_ds_contacts_found *D, struct paramed_type *T);
-void free_ds_type_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *D, struct paramed_type *T);
-void free_ds_type_contacts_link (struct tl_ds_contacts_link *D, struct paramed_type *T);
-void free_ds_type_contacts_suggested (struct tl_ds_contacts_suggested *D, struct paramed_type *T);
-void free_ds_type_geochats_located (struct tl_ds_geochats_located *D, struct paramed_type *T);
-void free_ds_type_geochats_messages (struct tl_ds_geochats_messages *D, struct paramed_type *T);
-void free_ds_type_geochats_stated_message (struct tl_ds_geochats_stated_message *D, struct paramed_type *T);
-void free_ds_type_help_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T);
-void free_ds_type_help_invite_text (struct tl_ds_help_invite_text *D, struct paramed_type *T);
-void free_ds_type_help_support (struct tl_ds_help_support *D, struct paramed_type *T);
-void free_ds_type_messages_affected_history (struct tl_ds_messages_affected_history *D, struct paramed_type *T);
-void free_ds_type_messages_affected_messages (struct tl_ds_messages_affected_messages *D, struct paramed_type *T);
-void free_ds_type_messages_all_stickers (struct tl_ds_messages_all_stickers *D, struct paramed_type *T);
-void free_ds_type_messages_chat_full (struct tl_ds_messages_chat_full *D, struct paramed_type *T);
-void free_ds_type_messages_chats (struct tl_ds_messages_chats *D, struct paramed_type *T);
-void free_ds_type_messages_dh_config (struct tl_ds_messages_dh_config *D, struct paramed_type *T);
-void free_ds_type_messages_dialogs (struct tl_ds_messages_dialogs *D, struct paramed_type *T);
-void free_ds_type_messages_message (struct tl_ds_messages_message *D, struct paramed_type *T);
-void free_ds_type_messages_messages (struct tl_ds_messages_messages *D, struct paramed_type *T);
-void free_ds_type_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T);
-void free_ds_type_messages_sent_message (struct tl_ds_messages_sent_message *D, struct paramed_type *T);
-void free_ds_type_messages_sticker_set (struct tl_ds_messages_sticker_set *D, struct paramed_type *T);
-void free_ds_type_messages_stickers (struct tl_ds_messages_stickers *D, struct paramed_type *T);
-void free_ds_type_photos_photo (struct tl_ds_photos_photo *D, struct paramed_type *T);
-void free_ds_type_photos_photos (struct tl_ds_photos_photos *D, struct paramed_type *T);
-void free_ds_type_storage_file_type (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void free_ds_type_updates_difference (struct tl_ds_updates_difference *D, struct paramed_type *T);
-void free_ds_type_updates_state (struct tl_ds_updates_state *D, struct paramed_type *T);
-void free_ds_type_upload_file (struct tl_ds_upload_file *D, struct paramed_type *T);
-void free_ds_type_any (void *D, struct paramed_type *T);
diff --git a/protocols/Telegram/src/tgl/auto/auto-print-ds.c b/protocols/Telegram/src/tgl/auto/auto-print-ds.c
deleted file mode 100644
index 6ca075d912..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-print-ds.c
+++ /dev/null
@@ -1,16382 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#include "auto-print-ds.h"
-#include "auto-skip.h"
-#include "..\auto-static-print-ds.c"
-#include "..\mtproto-common.h"
-#else
-#include "auto.h"
-#include "auto/auto-print-ds.h"
-#include "auto/auto-skip.h"
-#include "auto-static-print-ds.c"
-#include "mtproto-common.h"
-#endif
-#include <assert.h>
-int print_ds_constructor_account_days_t_t_l (struct tl_ds_account_days_t_t_l *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb8d0afdf && T->type->name != 0x472f5020)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->days, field1);
- return 0;
-}
-int print_ds_constructor_audio_empty (struct tl_ds_audio *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return -1; }
- eprintf (" audioEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_audio (struct tl_ds_audio *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return -1; }
- eprintf (" audio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->mime_type, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc_id, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_authorization (struct tl_ds_authorization *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bf2e6f6 && T->type->name != 0x840d1909)) { return -1; }
- eprintf (" authorization");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" hash :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->hash, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->flags, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" device_model :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->device_model, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" platform :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->platform, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" system_version :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->system_version, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" api_id :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->api_id, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" app_name :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->app_name, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" app_version :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->app_version, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date_created :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date_created, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date_active :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date_active, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ip :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->ip, field11);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" country :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->country, field12);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" region :"); }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->region, field13);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_bool_false (struct tl_ds_bool *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return -1; }
- eprintf (" boolFalse");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_bool_true (struct tl_ds_bool *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return -1; }
- eprintf (" boolTrue");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_bot_command (struct tl_ds_bot_command *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return -1; }
- eprintf (" botCommand");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" command :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->command, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" description :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->description, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_bot_command_old (struct tl_ds_bot_command *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return -1; }
- eprintf (" botCommandOld");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" command :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->command, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" params :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->params, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" description :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->description, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_bot_info_empty (struct tl_ds_bot_info *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return -1; }
- eprintf (" botInfoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_bot_info (struct tl_ds_bot_info *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return -1; }
- eprintf (" botInfo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->version, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" share_text :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->share_text, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" description :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->description, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" commands :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x75e7ea6c, .id = "BotCommand", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->commands, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_bytes (struct tl_ds_string *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0ee1379f && T->type->name != 0xf11ec860)) { return -1; }
- print_escaped_string (DS->data, DS->len);
- return 0;
-}
-int print_ds_constructor_chat_empty (struct tl_ds_chat *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- eprintf (" chatEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat (struct tl_ds_chat *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- eprintf (" chat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_chat_photo (DS->photo, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participants_count :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->participants_count, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" left :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->left, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->version, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat_forbidden (struct tl_ds_chat *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- eprintf (" chatForbidden");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_geo_chat (struct tl_ds_chat *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- eprintf (" geoChat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" address :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->address, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" venue :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->venue, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_geo_point (DS->geo, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_chat_photo (DS->photo, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participants_count :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->participants_count, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" checked_in :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->checked_in, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->version, field11);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat_full (struct tl_ds_chat_full *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02a614 && T->type->name != 0xd1fd59eb)) { return -1; }
- eprintf (" chatFull");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participants :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_chat_participants (DS->participants, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_photo :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo (DS->chat_photo, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_settings :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_peer_notify_settings (DS->notify_settings, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" exported_invite :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f132d5, .id = "ExportedChatInvite", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_exported_chat_invite (DS->exported_invite, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bot_info :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->bot_info, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat_invite_already (struct tl_ds_chat_invite *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return -1; }
- eprintf (" chatInviteAlready");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_chat (DS->chat, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat_invite (struct tl_ds_chat_invite *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return -1; }
- eprintf (" chatInvite");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat_located (struct tl_ds_chat_located *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3631cf4c && T->type->name != 0xc9ce30b3)) { return -1; }
- eprintf (" chatLocated");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" distance :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->distance, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat_participant (struct tl_ds_chat_participant *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc8d7493e && T->type->name != 0x3728b6c1)) { return -1; }
- eprintf (" chatParticipant");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" inviter_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->inviter_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat_participants_forbidden (struct tl_ds_chat_participants *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return -1; }
- eprintf (" chatParticipantsForbidden");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat_participants (struct tl_ds_chat_participants *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return -1; }
- eprintf (" chatParticipants");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" admin_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->admin_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participants :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->participants, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->version, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat_photo_empty (struct tl_ds_chat_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return -1; }
- eprintf (" chatPhotoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat_photo (struct tl_ds_chat_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return -1; }
- eprintf (" chatPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo_small :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_file_location (DS->photo_small, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo_big :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_file_location (DS->photo_big, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6643b654 && T->type->name != 0x99bc49ab)) { return -1; }
- eprintf (" client_DH_inner_data");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->nonce, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->server_nonce, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" retry_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->retry_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_b :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->g_b, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_config (struct tl_ds_config *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e32b894 && T->type->name != 0xb1cd476b)) { return -1; }
- eprintf (" config");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" expires :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->expires, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" test_mode :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->test_mode, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" this_dc :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->this_dc, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_options :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->dc_options, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_size_max :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_size_max, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" broadcast_size_max :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->broadcast_size_max, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" forwarded_count_max :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->forwarded_count_max, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" online_update_period_ms :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->online_update_period_ms, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" offline_blur_timeout_ms :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->offline_blur_timeout_ms, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" offline_idle_timeout_ms :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->offline_idle_timeout_ms, field11);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" online_cloud_timeout_ms :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->online_cloud_timeout_ms, field12);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_cloud_delay_ms :"); }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->notify_cloud_delay_ms, field13);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_default_delay_ms :"); }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->notify_default_delay_ms, field14);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_big_size :"); }
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_big_size, field15);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" push_chat_period_ms :"); }
- struct paramed_type *field16 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->push_chat_period_ms, field16);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" push_chat_limit :"); }
- struct paramed_type *field17 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->push_chat_limit, field17);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" disabled_features :"); }
- struct paramed_type *field18 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae636f24, .id = "DisabledFeature", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->disabled_features, field18);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contact (struct tl_ds_contact *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf911c994 && T->type->name != 0x06ee366b)) { return -1; }
- eprintf (" contact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mutual :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->mutual, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contact_blocked (struct tl_ds_contact_blocked *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x561bc879 && T->type->name != 0xa9e43786)) { return -1; }
- eprintf (" contactBlocked");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contact_found (struct tl_ds_contact_found *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xea879f95 && T->type->name != 0x1578606a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- return 0;
-}
-int print_ds_constructor_contact_link_unknown (struct tl_ds_contact_link *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- eprintf (" contactLinkUnknown");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contact_link_none (struct tl_ds_contact_link *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- eprintf (" contactLinkNone");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contact_link_has_phone (struct tl_ds_contact_link *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- eprintf (" contactLinkHasPhone");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contact_link_contact (struct tl_ds_contact_link *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- eprintf (" contactLinkContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contact_status (struct tl_ds_contact_status *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd3680c61 && T->type->name != 0x2c97f39e)) { return -1; }
- eprintf (" contactStatus");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" status :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_user_status (DS->status, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contact_suggested (struct tl_ds_contact_suggested *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3de191a1 && T->type->name != 0xc21e6e5e)) { return -1; }
- eprintf (" contactSuggested");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mutual_contacts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->mutual_contacts, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_dc_option_l28 (struct tl_ds_dc_option *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return -1; }
- eprintf (" dcOptionL28");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" hostname :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->hostname, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ip_address :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->ip_address, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" port :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->port, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_dc_option (struct tl_ds_dc_option *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return -1; }
- eprintf (" dcOption");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->flags, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ip_address :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->ip_address, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" port :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->port, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message (struct tl_ds_decrypted_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return -1; }
- eprintf (" decryptedMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->random_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ttl :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->ttl, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->message, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_decrypted_message_media (DS->media, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_service (struct tl_ds_decrypted_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return -1; }
- eprintf (" decryptedMessageService");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->random_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_decrypted_message_action (DS->action, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_set_message_t_t_l (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionSetMessageTTL");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ttl_seconds :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->ttl_seconds, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_read_messages (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionReadMessages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_ids :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->random_ids, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_delete_messages (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionDeleteMessages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_ids :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->random_ids, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_screenshot_messages (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionScreenshotMessages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_ids :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->random_ids, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_flush_history (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionFlushHistory");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_resend (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionResend");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" start_seq_no :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->start_seq_no, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" end_seq_no :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->end_seq_no, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_notify_layer (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionNotifyLayer");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" layer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->layer, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_typing (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionTyping");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_send_message_action (DS->action, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_request_key (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionRequestKey");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" exchange_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->exchange_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_a :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->g_a, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_accept_key (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionAcceptKey");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" exchange_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->exchange_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_b :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->g_b, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->key_fingerprint, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_abort_key (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionAbortKey");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" exchange_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->exchange_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_commit_key (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionCommitKey");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" exchange_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->exchange_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->key_fingerprint, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_action_noop (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- eprintf (" decryptedMessageActionNoop");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_layer (struct tl_ds_decrypted_message_layer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1be31789 && T->type->name != 0xe41ce876)) { return -1; }
- eprintf (" decryptedMessageLayer");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_bytes :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->random_bytes, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" layer :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->layer, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" in_seq_no :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->in_seq_no, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" out_seq_no :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->out_seq_no, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x535b7918, .id = "DecryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_decrypted_message (DS->message, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_media_empty (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_media_photo (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" str_thumb :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->str_thumb, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_w :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->thumb_w, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_h :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->thumb_h, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->w, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->h, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->key, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" iv :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->iv, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_media_geo_point (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaGeoPoint");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" latitude :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_double (DS->latitude, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" longitude :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_double (DS->longitude, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_media_contact (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_number :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->phone_number, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->first_name, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->last_name, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_media_document (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" str_thumb :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->str_thumb, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_w :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->thumb_w, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_h :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->thumb_h, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file_name :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->file_name, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->mime_type, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->key, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" iv :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->iv, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_media_video (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" str_thumb :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->str_thumb, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_w :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->thumb_w, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_h :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->thumb_h, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->mime_type, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->w, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->h, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->key, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" iv :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->iv, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_media_audio (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->mime_type, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->key, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" iv :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->iv, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_media_external_document (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaExternalDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->mime_type, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo_size (DS->thumb, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc_id, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" attributes :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->attributes, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_media_video_l12 (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaVideoL12");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" str_thumb :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->str_thumb, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_w :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->thumb_w, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb_h :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->thumb_h, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->w, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->h, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->key, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" iv :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->iv, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_decrypted_message_media_audio_l12 (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- eprintf (" decryptedMessageMediaAudioL12");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->key, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" iv :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->iv, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_dialog (struct tl_ds_dialog *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc1dd804a && T->type->name != 0x3e227fb5)) { return -1; }
- eprintf (" dialog");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_peer (DS->peer, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" top_message :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->top_message, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" read_inbox_max_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->read_inbox_max_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" unread_count :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->unread_count, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_settings :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_peer_notify_settings (DS->notify_settings, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_disabled_feature (struct tl_ds_disabled_feature *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae636f24 && T->type->name != 0x519c90db)) { return -1; }
- eprintf (" disabledFeature");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" feature :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->feature, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" description :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->description, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_document_empty (struct tl_ds_document *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- eprintf (" documentEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_document (struct tl_ds_document *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- eprintf (" document");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->mime_type, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo_size (DS->thumb, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc_id, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" attributes :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->attributes, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_document_l19 (struct tl_ds_document *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- eprintf (" document_l19");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file_name :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->file_name, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->mime_type, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo_size (DS->thumb, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc_id, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_document_attribute_image_size (struct tl_ds_document_attribute *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeImageSize");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->w, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->h, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_document_attribute_animated (struct tl_ds_document_attribute *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeAnimated");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_document_attribute_sticker_l28 (struct tl_ds_document_attribute *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeStickerL28");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" alt :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->alt, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_document_attribute_sticker (struct tl_ds_document_attribute *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeSticker");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" alt :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->alt, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" stickerset :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_sticker_set (DS->stickerset, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_document_attribute_video (struct tl_ds_document_attribute *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->w, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->h, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_document_attribute_audio (struct tl_ds_document_attribute *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_document_attribute_filename (struct tl_ds_document_attribute *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- eprintf (" documentAttributeFilename");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file_name :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->file_name, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_double (double *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2210c154 && T->type->name != 0xddef3eab)) { return -1; }
- eprintf (" %lf", *DS);
- return 0;
-}
-int print_ds_constructor_encrypted_chat_empty (struct tl_ds_encrypted_chat *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- eprintf (" encryptedChatEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_encrypted_chat_waiting (struct tl_ds_encrypted_chat *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- eprintf (" encryptedChatWaiting");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" admin_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->admin_id, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participant_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->participant_id, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_encrypted_chat_requested (struct tl_ds_encrypted_chat *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- eprintf (" encryptedChatRequested");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" admin_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->admin_id, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participant_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->participant_id, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_a :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->g_a, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_encrypted_chat (struct tl_ds_encrypted_chat *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- eprintf (" encryptedChat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" admin_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->admin_id, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participant_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->participant_id, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_a_or_b :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->g_a_or_b, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->key_fingerprint, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_encrypted_chat_discarded (struct tl_ds_encrypted_chat *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- eprintf (" encryptedChatDiscarded");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_encrypted_file_empty (struct tl_ds_encrypted_file *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return -1; }
- eprintf (" encryptedFileEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_encrypted_file (struct tl_ds_encrypted_file *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return -1; }
- eprintf (" encryptedFile");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc_id, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->key_fingerprint, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_encrypted_message (struct tl_ds_encrypted_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return -1; }
- eprintf (" encryptedMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->random_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bytes :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->bytes, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_encrypted_file (DS->file, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_encrypted_message_service (struct tl_ds_encrypted_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return -1; }
- eprintf (" encryptedMessageService");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->random_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bytes :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->bytes, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_error (struct tl_ds_error *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc4b9f9bb && T->type->name != 0x3b460644)) { return -1; }
- eprintf (" error");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" code :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->code, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" text :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->text, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat_invite_empty (struct tl_ds_exported_chat_invite *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return -1; }
- eprintf (" chatInviteEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_chat_invite_exported (struct tl_ds_exported_chat_invite *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return -1; }
- eprintf (" chatInviteExported");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" link :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->link, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_file_location_unavailable (struct tl_ds_file_location *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return -1; }
- eprintf (" fileLocationUnavailable");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" volume_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->volume_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" local_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->local_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" secret :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->secret, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_file_location (struct tl_ds_file_location *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return -1; }
- eprintf (" fileLocation");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" volume_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->volume_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" local_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->local_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" secret :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->secret, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_geo_chat_message_empty (struct tl_ds_geo_chat_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- eprintf (" geoChatMessageEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_geo_chat_message (struct tl_ds_geo_chat_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- eprintf (" geoChatMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->from_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->message, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_message_media (DS->media, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_geo_chat_message_service (struct tl_ds_geo_chat_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- eprintf (" geoChatMessageService");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->from_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_message_action (DS->action, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_geo_point_empty (struct tl_ds_geo_point *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return -1; }
- eprintf (" geoPointEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_geo_point (struct tl_ds_geo_point *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return -1; }
- eprintf (" geoPoint");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" longitude :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_double (DS->longitude, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" latitude :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_double (DS->latitude, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_imported_contact (struct tl_ds_imported_contact *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd0028438 && T->type->name != 0x2ffd7bc7)) { return -1; }
- eprintf (" importedContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" client_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->client_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_app_event (struct tl_ds_input_app_event *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x770656a8 && T->type->name != 0x88f9a957)) { return -1; }
- eprintf (" inputAppEvent");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" time :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_double (DS->time, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->type, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" peer :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->peer, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" data :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->data, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_audio_empty (struct tl_ds_input_audio *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return -1; }
- eprintf (" inputAudioEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_audio (struct tl_ds_input_audio *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return -1; }
- eprintf (" inputAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_chat_photo_empty (struct tl_ds_input_chat_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- eprintf (" inputChatPhotoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_chat_uploaded_photo (struct tl_ds_input_chat_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- eprintf (" inputChatUploadedPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_file (DS->file, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" crop :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_photo_crop (DS->crop, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_chat_photo (struct tl_ds_input_chat_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- eprintf (" inputChatPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_photo (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" crop :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_photo_crop (DS->crop, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_phone_contact (struct tl_ds_input_contact *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf392b7f4 && T->type->name != 0x0c6d480b)) { return -1; }
- eprintf (" inputPhoneContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" client_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->client_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->phone, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->first_name, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->last_name, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_document_empty (struct tl_ds_input_document *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return -1; }
- eprintf (" inputDocumentEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_document (struct tl_ds_input_document *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return -1; }
- eprintf (" inputDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_encrypted_chat (struct tl_ds_input_encrypted_chat *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf141b5e1 && T->type->name != 0x0ebe4a1e)) { return -1; }
- eprintf (" inputEncryptedChat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_encrypted_file_empty (struct tl_ds_input_encrypted_file *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- eprintf (" inputEncryptedFileEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_encrypted_file_uploaded (struct tl_ds_input_encrypted_file *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- eprintf (" inputEncryptedFileUploaded");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" parts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->parts, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" md5_checksum :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->md5_checksum, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->key_fingerprint, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_encrypted_file (struct tl_ds_input_encrypted_file *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- eprintf (" inputEncryptedFile");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_encrypted_file_big_uploaded (struct tl_ds_input_encrypted_file *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- eprintf (" inputEncryptedFileBigUploaded");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" parts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->parts, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->key_fingerprint, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_file (struct tl_ds_input_file *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return -1; }
- eprintf (" inputFile");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" parts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->parts, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->name, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" md5_checksum :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->md5_checksum, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_file_big (struct tl_ds_input_file *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return -1; }
- eprintf (" inputFileBig");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" parts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->parts, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->name, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- eprintf (" inputFileLocation");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" volume_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->volume_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" local_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->local_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" secret :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->secret, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_video_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- eprintf (" inputVideoFileLocation");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_encrypted_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- eprintf (" inputEncryptedFileLocation");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_audio_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- eprintf (" inputAudioFileLocation");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_document_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- eprintf (" inputDocumentFileLocation");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_geo_chat (struct tl_ds_input_geo_chat *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x74d456fa && T->type->name != 0x8b2ba905)) { return -1; }
- eprintf (" inputGeoChat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_geo_point_empty (struct tl_ds_input_geo_point *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return -1; }
- eprintf (" inputGeoPointEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_geo_point (struct tl_ds_input_geo_point *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return -1; }
- eprintf (" inputGeoPoint");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" latitude :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_double (DS->latitude, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" longitude :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_double (DS->longitude, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_empty (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_uploaded_photo (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaUploadedPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_file (DS->file, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->caption, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_photo (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_photo (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->caption, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_geo_point (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaGeoPoint");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo_point :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_geo_point (DS->geo_point, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_contact (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_number :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->phone_number, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->first_name, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->last_name, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_uploaded_video (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaUploadedVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_file (DS->file, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->w, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->h, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->caption, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_uploaded_thumb_video (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaUploadedThumbVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_file (DS->file, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_file (DS->thumb, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->w, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->h, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->caption, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_video (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" video_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbb5f7a27, .id = "InputVideo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_video (DS->video_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->caption, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_uploaded_audio (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaUploadedAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_file (DS->file, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->mime_type, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_audio (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" audio_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae8e9c7b, .id = "InputAudio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_audio (DS->audio_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_uploaded_document (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaUploadedDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_file (DS->file, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->mime_type, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" attributes :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->attributes, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_uploaded_thumb_document (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaUploadedThumbDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_file (DS->file, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_file (DS->thumb, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->mime_type, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" attributes :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->attributes, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_document (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" document_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6a8963fc, .id = "InputDocument", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_document (DS->document_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_media_venue (struct tl_ds_input_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- eprintf (" inputMediaVenue");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo_point :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_geo_point (DS->geo_point, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" address :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->address, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" provider :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->provider, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" venue_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->venue_id, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_notify_peer (struct tl_ds_input_notify_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- eprintf (" inputNotifyPeer");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_peer (DS->peer, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_notify_users (struct tl_ds_input_notify_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- eprintf (" inputNotifyUsers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_notify_chats (struct tl_ds_input_notify_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- eprintf (" inputNotifyChats");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_notify_all (struct tl_ds_input_notify_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- eprintf (" inputNotifyAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_notify_geo_chat_peer (struct tl_ds_input_notify_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- eprintf (" inputNotifyGeoChatPeer");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo_peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_input_geo_chat (DS->geo_peer, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_peer_empty (struct tl_ds_input_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- eprintf (" inputPeerEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_peer_self (struct tl_ds_input_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- eprintf (" inputPeerSelf");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_peer_contact (struct tl_ds_input_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- eprintf (" inputPeerContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_peer_foreign (struct tl_ds_input_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- eprintf (" inputPeerForeign");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_peer_chat (struct tl_ds_input_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- eprintf (" inputPeerChat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_peer_notify_events_empty (struct tl_ds_input_peer_notify_events *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return -1; }
- eprintf (" inputPeerNotifyEventsEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_peer_notify_events_all (struct tl_ds_input_peer_notify_events *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return -1; }
- eprintf (" inputPeerNotifyEventsAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x46a2ce98 && T->type->name != 0xb95d3167)) { return -1; }
- eprintf (" inputPeerNotifySettings");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mute_until :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->mute_until, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" sound :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->sound, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" show_previews :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->show_previews, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" events_mask :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->events_mask, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_photo_empty (struct tl_ds_input_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return -1; }
- eprintf (" inputPhotoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_photo (struct tl_ds_input_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return -1; }
- eprintf (" inputPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_photo_crop_auto (struct tl_ds_input_photo_crop *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return -1; }
- eprintf (" inputPhotoCropAuto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_photo_crop (struct tl_ds_input_photo_crop *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return -1; }
- eprintf (" inputPhotoCrop");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" crop_left :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_double (DS->crop_left, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" crop_top :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_double (DS->crop_top, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" crop_width :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_double (DS->crop_width, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_privacy_key_status_timestamp (struct tl_ds_input_privacy_key *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4f96cb18 && T->type->name != 0xb06934e7)) { return -1; }
- eprintf (" inputPrivacyKeyStatusTimestamp");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_privacy_value_allow_contacts (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- eprintf (" inputPrivacyValueAllowContacts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_privacy_value_allow_all (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- eprintf (" inputPrivacyValueAllowAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_privacy_value_allow_users (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- eprintf (" inputPrivacyValueAllowUsers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_privacy_value_disallow_contacts (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- eprintf (" inputPrivacyValueDisallowContacts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_privacy_value_disallow_all (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- eprintf (" inputPrivacyValueDisallowAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_privacy_value_disallow_users (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- eprintf (" inputPrivacyValueDisallowUsers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_sticker_set_empty (struct tl_ds_input_sticker_set *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- eprintf (" inputStickerSetEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_sticker_set_i_d (struct tl_ds_input_sticker_set *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- eprintf (" inputStickerSetID");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_sticker_set_short_name (struct tl_ds_input_sticker_set *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- eprintf (" inputStickerSetShortName");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" short_name :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->short_name, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_user_empty (struct tl_ds_input_user *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- eprintf (" inputUserEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_user_self (struct tl_ds_input_user *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- eprintf (" inputUserSelf");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_user_contact (struct tl_ds_input_user *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- eprintf (" inputUserContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_user_foreign (struct tl_ds_input_user *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- eprintf (" inputUserForeign");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_video_empty (struct tl_ds_input_video *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return -1; }
- eprintf (" inputVideoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_video (struct tl_ds_input_video *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return -1; }
- eprintf (" inputVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_int (int *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8509bda && T->type->name != 0x57af6425)) { return -1; }
- eprintf (" %d", *DS);
- return 0;
-}
-int print_ds_constructor_int128 (struct tl_ds_int128 *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7d36c439 && T->type->name != 0x82c93bc6)) { return -1; }
- eprintf (" int128");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->f0, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->f1, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_int256 (struct tl_ds_int256 *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf2c798b3 && T->type->name != 0x0d38674c)) { return -1; }
- eprintf (" int256");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->f0, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->f1, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->f2, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->f3, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_keyboard_button (struct tl_ds_keyboard_button *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa2fa4880 && T->type->name != 0x5d05b77f)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->text, field1);
- return 0;
-}
-int print_ds_constructor_keyboard_button_row (struct tl_ds_keyboard_button_row *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77608b83 && T->type->name != 0x889f747c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa2fa4880, .id = "KeyboardButton", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->buttons, field1);
- return 0;
-}
-int print_ds_constructor_long (long long *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22076cba && T->type->name != 0xddf89345)) { return -1; }
- eprintf (" %I64d", *DS);
- return 0;
-}
-int print_ds_constructor_message_empty (struct tl_ds_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- eprintf (" messageEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message (struct tl_ds_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- eprintf (" message");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *var0 = INT2PTR (*DS->flags);
- eprintf (" %d", (int)PTR2INT (var0));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->from_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" to_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_peer (DS->to_id, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_from_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->fwd_from_id, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_date :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->fwd_date, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" reply_to_msg_id :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->reply_to_msg_id, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->message, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_message_media (DS->media, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 6)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" reply_markup :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_reply_markup (DS->reply_markup, field11);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int print_ds_constructor_message_service (struct tl_ds_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- eprintf (" messageService");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->flags, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->from_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" to_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_peer (DS->to_id, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_message_action (DS->action, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_action_empty (struct tl_ds_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_action_chat_create (struct tl_ds_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatCreate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_action_chat_edit_title (struct tl_ds_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatEditTitle");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_action_chat_edit_photo (struct tl_ds_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatEditPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo (DS->photo, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_action_chat_delete_photo (struct tl_ds_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatDeletePhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_action_chat_add_user (struct tl_ds_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatAddUser");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_action_chat_delete_user (struct tl_ds_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatDeleteUser");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_action_geo_chat_create (struct tl_ds_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionGeoChatCreate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" address :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->address, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_action_geo_chat_checkin (struct tl_ds_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionGeoChatCheckin");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_action_chat_joined_by_link (struct tl_ds_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- eprintf (" messageActionChatJoinedByLink");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" inviter_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->inviter_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_media_empty (struct tl_ds_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_media_photo (struct tl_ds_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo (DS->photo, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->caption, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_media_video (struct tl_ds_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" video :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_video (DS->video, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->caption, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_media_geo (struct tl_ds_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaGeo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_geo_point (DS->geo, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_media_contact (struct tl_ds_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaContact");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_number :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->phone_number, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->first_name, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->last_name, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_media_unsupported (struct tl_ds_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaUnsupported");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_media_document (struct tl_ds_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" document :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_document (DS->document, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_media_audio (struct tl_ds_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" audio :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fc5ec4e, .id = "Audio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_audio (DS->audio, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_media_web_page (struct tl_ds_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaWebPage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" webpage :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_web_page (DS->webpage, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_media_venue (struct tl_ds_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaVenue");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_geo_point (DS->geo, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" address :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->address, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" provider :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->provider, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" venue_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->venue_id, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_media_photo_l27 (struct tl_ds_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaPhotoL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo (DS->photo, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_message_media_video_l27 (struct tl_ds_message_media *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- eprintf (" messageMediaVideoL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" video :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_video (DS->video, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_messages_filter_empty (struct tl_ds_messages_filter *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_messages_filter_photos (struct tl_ds_messages_filter *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterPhotos");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_messages_filter_video (struct tl_ds_messages_filter *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_messages_filter_photo_video (struct tl_ds_messages_filter *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterPhotoVideo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_messages_filter_photo_video_documents (struct tl_ds_messages_filter *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterPhotoVideoDocuments");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_messages_filter_document (struct tl_ds_messages_filter *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterDocument");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_input_messages_filter_audio (struct tl_ds_messages_filter *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- eprintf (" inputMessagesFilterAudio");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_nearest_dc (struct tl_ds_nearest_dc *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8e1a1775 && T->type->name != 0x71e5e88a)) { return -1; }
- eprintf (" nearestDc");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" country :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->country, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" this_dc :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->this_dc, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nearest_dc :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->nearest_dc, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_notify_peer (struct tl_ds_notify_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- eprintf (" notifyPeer");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_peer (DS->peer, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_notify_users (struct tl_ds_notify_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- eprintf (" notifyUsers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_notify_chats (struct tl_ds_notify_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- eprintf (" notifyChats");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_notify_all (struct tl_ds_notify_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- eprintf (" notifyAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_null (struct tl_ds_null *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56730bcc && T->type->name != 0xa98cf433)) { return -1; }
- eprintf (" null");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_p_q_inner_data (struct tl_ds_p_q_inner_data *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return -1; }
- eprintf (" p_q_inner_data");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pq :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->pq, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" p :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->p, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" q :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->q, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->nonce, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->server_nonce, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_nonce :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int256 (DS->new_nonce, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_p_q_inner_data_temp (struct tl_ds_p_q_inner_data *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return -1; }
- eprintf (" p_q_inner_data_temp");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pq :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->pq, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" p :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->p, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" q :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->q, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->nonce, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->server_nonce, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_nonce :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int256 (DS->new_nonce, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" expires_in :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->expires_in, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_peer_user (struct tl_ds_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return -1; }
- eprintf (" peerUser");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_peer_chat (struct tl_ds_peer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return -1; }
- eprintf (" peerChat");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_peer_notify_events_empty (struct tl_ds_peer_notify_events *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return -1; }
- eprintf (" peerNotifyEventsEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_peer_notify_events_all (struct tl_ds_peer_notify_events *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return -1; }
- eprintf (" peerNotifyEventsAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_peer_notify_settings_empty (struct tl_ds_peer_notify_settings *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return -1; }
- eprintf (" peerNotifySettingsEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_peer_notify_settings (struct tl_ds_peer_notify_settings *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return -1; }
- eprintf (" peerNotifySettings");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mute_until :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->mute_until, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" sound :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->sound, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" show_previews :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->show_previews, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" events_mask :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->events_mask, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_photo_empty (struct tl_ds_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- eprintf (" photoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_photo (struct tl_ds_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- eprintf (" photo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_geo_point (DS->geo, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" sizes :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->sizes, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_photo_l27 (struct tl_ds_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- eprintf (" photoL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->caption, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_geo_point (DS->geo, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" sizes :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->sizes, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_photo_size_empty (struct tl_ds_photo_size *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- eprintf (" photoSizeEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->type, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_photo_size (struct tl_ds_photo_size *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- eprintf (" photoSize");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->type, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" location :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_file_location (DS->location, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->w, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->h, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_photo_cached_size (struct tl_ds_photo_size *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- eprintf (" photoCachedSize");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->type, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" location :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_file_location (DS->location, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->w, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->h, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bytes :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->bytes, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_privacy_key_status_timestamp (struct tl_ds_privacy_key *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbc2eab30 && T->type->name != 0x43d154cf)) { return -1; }
- eprintf (" privacyKeyStatusTimestamp");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_privacy_value_allow_contacts (struct tl_ds_privacy_rule *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- eprintf (" privacyValueAllowContacts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_privacy_value_allow_all (struct tl_ds_privacy_rule *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- eprintf (" privacyValueAllowAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_privacy_value_allow_users (struct tl_ds_privacy_rule *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- eprintf (" privacyValueAllowUsers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_privacy_value_disallow_contacts (struct tl_ds_privacy_rule *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- eprintf (" privacyValueDisallowContacts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_privacy_value_disallow_all (struct tl_ds_privacy_rule *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- eprintf (" privacyValueDisallowAll");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_privacy_value_disallow_users (struct tl_ds_privacy_rule *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- eprintf (" privacyValueDisallowUsers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_received_notify_message (struct tl_ds_received_notify_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa384b779 && T->type->name != 0x5c7b4886)) { return -1; }
- eprintf (" receivedNotifyMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->flags, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_reply_keyboard_hide (struct tl_ds_reply_markup *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- eprintf (" replyKeyboardHide");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->flags, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_reply_keyboard_force_reply (struct tl_ds_reply_markup *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- eprintf (" replyKeyboardForceReply");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->flags, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_reply_keyboard_markup (struct tl_ds_reply_markup *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- eprintf (" replyKeyboardMarkup");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->flags, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" rows :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77608b83, .id = "KeyboardButtonRow", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->rows, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_res_p_q (struct tl_ds_res_p_q *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x05162463 && T->type->name != 0xfae9db9c)) { return -1; }
- eprintf (" resPQ");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->nonce, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->server_nonce, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pq :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->pq, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_public_key_fingerprints :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->server_public_key_fingerprints, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_typing_action (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageTypingAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_cancel_action (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageCancelAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_record_video_action (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageRecordVideoAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_upload_video_action_l27 (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadVideoActionL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_upload_video_action (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadVideoAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" progress :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->progress, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_record_audio_action (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageRecordAudioAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_upload_audio_action_l27 (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadAudioActionL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_upload_audio_action (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadAudioAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" progress :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->progress, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_upload_photo_action (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadPhotoAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" progress :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->progress, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_upload_document_action_l27 (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadDocumentActionL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_upload_document_action (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageUploadDocumentAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" progress :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->progress, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_geo_location_action (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageGeoLocationAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_send_message_choose_contact_action (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- eprintf (" sendMessageChooseContactAction");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_server_d_h_params_fail (struct tl_ds_server_d_h_params *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return -1; }
- eprintf (" server_DH_params_fail");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->nonce, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->server_nonce, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_nonce_hash :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->new_nonce_hash, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_server_d_h_params_ok (struct tl_ds_server_d_h_params *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return -1; }
- eprintf (" server_DH_params_ok");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->nonce, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->server_nonce, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" encrypted_answer :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->encrypted_answer, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5890dba && T->type->name != 0x4a76f245)) { return -1; }
- eprintf (" server_DH_inner_data");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->nonce, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->server_nonce, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->g, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dh_prime :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->dh_prime, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_a :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->g_a, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_time :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->server_time, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_dh_gen_ok (struct tl_ds_set_client_d_h_params_answer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- eprintf (" dh_gen_ok");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->nonce, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->server_nonce, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_nonce_hash1 :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->new_nonce_hash1, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_dh_gen_retry (struct tl_ds_set_client_d_h_params_answer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- eprintf (" dh_gen_retry");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->nonce, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->server_nonce, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_nonce_hash2 :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->new_nonce_hash2, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_dh_gen_fail (struct tl_ds_set_client_d_h_params_answer *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- eprintf (" dh_gen_fail");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" nonce :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->nonce, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" server_nonce :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->server_nonce, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_nonce_hash3 :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int128 (DS->new_nonce_hash3, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_sticker_pack (struct tl_ds_sticker_pack *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x12b299d4 && T->type->name != 0xed4d662b)) { return -1; }
- eprintf (" stickerPack");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" emoticon :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->emoticon, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" documents :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->documents, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_sticker_set (struct tl_ds_sticker_set *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa7a43b17 && T->type->name != 0x585bc4e8)) { return -1; }
- eprintf (" stickerSet");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" short_name :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->short_name, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_string (struct tl_ds_string *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5286e24 && T->type->name != 0x4ad791db)) { return -1; }
- print_escaped_string (DS->data, DS->len);
- return 0;
-}
-int print_ds_constructor_update_new_message (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateNewMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_message (DS->message, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts_count, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_message_i_d (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateMessageID");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->random_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_delete_messages (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateDeleteMessages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->messages, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts_count, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_user_typing (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateUserTyping");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_send_message_action (DS->action, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_chat_user_typing (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateChatUserTyping");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_send_message_action (DS->action, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_chat_participants (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateChatParticipants");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participants :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_chat_participants (DS->participants, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_user_status (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateUserStatus");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" status :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_user_status (DS->status, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_user_name (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateUserName");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->first_name, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->last_name, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" username :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->username, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_user_photo (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateUserPhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_user_profile_photo (DS->photo, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" previous :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->previous, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_contact_registered (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateContactRegistered");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_contact_link (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateContactLink");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" my_link :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_contact_link (DS->my_link, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" foreign_link :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_contact_link (DS->foreign_link, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_new_authorization (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateNewAuthorization");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" auth_key_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->auth_key_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" device :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->device, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" location :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->location, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_new_geo_chat_message (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateNewGeoChatMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" geo_message :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_geo_chat_message (DS->geo_message, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_new_encrypted_message (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateNewEncryptedMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" encr_message :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_encrypted_message (DS->encr_message, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" qts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->qts, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_encrypted_chat_typing (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateEncryptedChatTyping");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_encryption (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateEncryption");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" encr_chat :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb1718213, .id = "EncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_encrypted_chat (DS->encr_chat, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_encrypted_messages_read (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateEncryptedMessagesRead");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" max_date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->max_date, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_chat_participant_add (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateChatParticipantAdd");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" inviter_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->inviter_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->version, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_chat_participant_delete (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateChatParticipantDelete");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->version, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_dc_options (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateDcOptions");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_options :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->dc_options, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_user_blocked (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateUserBlocked");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" blocked :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->blocked, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_notify_settings (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateNotifySettings");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fcb8237, .id = "NotifyPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_notify_peer (DS->notify_peer, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_settings :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_peer_notify_settings (DS->notify_settings, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_service_notification (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateServiceNotification");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->type, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message_text :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->message_text, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_message_media (DS->media, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" popup :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->popup, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_privacy (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updatePrivacy");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbc2eab30, .id = "PrivacyKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_privacy_key (DS->key, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" rules :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->rules, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_user_phone (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateUserPhone");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->phone, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_read_history_inbox (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateReadHistoryInbox");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_peer (DS->peer, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" max_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->max_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts_count, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_read_history_outbox (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateReadHistoryOutbox");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" peer :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_peer (DS->peer, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" max_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->max_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts_count, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_web_page (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateWebPage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" webpage :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_web_page (DS->webpage, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_read_messages_contents (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateReadMessagesContents");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->messages, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts_count, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_msg_update (struct tl_ds_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- eprintf (" updateMsgUpdate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts_count, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_updates_too_long (struct tl_ds_updates *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- eprintf (" updatesTooLong");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_update_short_message (struct tl_ds_updates *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- eprintf (" updateShortMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *var0 = INT2PTR (*DS->flags);
- eprintf (" %d", (int)PTR2INT (var0));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->message, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts_count, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_from_id :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->fwd_from_id, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_date :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->fwd_date, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" reply_to_msg_id :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->reply_to_msg_id, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int print_ds_constructor_update_short_chat_message (struct tl_ds_updates *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- eprintf (" updateShortChatMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *var0 = INT2PTR (*DS->flags);
- eprintf (" %d", (int)PTR2INT (var0));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->from_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->chat_id, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->message, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts_count, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_from_id :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->fwd_from_id, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_date :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->fwd_date, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" reply_to_msg_id :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->reply_to_msg_id, field11);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int print_ds_constructor_update_short (struct tl_ds_updates *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- eprintf (" updateShort");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" update :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_update (DS->update, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_updates_combined (struct tl_ds_updates *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- eprintf (" updatesCombined");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" updates :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->updates, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq_start :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->seq_start, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->seq, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_updates (struct tl_ds_updates *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- eprintf (" updates");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" updates :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->updates, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->seq, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_user_empty (struct tl_ds_user *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return -1; }
- eprintf (" userEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_user (struct tl_ds_user *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return -1; }
- eprintf (" user");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *var0 = INT2PTR (*DS->flags);
- eprintf (" %d", (int)PTR2INT (var0));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 0)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 1)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->first_name, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->last_name, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" username :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->username, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 4)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->phone, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 5)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_user_profile_photo (DS->photo, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 6)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" status :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_user_status (DS->status, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 14)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bot_info_version :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->bot_info_version, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int print_ds_constructor_user_full (struct tl_ds_user_full *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5a89ac5b && T->type->name != 0xa57653a4)) { return -1; }
- eprintf (" userFull");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_user (DS->user, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" link :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_contacts_link (DS->link, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" profile_photo :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo (DS->profile_photo, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" notify_settings :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_peer_notify_settings (DS->notify_settings, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" blocked :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->blocked, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bot_info :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bot_info (DS->bot_info, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_user_profile_photo_empty (struct tl_ds_user_profile_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return -1; }
- eprintf (" userProfilePhotoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_user_profile_photo (struct tl_ds_user_profile_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return -1; }
- eprintf (" userProfilePhoto");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->photo_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo_small :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_file_location (DS->photo_small, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo_big :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_file_location (DS->photo_big, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_user_status_empty (struct tl_ds_user_status *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- eprintf (" userStatusEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_user_status_online (struct tl_ds_user_status *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- eprintf (" userStatusOnline");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" expires :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->expires, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_user_status_offline (struct tl_ds_user_status *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- eprintf (" userStatusOffline");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" was_online :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->was_online, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_user_status_recently (struct tl_ds_user_status *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- eprintf (" userStatusRecently");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_user_status_last_week (struct tl_ds_user_status *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- eprintf (" userStatusLastWeek");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_user_status_last_month (struct tl_ds_user_status *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- eprintf (" userStatusLastMonth");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_vector (struct tl_ds_vector *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1cb5c415 && T->type->name != 0xe34a3bea)) { return -1; }
- if (ODDP(T->params[0])) { return -1; }
- struct paramed_type *var0 = T->params[0]; assert (var0);
- eprintf (" vector");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- struct paramed_type *var1 = INT2PTR (*DS->f1);
- eprintf (" %d", (int)PTR2INT (var1));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- int multiplicity3 = PTR2INT (
- ((void *)var1) + 0 );
- struct paramed_type *field3 =
- var0;
- eprintf (" [");
- if (multiline_output >= 1) { eprintf ("\n"); }
- if (multiline_output >= 1) { multiline_offset += multiline_offset_size;}
- {
- int i = 0;
- while (i < multiplicity3) {
- if (multiline_output >= 1) { print_offset (); }
- print_ds_type_any (DS->f2[i ++], field3);
- if (multiline_output >= 1) { eprintf ("\n"); }
- }
- }
- if (multiline_output >= 1) { multiline_offset -= multiline_offset_size; print_offset ();}
- eprintf (" ]");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_video_empty (struct tl_ds_video *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- eprintf (" videoEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_video (struct tl_ds_video *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- eprintf (" video");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo_size (DS->thumb, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc_id, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->w, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->h, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_video_l27 (struct tl_ds_video *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- eprintf (" videoL27");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" caption :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->caption, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mime_type :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->mime_type, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" size :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->size, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" thumb :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo_size (DS->thumb, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc_id :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc_id, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" w :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->w, field11);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" h :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->h, field12);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_wall_paper (struct tl_ds_wall_paper *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return -1; }
- eprintf (" wallPaper");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" sizes :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->sizes, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" color :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->color, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_wall_paper_solid (struct tl_ds_wall_paper *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return -1; }
- eprintf (" wallPaperSolid");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bg_color :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->bg_color, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" color :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->color, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_web_page_empty (struct tl_ds_web_page *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- eprintf (" webPageEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_web_page_pending (struct tl_ds_web_page *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- eprintf (" webPagePending");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_web_page (struct tl_ds_web_page *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- eprintf (" webPage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *var0 = INT2PTR (*DS->flags);
- eprintf (" %d", (int)PTR2INT (var0));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" url :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->url, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" display_url :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->display_url, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 0)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->type, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 1)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" site_name :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->site_name, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" description :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->description, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 4)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo (DS->photo, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 5)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" embed_url :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->embed_url, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 5)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" embed_type :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->embed_type, field11);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 6)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" embed_width :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->embed_width, field12);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 6)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" embed_height :"); }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->embed_height, field13);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 7)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" duration :"); }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->duration, field14);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 8)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" author :"); }
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->author, field15);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int print_ds_constructor_account_authorizations (struct tl_ds_account_authorizations *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1250abde && T->type->name != 0xedaf5421)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bf2e6f6, .id = "Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->authorizations, field1);
- return 0;
-}
-int print_ds_constructor_account_no_password (struct tl_ds_account_password *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return -1; }
- eprintf (" account.noPassword");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_salt :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->new_salt, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" email_unconfirmed_pattern :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->email_unconfirmed_pattern, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_account_password (struct tl_ds_account_password *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return -1; }
- eprintf (" account.password");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" current_salt :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->current_salt, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_salt :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->new_salt, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" hint :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->hint, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" has_recovery :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->has_recovery, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" email_unconfirmed_pattern :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->email_unconfirmed_pattern, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_account_password_input_settings (struct tl_ds_account_password_input_settings *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbcfc532c && T->type->name != 0x4303acd3)) { return -1; }
- eprintf (" account.passwordInputSettings");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *var0 = INT2PTR (*DS->flags);
- eprintf (" %d", (int)PTR2INT (var0));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 0)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_salt :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->new_salt, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 0)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_password_hash :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->new_password_hash, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 0)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" hint :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->hint, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 1)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" email :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->email, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int print_ds_constructor_account_password_settings (struct tl_ds_account_password_settings *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb7b72ab3 && T->type->name != 0x4848d54c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->email, field1);
- return 0;
-}
-int print_ds_constructor_account_privacy_rules (struct tl_ds_account_privacy_rules *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x554abb6f && T->type->name != 0xaab54490)) { return -1; }
- eprintf (" account.privacyRules");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" rules :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->rules, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa4f58c4c && T->type->name != 0x5b0a73b3)) { return -1; }
- eprintf (" account.sentChangePhoneCode");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_code_hash :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->phone_code_hash, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" send_call_timeout :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->send_call_timeout, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_auth_authorization (struct tl_ds_auth_authorization *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xff036af1 && T->type->name != 0x00fc950e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_user (DS->user, field1);
- return 0;
-}
-int print_ds_constructor_auth_checked_phone (struct tl_ds_auth_checked_phone *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x811ea28e && T->type->name != 0x7ee15d71)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->phone_registered, field1);
- return 0;
-}
-int print_ds_constructor_auth_exported_authorization (struct tl_ds_auth_exported_authorization *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdf969c2d && T->type->name != 0x206963d2)) { return -1; }
- eprintf (" auth.exportedAuthorization");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bytes :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->bytes, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_auth_password_recovery (struct tl_ds_auth_password_recovery *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x137948a5 && T->type->name != 0xec86b75a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->email_pattern, field1);
- return 0;
-}
-int print_ds_constructor_auth_sent_code (struct tl_ds_auth_sent_code *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return -1; }
- eprintf (" auth.sentCode");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_registered :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->phone_registered, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_code_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->phone_code_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" send_call_timeout :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->send_call_timeout, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" is_password :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->is_password, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_auth_sent_app_code (struct tl_ds_auth_sent_code *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return -1; }
- eprintf (" auth.sentAppCode");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_registered :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->phone_registered, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_code_hash :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->phone_code_hash, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" send_call_timeout :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->send_call_timeout, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" is_password :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->is_password, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_encr_key (struct tl_ds_binlog_encr_key *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0377168f && T->type->name != 0xfc88e970)) { return -1; }
- int multiplicity1 = PTR2INT (
- INT2PTR (64) );
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- eprintf (" [");
- if (multiline_output >= 1) { eprintf ("\n"); }
- if (multiline_output >= 1) { multiline_offset += multiline_offset_size;}
- {
- int i = 0;
- while (i < multiplicity1) {
- if (multiline_output >= 1) { print_offset (); }
- print_ds_type_any (DS->key[i ++], field1);
- if (multiline_output >= 1) { eprintf ("\n"); }
- }
- }
- if (multiline_output >= 1) { multiline_offset -= multiline_offset_size; print_offset ();}
- eprintf (" ]");
- return 0;
-}
-int print_ds_constructor_binlog_start (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.start");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_dc_option (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.dcOption");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" name :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->name, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ip :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->ip, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" port :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->port, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_dc_option_new (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.dcOptionNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->flags, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" name :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->name, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ip :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->ip, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" port :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->port, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_auth_key (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.authKey");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_binlog_encr_key (DS->key, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_default_dc (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.defaultDc");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_dc_signed (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.dcSigned");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dc :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->dc, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_our_id (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.ourId");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_set_dh_params (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.setDhParams");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" root :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->root, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" prime :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_binlog_encr_key (DS->prime, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->version, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_set_pts (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.setPts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_set_qts (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.setQts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" qts :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->qts, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_set_date (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.setDate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_set_seq (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.setSeq");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->seq, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_encr_chat_delete (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.encrChatDelete");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_encr_chat_new (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.encrChatNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *var0 = INT2PTR (*DS->flags);
- eprintf (" %d", (int)PTR2INT (var0));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" admin :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->admin, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_binlog_encr_key (DS->key, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g_key :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_binlog_encr_key (DS->g_key, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" state :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->state, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" ttl :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->ttl, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 25)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" layer :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->layer, field11);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" in_seq_no :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->in_seq_no, field12);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_in_seq_no :"); }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->last_in_seq_no, field13);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" out_seq_no :"); }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->out_seq_no, field14);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 27)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key_fingerprint :"); }
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->key_fingerprint, field15);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int print_ds_constructor_binlog_encr_chat_exchange_new (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.encrChatExchangeNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *var0 = INT2PTR (*DS->flags);
- eprintf (" %d", (int)PTR2INT (var0));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" exchange_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->exchange_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" key :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_binlog_encr_key (DS->key, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" state :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->state, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int print_ds_constructor_binlog_user_delete (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.userDelete");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_user_new (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.userNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *var0 = INT2PTR (*DS->flags);
- eprintf (" %d", (int)PTR2INT (var0));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" access_hash :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->access_hash, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" first_name :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->first_name, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_name :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->last_name, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->phone, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" username :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->username, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo (DS->photo, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" real_first_name :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->real_first_name, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" real_last_name :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->real_last_name, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_photo :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_user_profile_photo (DS->user_photo, field11);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_read_in :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->last_read_in, field12);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 25)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_read_out :"); }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->last_read_out, field13);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bot_info :"); }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bot_info (DS->bot_info, field14);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int print_ds_constructor_binlog_chat_new (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.chatNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *var0 = INT2PTR (*DS->flags);
- eprintf (" %d", (int)PTR2INT (var0));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" title :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->title, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_num :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_num, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->version, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" participants :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->participants, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chat_photo :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_chat_photo (DS->chat_photo, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo (DS->photo, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" admin :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->admin, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_read_in :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->last_read_in, field11);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 25)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" last_read_out :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->last_read_out, field12);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int print_ds_constructor_binlog_chat_add_participant (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.chatAddParticipant");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->version, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" inviter_id :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->inviter_id, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_chat_del_participant (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.chatDelParticipant");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->version, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->user_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_set_msg_id (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.setMsgId");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" old_id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->old_id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_id :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->new_id, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_message_delete (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.messageDelete");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" lid :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->lid, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_message_new (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.messageNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *var0 = INT2PTR (*DS->flags);
- eprintf (" %d", (int)PTR2INT (var0));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" lid :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->lid, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->from_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" to_type :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->to_type, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" to_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->to_id, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_from_id :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->fwd_from_id, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" fwd_date :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->fwd_date, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->message, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_message_media (DS->media, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" action :"); }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_message_action (DS->action, field11);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" reply_id :"); }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->reply_id, field12);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" reply_markup :"); }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_reply_markup (DS->reply_markup, field13);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int print_ds_constructor_binlog_message_encr_new (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.messageEncrNew");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" flags :"); }
- struct paramed_type *var0 = INT2PTR (*DS->flags);
- eprintf (" %d", (int)PTR2INT (var0));
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" lid :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->lid, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" from_id :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->from_id, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" to_type :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->to_type, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" to_id :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->to_id, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->message, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" encr_media :"); }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_decrypted_message_media (DS->encr_media, field8);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" encr_action :"); }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_decrypted_message_action (DS->encr_action, field9);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_encrypted_file (DS->file, field10);
- if (multiline_output >= 2) { eprintf ("\n"); }
- }
- return 0;
-}
-int print_ds_constructor_binlog_msg_update (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.msgUpdate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" lid :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_long (DS->lid, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_binlog_reset_authorization (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- eprintf (" binlog.resetAuthorization");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contacts_blocked (struct tl_ds_contacts_blocked *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return -1; }
- eprintf (" contacts.blocked");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" blocked :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->blocked, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contacts_blocked_slice (struct tl_ds_contacts_blocked *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return -1; }
- eprintf (" contacts.blockedSlice");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" count :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->count, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" blocked :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->blocked, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contacts_contacts_not_modified (struct tl_ds_contacts_contacts *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return -1; }
- eprintf (" contacts.contactsNotModified");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contacts_contacts (struct tl_ds_contacts_contacts *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return -1; }
- eprintf (" contacts.contacts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" contacts :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf911c994, .id = "Contact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->contacts, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contacts_found (struct tl_ds_contacts_found *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0566000e && T->type->name != 0xfa99fff1)) { return -1; }
- eprintf (" contacts.found");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" results :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xea879f95, .id = "ContactFound", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->results, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xad524315 && T->type->name != 0x52adbcea)) { return -1; }
- eprintf (" contacts.importedContacts");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" imported :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xd0028438, .id = "ImportedContact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->imported, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" retry_contacts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->retry_contacts, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contacts_link (struct tl_ds_contacts_link *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3ace484c && T->type->name != 0xc531b7b3)) { return -1; }
- eprintf (" contacts.link");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" my_link :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_contact_link (DS->my_link, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" foreign_link :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_contact_link (DS->foreign_link, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_user (DS->user, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_contacts_suggested (struct tl_ds_contacts_suggested *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5649dcc5 && T->type->name != 0xa9b6233a)) { return -1; }
- eprintf (" contacts.suggested");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" results :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3de191a1, .id = "ContactSuggested", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->results, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_geochats_located (struct tl_ds_geochats_located *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x48feb267 && T->type->name != 0xb7014d98)) { return -1; }
- eprintf (" geochats.located");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" results :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3631cf4c, .id = "ChatLocated", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->results, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->messages, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_geochats_messages (struct tl_ds_geochats_messages *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return -1; }
- eprintf (" geochats.messages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->messages, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_geochats_messages_slice (struct tl_ds_geochats_messages *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return -1; }
- eprintf (" geochats.messagesSlice");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" count :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->count, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->messages, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_geochats_stated_message (struct tl_ds_geochats_stated_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17b1578b && T->type->name != 0xe84ea874)) { return -1; }
- eprintf (" geochats.statedMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" message :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_geo_chat_message (DS->message, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->seq, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_help_app_update (struct tl_ds_help_app_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return -1; }
- eprintf (" help.appUpdate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" critical :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bool (DS->critical, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" url :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->url, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" text :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->text, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_help_no_app_update (struct tl_ds_help_app_update *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return -1; }
- eprintf (" help.noAppUpdate");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_help_invite_text (struct tl_ds_help_invite_text *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x18cb9f78 && T->type->name != 0xe7346087)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->message, field1);
- return 0;
-}
-int print_ds_constructor_help_support (struct tl_ds_help_support *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17c6b5f6 && T->type->name != 0xe8394a09)) { return -1; }
- eprintf (" help.support");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" phone_number :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->phone_number, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" user :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_user (DS->user, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_affected_history (struct tl_ds_messages_affected_history *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb45c69d1 && T->type->name != 0x4ba3962e)) { return -1; }
- eprintf (" messages.affectedHistory");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts_count, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" offset :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->offset, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_affected_messages (struct tl_ds_messages_affected_messages *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x84d19185 && T->type->name != 0x7b2e6e7a)) { return -1; }
- eprintf (" messages.affectedMessages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts_count, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_all_stickers_not_modified (struct tl_ds_messages_all_stickers *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return -1; }
- eprintf (" messages.allStickersNotModified");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_all_stickers (struct tl_ds_messages_all_stickers *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return -1; }
- eprintf (" messages.allStickers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" hash :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->hash, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" packs :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->packs, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" sets :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->sets, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" documents :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->documents, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_chat_full (struct tl_ds_messages_chat_full *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe5d7d19c && T->type->name != 0x1a282e63)) { return -1; }
- eprintf (" messages.chatFull");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" full_chat :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02a614, .id = "ChatFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_chat_full (DS->full_chat, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_chats (struct tl_ds_messages_chats *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x64ff9fd5 && T->type->name != 0x9b00602a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field1);
- return 0;
-}
-int print_ds_constructor_messages_dh_config_not_modified (struct tl_ds_messages_dh_config *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return -1; }
- eprintf (" messages.dhConfigNotModified");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->random, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_dh_config (struct tl_ds_messages_dh_config *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return -1; }
- eprintf (" messages.dhConfig");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" g :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->g, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" p :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->p, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" version :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->version, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" random :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->random, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_dialogs (struct tl_ds_messages_dialogs *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return -1; }
- eprintf (" messages.dialogs");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dialogs :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->dialogs, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->messages, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_dialogs_slice (struct tl_ds_messages_dialogs *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return -1; }
- eprintf (" messages.dialogsSlice");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" count :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->count, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" dialogs :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->dialogs, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->messages, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_message_empty (struct tl_ds_messages_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3f4e0648 && T->type->name != 0xc0b1f9b7)) { return -1; }
- eprintf (" messages.messageEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_messages (struct tl_ds_messages_messages *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return -1; }
- eprintf (" messages.messages");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->messages, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_messages_slice (struct tl_ds_messages_messages *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return -1; }
- eprintf (" messages.messagesSlice");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" count :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->count, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" messages :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->messages, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return -1; }
- eprintf (" messages.sentEncryptedMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_sent_encrypted_file (struct tl_ds_messages_sent_encrypted_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return -1; }
- eprintf (" messages.sentEncryptedFile");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" file :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_encrypted_file (DS->file, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_sent_message (struct tl_ds_messages_sent_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return -1; }
- eprintf (" messages.sentMessage");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_message_media (DS->media, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts_count, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_sent_message_link (struct tl_ds_messages_sent_message *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return -1; }
- eprintf (" messages.sentMessageLink");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" id :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->id, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" media :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_message_media (DS->media, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts_count :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts_count, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" links :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->links, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->seq, field7);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_sticker_set (struct tl_ds_messages_sticker_set *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb60a24a6 && T->type->name != 0x49f5db59)) { return -1; }
- eprintf (" messages.stickerSet");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" set :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_sticker_set (DS->set, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" packs :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->packs, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" documents :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->documents, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_stickers_not_modified (struct tl_ds_messages_stickers *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return -1; }
- eprintf (" messages.stickersNotModified");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_messages_stickers (struct tl_ds_messages_stickers *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return -1; }
- eprintf (" messages.stickers");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" hash :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_string (DS->hash, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" stickers :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->stickers, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_photos_photo (struct tl_ds_photos_photo *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x20212ca8 && T->type->name != 0xdfded357)) { return -1; }
- eprintf (" photos.photo");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photo :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_photo (DS->photo, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_photos_photos (struct tl_ds_photos_photos *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return -1; }
- eprintf (" photos.photos");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photos :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->photos, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_photos_photos_slice (struct tl_ds_photos_photos *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return -1; }
- eprintf (" photos.photosSlice");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" count :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->count, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" photos :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->photos, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_storage_file_unknown (struct tl_ds_storage_file_type *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileUnknown");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_storage_file_jpeg (struct tl_ds_storage_file_type *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileJpeg");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_storage_file_gif (struct tl_ds_storage_file_type *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileGif");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_storage_file_png (struct tl_ds_storage_file_type *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.filePng");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_storage_file_pdf (struct tl_ds_storage_file_type *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.filePdf");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_storage_file_mp3 (struct tl_ds_storage_file_type *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileMp3");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_storage_file_mov (struct tl_ds_storage_file_type *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileMov");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_storage_file_partial (struct tl_ds_storage_file_type *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.filePartial");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_storage_file_mp4 (struct tl_ds_storage_file_type *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileMp4");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_storage_file_webp (struct tl_ds_storage_file_type *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- eprintf (" storage.fileWebp");
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_updates_difference_empty (struct tl_ds_updates_difference *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- eprintf (" updates.differenceEmpty");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->seq, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_updates_difference (struct tl_ds_updates_difference *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- eprintf (" updates.difference");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_messages :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->new_messages, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_encrypted_messages :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->new_encrypted_messages, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" other_updates :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->other_updates, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" state :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_updates_state (DS->state, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_updates_difference_slice (struct tl_ds_updates_difference *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- eprintf (" updates.differenceSlice");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_messages :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->new_messages, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" new_encrypted_messages :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->new_encrypted_messages, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" other_updates :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->other_updates, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" chats :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->chats, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" users :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- print_ds_type_vector ((void *)DS->users, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" intermediate_state :"); }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_updates_state (DS->intermediate_state, field6);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_updates_state (struct tl_ds_updates_state *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa56c2a3e && T->type->name != 0x5a93d5c1)) { return -1; }
- eprintf (" updates.state");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" pts :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->pts, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" qts :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->qts, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" date :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->date, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" seq :"); }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->seq, field4);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" unread_count :"); }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->unread_count, field5);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_constructor_upload_file (struct tl_ds_upload_file *DS, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x096a18d5 && T->type->name != 0xf695e72a)) { return -1; }
- eprintf (" upload.file");
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" type :"); }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3e2838a8, .id = "storage.FileType", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_storage_file_type (DS->type, field1);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" mtime :"); }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_int (DS->mtime, field2);
- if (multiline_output >= 2) { eprintf ("\n"); }
- if (multiline_output >= 2) { print_offset (); }
- if (!disable_field_names) { eprintf (" bytes :"); }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- print_ds_type_bare_bytes (DS->bytes, field3);
- if (multiline_output >= 2) { eprintf ("\n"); }
- return 0;
-}
-int print_ds_type_account_days_t_t_l (struct tl_ds_account_days_t_t_l *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_account_days_t_t_l (DS, T);
- return res;
-}
-int print_ds_type_bare_account_days_t_t_l (struct tl_ds_account_days_t_t_l *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_account_days_t_t_l (DS, T);
- return res;
-}
-int print_ds_type_audio (struct tl_ds_audio *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x586988d8: res = print_ds_constructor_audio_empty (DS, T); break;
- case 0xc7ac6496: res = print_ds_constructor_audio (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_audio (struct tl_ds_audio *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x586988d8: res = print_ds_constructor_audio_empty (DS, T); break;
- case 0xc7ac6496: res = print_ds_constructor_audio (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_authorization (struct tl_ds_authorization *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_authorization (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_authorization (struct tl_ds_authorization *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_authorization (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bool (struct tl_ds_bool *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xbc799737: res = print_ds_constructor_bool_false (DS, T); break;
- case 0x997275b5: res = print_ds_constructor_bool_true (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_bool (struct tl_ds_bool *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xbc799737: res = print_ds_constructor_bool_false (DS, T); break;
- case 0x997275b5: res = print_ds_constructor_bool_true (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bot_command (struct tl_ds_bot_command *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xc27ac8c7: res = print_ds_constructor_bot_command (DS, T); break;
- case 0xb79d22ab: res = print_ds_constructor_bot_command_old (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_bot_command (struct tl_ds_bot_command *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xc27ac8c7: res = print_ds_constructor_bot_command (DS, T); break;
- case 0xb79d22ab: res = print_ds_constructor_bot_command_old (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bot_info (struct tl_ds_bot_info *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xbb2e37ce: res = print_ds_constructor_bot_info_empty (DS, T); break;
- case 0x09cf585d: res = print_ds_constructor_bot_info (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_bot_info (struct tl_ds_bot_info *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xbb2e37ce: res = print_ds_constructor_bot_info_empty (DS, T); break;
- case 0x09cf585d: res = print_ds_constructor_bot_info (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bytes (struct tl_ds_string *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_bytes (DS, T);
- return res;
-}
-int print_ds_type_bare_bytes (struct tl_ds_string *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_bytes (DS, T);
- return res;
-}
-int print_ds_type_chat (struct tl_ds_chat *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x9ba2d800: res = print_ds_constructor_chat_empty (DS, T); break;
- case 0x6e9c9bc7: res = print_ds_constructor_chat (DS, T); break;
- case 0xfb0ccc41: res = print_ds_constructor_chat_forbidden (DS, T); break;
- case 0x75eaea5a: res = print_ds_constructor_geo_chat (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_chat (struct tl_ds_chat *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x9ba2d800: res = print_ds_constructor_chat_empty (DS, T); break;
- case 0x6e9c9bc7: res = print_ds_constructor_chat (DS, T); break;
- case 0xfb0ccc41: res = print_ds_constructor_chat_forbidden (DS, T); break;
- case 0x75eaea5a: res = print_ds_constructor_geo_chat (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_chat_full (struct tl_ds_chat_full *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_chat_full (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_chat_full (struct tl_ds_chat_full *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_chat_full (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_chat_invite (struct tl_ds_chat_invite *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x5a686d7c: res = print_ds_constructor_chat_invite_already (DS, T); break;
- case 0xce917dcd: res = print_ds_constructor_chat_invite (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_chat_invite (struct tl_ds_chat_invite *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x5a686d7c: res = print_ds_constructor_chat_invite_already (DS, T); break;
- case 0xce917dcd: res = print_ds_constructor_chat_invite (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_chat_located (struct tl_ds_chat_located *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_chat_located (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_chat_located (struct tl_ds_chat_located *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_chat_located (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_chat_participant (struct tl_ds_chat_participant *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_chat_participant (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_chat_participant (struct tl_ds_chat_participant *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_chat_participant (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_chat_participants (struct tl_ds_chat_participants *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x0fd2bb8a: res = print_ds_constructor_chat_participants_forbidden (DS, T); break;
- case 0x7841b415: res = print_ds_constructor_chat_participants (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_chat_participants (struct tl_ds_chat_participants *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x0fd2bb8a: res = print_ds_constructor_chat_participants_forbidden (DS, T); break;
- case 0x7841b415: res = print_ds_constructor_chat_participants (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_chat_photo (struct tl_ds_chat_photo *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x37c1011c: res = print_ds_constructor_chat_photo_empty (DS, T); break;
- case 0x6153276a: res = print_ds_constructor_chat_photo (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_chat_photo (struct tl_ds_chat_photo *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x37c1011c: res = print_ds_constructor_chat_photo_empty (DS, T); break;
- case 0x6153276a: res = print_ds_constructor_chat_photo (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_client_d_h_inner_data (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_client_d_h_inner_data (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_config (struct tl_ds_config *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_config (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_config (struct tl_ds_config *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_config (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_contact (struct tl_ds_contact *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contact (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_contact (struct tl_ds_contact *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contact (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_contact_blocked (struct tl_ds_contact_blocked *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contact_blocked (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_contact_blocked (struct tl_ds_contact_blocked *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contact_blocked (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_contact_found (struct tl_ds_contact_found *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_contact_found (DS, T);
- return res;
-}
-int print_ds_type_bare_contact_found (struct tl_ds_contact_found *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_contact_found (DS, T);
- return res;
-}
-int print_ds_type_contact_link (struct tl_ds_contact_link *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x5f4f9247: res = print_ds_constructor_contact_link_unknown (DS, T); break;
- case 0xfeedd3ad: res = print_ds_constructor_contact_link_none (DS, T); break;
- case 0x268f3f59: res = print_ds_constructor_contact_link_has_phone (DS, T); break;
- case 0xd502c2d0: res = print_ds_constructor_contact_link_contact (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_contact_link (struct tl_ds_contact_link *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x5f4f9247: res = print_ds_constructor_contact_link_unknown (DS, T); break;
- case 0xfeedd3ad: res = print_ds_constructor_contact_link_none (DS, T); break;
- case 0x268f3f59: res = print_ds_constructor_contact_link_has_phone (DS, T); break;
- case 0xd502c2d0: res = print_ds_constructor_contact_link_contact (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_contact_status (struct tl_ds_contact_status *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contact_status (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_contact_status (struct tl_ds_contact_status *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contact_status (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_contact_suggested (struct tl_ds_contact_suggested *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contact_suggested (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_contact_suggested (struct tl_ds_contact_suggested *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contact_suggested (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_dc_option (struct tl_ds_dc_option *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x2ec2a43c: res = print_ds_constructor_dc_option_l28 (DS, T); break;
- case 0x05d8c6cc: res = print_ds_constructor_dc_option (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_dc_option (struct tl_ds_dc_option *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x2ec2a43c: res = print_ds_constructor_dc_option_l28 (DS, T); break;
- case 0x05d8c6cc: res = print_ds_constructor_dc_option (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_decrypted_message (struct tl_ds_decrypted_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x204d3878: res = print_ds_constructor_decrypted_message (DS, T); break;
- case 0x73164160: res = print_ds_constructor_decrypted_message_service (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_decrypted_message (struct tl_ds_decrypted_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x204d3878: res = print_ds_constructor_decrypted_message (DS, T); break;
- case 0x73164160: res = print_ds_constructor_decrypted_message_service (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_decrypted_message_action (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xa1733aec: res = print_ds_constructor_decrypted_message_action_set_message_t_t_l (DS, T); break;
- case 0x0c4f40be: res = print_ds_constructor_decrypted_message_action_read_messages (DS, T); break;
- case 0x65614304: res = print_ds_constructor_decrypted_message_action_delete_messages (DS, T); break;
- case 0x8ac1f475: res = print_ds_constructor_decrypted_message_action_screenshot_messages (DS, T); break;
- case 0x6719e45c: res = print_ds_constructor_decrypted_message_action_flush_history (DS, T); break;
- case 0x511110b0: res = print_ds_constructor_decrypted_message_action_resend (DS, T); break;
- case 0xf3048883: res = print_ds_constructor_decrypted_message_action_notify_layer (DS, T); break;
- case 0xccb27641: res = print_ds_constructor_decrypted_message_action_typing (DS, T); break;
- case 0xf3c9611b: res = print_ds_constructor_decrypted_message_action_request_key (DS, T); break;
- case 0x6fe1735b: res = print_ds_constructor_decrypted_message_action_accept_key (DS, T); break;
- case 0xdd05ec6b: res = print_ds_constructor_decrypted_message_action_abort_key (DS, T); break;
- case 0xec2e0b9b: res = print_ds_constructor_decrypted_message_action_commit_key (DS, T); break;
- case 0xa82fdd63: res = print_ds_constructor_decrypted_message_action_noop (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_decrypted_message_action (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xa1733aec: res = print_ds_constructor_decrypted_message_action_set_message_t_t_l (DS, T); break;
- case 0x0c4f40be: res = print_ds_constructor_decrypted_message_action_read_messages (DS, T); break;
- case 0x65614304: res = print_ds_constructor_decrypted_message_action_delete_messages (DS, T); break;
- case 0x8ac1f475: res = print_ds_constructor_decrypted_message_action_screenshot_messages (DS, T); break;
- case 0x6719e45c: res = print_ds_constructor_decrypted_message_action_flush_history (DS, T); break;
- case 0x511110b0: res = print_ds_constructor_decrypted_message_action_resend (DS, T); break;
- case 0xf3048883: res = print_ds_constructor_decrypted_message_action_notify_layer (DS, T); break;
- case 0xccb27641: res = print_ds_constructor_decrypted_message_action_typing (DS, T); break;
- case 0xf3c9611b: res = print_ds_constructor_decrypted_message_action_request_key (DS, T); break;
- case 0x6fe1735b: res = print_ds_constructor_decrypted_message_action_accept_key (DS, T); break;
- case 0xdd05ec6b: res = print_ds_constructor_decrypted_message_action_abort_key (DS, T); break;
- case 0xec2e0b9b: res = print_ds_constructor_decrypted_message_action_commit_key (DS, T); break;
- case 0xa82fdd63: res = print_ds_constructor_decrypted_message_action_noop (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_decrypted_message_layer (struct tl_ds_decrypted_message_layer *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_decrypted_message_layer (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_decrypted_message_layer (struct tl_ds_decrypted_message_layer *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_decrypted_message_layer (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_decrypted_message_media (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x089f5c4a: res = print_ds_constructor_decrypted_message_media_empty (DS, T); break;
- case 0x32798a8c: res = print_ds_constructor_decrypted_message_media_photo (DS, T); break;
- case 0x35480a59: res = print_ds_constructor_decrypted_message_media_geo_point (DS, T); break;
- case 0x588a0a97: res = print_ds_constructor_decrypted_message_media_contact (DS, T); break;
- case 0xb095434b: res = print_ds_constructor_decrypted_message_media_document (DS, T); break;
- case 0x524a415d: res = print_ds_constructor_decrypted_message_media_video (DS, T); break;
- case 0x57e0a9cb: res = print_ds_constructor_decrypted_message_media_audio (DS, T); break;
- case 0xfa95b0dd: res = print_ds_constructor_decrypted_message_media_external_document (DS, T); break;
- case 0x4cee6ef3: res = print_ds_constructor_decrypted_message_media_video_l12 (DS, T); break;
- case 0x6080758f: res = print_ds_constructor_decrypted_message_media_audio_l12 (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_decrypted_message_media (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x089f5c4a: res = print_ds_constructor_decrypted_message_media_empty (DS, T); break;
- case 0x32798a8c: res = print_ds_constructor_decrypted_message_media_photo (DS, T); break;
- case 0x35480a59: res = print_ds_constructor_decrypted_message_media_geo_point (DS, T); break;
- case 0x588a0a97: res = print_ds_constructor_decrypted_message_media_contact (DS, T); break;
- case 0xb095434b: res = print_ds_constructor_decrypted_message_media_document (DS, T); break;
- case 0x524a415d: res = print_ds_constructor_decrypted_message_media_video (DS, T); break;
- case 0x57e0a9cb: res = print_ds_constructor_decrypted_message_media_audio (DS, T); break;
- case 0xfa95b0dd: res = print_ds_constructor_decrypted_message_media_external_document (DS, T); break;
- case 0x4cee6ef3: res = print_ds_constructor_decrypted_message_media_video_l12 (DS, T); break;
- case 0x6080758f: res = print_ds_constructor_decrypted_message_media_audio_l12 (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_dialog (struct tl_ds_dialog *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_dialog (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_dialog (struct tl_ds_dialog *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_dialog (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_disabled_feature (struct tl_ds_disabled_feature *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_disabled_feature (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_disabled_feature (struct tl_ds_disabled_feature *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_disabled_feature (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_document (struct tl_ds_document *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x36f8c871: res = print_ds_constructor_document_empty (DS, T); break;
- case 0xf9a39f4f: res = print_ds_constructor_document (DS, T); break;
- case 0x9efc6326: res = print_ds_constructor_document_l19 (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_document (struct tl_ds_document *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x36f8c871: res = print_ds_constructor_document_empty (DS, T); break;
- case 0xf9a39f4f: res = print_ds_constructor_document (DS, T); break;
- case 0x9efc6326: res = print_ds_constructor_document_l19 (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_document_attribute (struct tl_ds_document_attribute *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x6c37c15c: res = print_ds_constructor_document_attribute_image_size (DS, T); break;
- case 0x11b58939: res = print_ds_constructor_document_attribute_animated (DS, T); break;
- case 0x994c9882: res = print_ds_constructor_document_attribute_sticker_l28 (DS, T); break;
- case 0x3a556302: res = print_ds_constructor_document_attribute_sticker (DS, T); break;
- case 0x5910cccb: res = print_ds_constructor_document_attribute_video (DS, T); break;
- case 0x051448e5: res = print_ds_constructor_document_attribute_audio (DS, T); break;
- case 0x15590068: res = print_ds_constructor_document_attribute_filename (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_document_attribute (struct tl_ds_document_attribute *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x6c37c15c: res = print_ds_constructor_document_attribute_image_size (DS, T); break;
- case 0x11b58939: res = print_ds_constructor_document_attribute_animated (DS, T); break;
- case 0x994c9882: res = print_ds_constructor_document_attribute_sticker_l28 (DS, T); break;
- case 0x3a556302: res = print_ds_constructor_document_attribute_sticker (DS, T); break;
- case 0x5910cccb: res = print_ds_constructor_document_attribute_video (DS, T); break;
- case 0x051448e5: res = print_ds_constructor_document_attribute_audio (DS, T); break;
- case 0x15590068: res = print_ds_constructor_document_attribute_filename (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_double (double *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_double (DS, T);
- return res;
-}
-int print_ds_type_bare_double (double *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_double (DS, T);
- return res;
-}
-int print_ds_type_encrypted_chat (struct tl_ds_encrypted_chat *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xab7ec0a0: res = print_ds_constructor_encrypted_chat_empty (DS, T); break;
- case 0x3bf703dc: res = print_ds_constructor_encrypted_chat_waiting (DS, T); break;
- case 0xc878527e: res = print_ds_constructor_encrypted_chat_requested (DS, T); break;
- case 0xfa56ce36: res = print_ds_constructor_encrypted_chat (DS, T); break;
- case 0x13d6dd27: res = print_ds_constructor_encrypted_chat_discarded (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_encrypted_chat (struct tl_ds_encrypted_chat *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xab7ec0a0: res = print_ds_constructor_encrypted_chat_empty (DS, T); break;
- case 0x3bf703dc: res = print_ds_constructor_encrypted_chat_waiting (DS, T); break;
- case 0xc878527e: res = print_ds_constructor_encrypted_chat_requested (DS, T); break;
- case 0xfa56ce36: res = print_ds_constructor_encrypted_chat (DS, T); break;
- case 0x13d6dd27: res = print_ds_constructor_encrypted_chat_discarded (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_encrypted_file (struct tl_ds_encrypted_file *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xc21f497e: res = print_ds_constructor_encrypted_file_empty (DS, T); break;
- case 0x4a70994c: res = print_ds_constructor_encrypted_file (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_encrypted_file (struct tl_ds_encrypted_file *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xc21f497e: res = print_ds_constructor_encrypted_file_empty (DS, T); break;
- case 0x4a70994c: res = print_ds_constructor_encrypted_file (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_encrypted_message (struct tl_ds_encrypted_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xed18c118: res = print_ds_constructor_encrypted_message (DS, T); break;
- case 0x23734b06: res = print_ds_constructor_encrypted_message_service (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_encrypted_message (struct tl_ds_encrypted_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xed18c118: res = print_ds_constructor_encrypted_message (DS, T); break;
- case 0x23734b06: res = print_ds_constructor_encrypted_message_service (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_error (struct tl_ds_error *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_error (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_error (struct tl_ds_error *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_error (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_exported_chat_invite (struct tl_ds_exported_chat_invite *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x69df3769: res = print_ds_constructor_chat_invite_empty (DS, T); break;
- case 0xfc2e05bc: res = print_ds_constructor_chat_invite_exported (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_exported_chat_invite (struct tl_ds_exported_chat_invite *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x69df3769: res = print_ds_constructor_chat_invite_empty (DS, T); break;
- case 0xfc2e05bc: res = print_ds_constructor_chat_invite_exported (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_file_location (struct tl_ds_file_location *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x7c596b46: res = print_ds_constructor_file_location_unavailable (DS, T); break;
- case 0x53d69076: res = print_ds_constructor_file_location (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_file_location (struct tl_ds_file_location *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x7c596b46: res = print_ds_constructor_file_location_unavailable (DS, T); break;
- case 0x53d69076: res = print_ds_constructor_file_location (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_geo_chat_message (struct tl_ds_geo_chat_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x60311a9b: res = print_ds_constructor_geo_chat_message_empty (DS, T); break;
- case 0x4505f8e1: res = print_ds_constructor_geo_chat_message (DS, T); break;
- case 0xd34fa24e: res = print_ds_constructor_geo_chat_message_service (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_geo_chat_message (struct tl_ds_geo_chat_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x60311a9b: res = print_ds_constructor_geo_chat_message_empty (DS, T); break;
- case 0x4505f8e1: res = print_ds_constructor_geo_chat_message (DS, T); break;
- case 0xd34fa24e: res = print_ds_constructor_geo_chat_message_service (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_geo_point (struct tl_ds_geo_point *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x1117dd5f: res = print_ds_constructor_geo_point_empty (DS, T); break;
- case 0x2049d70c: res = print_ds_constructor_geo_point (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_geo_point (struct tl_ds_geo_point *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x1117dd5f: res = print_ds_constructor_geo_point_empty (DS, T); break;
- case 0x2049d70c: res = print_ds_constructor_geo_point (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_imported_contact (struct tl_ds_imported_contact *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_imported_contact (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_imported_contact (struct tl_ds_imported_contact *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_imported_contact (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_app_event (struct tl_ds_input_app_event *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_input_app_event (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_app_event (struct tl_ds_input_app_event *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_input_app_event (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_audio (struct tl_ds_input_audio *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xd95adc84: res = print_ds_constructor_input_audio_empty (DS, T); break;
- case 0x77d440ff: res = print_ds_constructor_input_audio (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_audio (struct tl_ds_input_audio *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xd95adc84: res = print_ds_constructor_input_audio_empty (DS, T); break;
- case 0x77d440ff: res = print_ds_constructor_input_audio (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_chat_photo (struct tl_ds_input_chat_photo *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x1ca48f57: res = print_ds_constructor_input_chat_photo_empty (DS, T); break;
- case 0x94254732: res = print_ds_constructor_input_chat_uploaded_photo (DS, T); break;
- case 0xb2e1bf08: res = print_ds_constructor_input_chat_photo (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_chat_photo (struct tl_ds_input_chat_photo *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x1ca48f57: res = print_ds_constructor_input_chat_photo_empty (DS, T); break;
- case 0x94254732: res = print_ds_constructor_input_chat_uploaded_photo (DS, T); break;
- case 0xb2e1bf08: res = print_ds_constructor_input_chat_photo (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_contact (struct tl_ds_input_contact *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_input_phone_contact (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_contact (struct tl_ds_input_contact *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_input_phone_contact (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_document (struct tl_ds_input_document *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x72f0eaae: res = print_ds_constructor_input_document_empty (DS, T); break;
- case 0x18798952: res = print_ds_constructor_input_document (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_document (struct tl_ds_input_document *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x72f0eaae: res = print_ds_constructor_input_document_empty (DS, T); break;
- case 0x18798952: res = print_ds_constructor_input_document (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_encrypted_chat (struct tl_ds_input_encrypted_chat *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_input_encrypted_chat (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_encrypted_chat (struct tl_ds_input_encrypted_chat *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_input_encrypted_chat (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_encrypted_file (struct tl_ds_input_encrypted_file *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x1837c364: res = print_ds_constructor_input_encrypted_file_empty (DS, T); break;
- case 0x64bd0306: res = print_ds_constructor_input_encrypted_file_uploaded (DS, T); break;
- case 0x5a17b5e5: res = print_ds_constructor_input_encrypted_file (DS, T); break;
- case 0x2dc173c8: res = print_ds_constructor_input_encrypted_file_big_uploaded (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_encrypted_file (struct tl_ds_input_encrypted_file *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x1837c364: res = print_ds_constructor_input_encrypted_file_empty (DS, T); break;
- case 0x64bd0306: res = print_ds_constructor_input_encrypted_file_uploaded (DS, T); break;
- case 0x5a17b5e5: res = print_ds_constructor_input_encrypted_file (DS, T); break;
- case 0x2dc173c8: res = print_ds_constructor_input_encrypted_file_big_uploaded (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_file (struct tl_ds_input_file *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xf52ff27f: res = print_ds_constructor_input_file (DS, T); break;
- case 0xfa4f0bb5: res = print_ds_constructor_input_file_big (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_file (struct tl_ds_input_file *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xf52ff27f: res = print_ds_constructor_input_file (DS, T); break;
- case 0xfa4f0bb5: res = print_ds_constructor_input_file_big (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x14637196: res = print_ds_constructor_input_file_location (DS, T); break;
- case 0x3d0364ec: res = print_ds_constructor_input_video_file_location (DS, T); break;
- case 0xf5235d55: res = print_ds_constructor_input_encrypted_file_location (DS, T); break;
- case 0x74dc404d: res = print_ds_constructor_input_audio_file_location (DS, T); break;
- case 0x4e45abe9: res = print_ds_constructor_input_document_file_location (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x14637196: res = print_ds_constructor_input_file_location (DS, T); break;
- case 0x3d0364ec: res = print_ds_constructor_input_video_file_location (DS, T); break;
- case 0xf5235d55: res = print_ds_constructor_input_encrypted_file_location (DS, T); break;
- case 0x74dc404d: res = print_ds_constructor_input_audio_file_location (DS, T); break;
- case 0x4e45abe9: res = print_ds_constructor_input_document_file_location (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_geo_chat (struct tl_ds_input_geo_chat *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_input_geo_chat (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_geo_chat (struct tl_ds_input_geo_chat *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_input_geo_chat (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_geo_point (struct tl_ds_input_geo_point *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xe4c123d6: res = print_ds_constructor_input_geo_point_empty (DS, T); break;
- case 0xf3b7acc9: res = print_ds_constructor_input_geo_point (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_geo_point (struct tl_ds_input_geo_point *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xe4c123d6: res = print_ds_constructor_input_geo_point_empty (DS, T); break;
- case 0xf3b7acc9: res = print_ds_constructor_input_geo_point (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_media (struct tl_ds_input_media *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x9664f57f: res = print_ds_constructor_input_media_empty (DS, T); break;
- case 0xf7aff1c0: res = print_ds_constructor_input_media_uploaded_photo (DS, T); break;
- case 0xe9bfb4f3: res = print_ds_constructor_input_media_photo (DS, T); break;
- case 0xf9c44144: res = print_ds_constructor_input_media_geo_point (DS, T); break;
- case 0xa6e45987: res = print_ds_constructor_input_media_contact (DS, T); break;
- case 0xe13fd4bc: res = print_ds_constructor_input_media_uploaded_video (DS, T); break;
- case 0x96fb97dc: res = print_ds_constructor_input_media_uploaded_thumb_video (DS, T); break;
- case 0x936a4ebd: res = print_ds_constructor_input_media_video (DS, T); break;
- case 0x4e498cab: res = print_ds_constructor_input_media_uploaded_audio (DS, T); break;
- case 0x89938781: res = print_ds_constructor_input_media_audio (DS, T); break;
- case 0xffe76b78: res = print_ds_constructor_input_media_uploaded_document (DS, T); break;
- case 0x41481486: res = print_ds_constructor_input_media_uploaded_thumb_document (DS, T); break;
- case 0xd184e841: res = print_ds_constructor_input_media_document (DS, T); break;
- case 0x2827a81a: res = print_ds_constructor_input_media_venue (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_media (struct tl_ds_input_media *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x9664f57f: res = print_ds_constructor_input_media_empty (DS, T); break;
- case 0xf7aff1c0: res = print_ds_constructor_input_media_uploaded_photo (DS, T); break;
- case 0xe9bfb4f3: res = print_ds_constructor_input_media_photo (DS, T); break;
- case 0xf9c44144: res = print_ds_constructor_input_media_geo_point (DS, T); break;
- case 0xa6e45987: res = print_ds_constructor_input_media_contact (DS, T); break;
- case 0xe13fd4bc: res = print_ds_constructor_input_media_uploaded_video (DS, T); break;
- case 0x96fb97dc: res = print_ds_constructor_input_media_uploaded_thumb_video (DS, T); break;
- case 0x936a4ebd: res = print_ds_constructor_input_media_video (DS, T); break;
- case 0x4e498cab: res = print_ds_constructor_input_media_uploaded_audio (DS, T); break;
- case 0x89938781: res = print_ds_constructor_input_media_audio (DS, T); break;
- case 0xffe76b78: res = print_ds_constructor_input_media_uploaded_document (DS, T); break;
- case 0x41481486: res = print_ds_constructor_input_media_uploaded_thumb_document (DS, T); break;
- case 0xd184e841: res = print_ds_constructor_input_media_document (DS, T); break;
- case 0x2827a81a: res = print_ds_constructor_input_media_venue (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_notify_peer (struct tl_ds_input_notify_peer *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xb8bc5b0c: res = print_ds_constructor_input_notify_peer (DS, T); break;
- case 0x193b4417: res = print_ds_constructor_input_notify_users (DS, T); break;
- case 0x4a95e84e: res = print_ds_constructor_input_notify_chats (DS, T); break;
- case 0xa429b886: res = print_ds_constructor_input_notify_all (DS, T); break;
- case 0x4d8ddec8: res = print_ds_constructor_input_notify_geo_chat_peer (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_notify_peer (struct tl_ds_input_notify_peer *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xb8bc5b0c: res = print_ds_constructor_input_notify_peer (DS, T); break;
- case 0x193b4417: res = print_ds_constructor_input_notify_users (DS, T); break;
- case 0x4a95e84e: res = print_ds_constructor_input_notify_chats (DS, T); break;
- case 0xa429b886: res = print_ds_constructor_input_notify_all (DS, T); break;
- case 0x4d8ddec8: res = print_ds_constructor_input_notify_geo_chat_peer (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_peer (struct tl_ds_input_peer *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x7f3b18ea: res = print_ds_constructor_input_peer_empty (DS, T); break;
- case 0x7da07ec9: res = print_ds_constructor_input_peer_self (DS, T); break;
- case 0x1023dbe8: res = print_ds_constructor_input_peer_contact (DS, T); break;
- case 0x9b447325: res = print_ds_constructor_input_peer_foreign (DS, T); break;
- case 0x179be863: res = print_ds_constructor_input_peer_chat (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_peer (struct tl_ds_input_peer *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x7f3b18ea: res = print_ds_constructor_input_peer_empty (DS, T); break;
- case 0x7da07ec9: res = print_ds_constructor_input_peer_self (DS, T); break;
- case 0x1023dbe8: res = print_ds_constructor_input_peer_contact (DS, T); break;
- case 0x9b447325: res = print_ds_constructor_input_peer_foreign (DS, T); break;
- case 0x179be863: res = print_ds_constructor_input_peer_chat (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_peer_notify_events (struct tl_ds_input_peer_notify_events *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xf03064d8: res = print_ds_constructor_input_peer_notify_events_empty (DS, T); break;
- case 0xe86a2c74: res = print_ds_constructor_input_peer_notify_events_all (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_peer_notify_events (struct tl_ds_input_peer_notify_events *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xf03064d8: res = print_ds_constructor_input_peer_notify_events_empty (DS, T); break;
- case 0xe86a2c74: res = print_ds_constructor_input_peer_notify_events_all (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_input_peer_notify_settings (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_input_peer_notify_settings (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_photo (struct tl_ds_input_photo *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x1cd7bf0d: res = print_ds_constructor_input_photo_empty (DS, T); break;
- case 0xfb95c6c4: res = print_ds_constructor_input_photo (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_photo (struct tl_ds_input_photo *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x1cd7bf0d: res = print_ds_constructor_input_photo_empty (DS, T); break;
- case 0xfb95c6c4: res = print_ds_constructor_input_photo (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_photo_crop (struct tl_ds_input_photo_crop *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xade6b004: res = print_ds_constructor_input_photo_crop_auto (DS, T); break;
- case 0xd9915325: res = print_ds_constructor_input_photo_crop (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_photo_crop (struct tl_ds_input_photo_crop *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xade6b004: res = print_ds_constructor_input_photo_crop_auto (DS, T); break;
- case 0xd9915325: res = print_ds_constructor_input_photo_crop (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_privacy_key (struct tl_ds_input_privacy_key *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_input_privacy_key_status_timestamp (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_privacy_key (struct tl_ds_input_privacy_key *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_input_privacy_key_status_timestamp (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_privacy_rule (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x0d09e07b: res = print_ds_constructor_input_privacy_value_allow_contacts (DS, T); break;
- case 0x184b35ce: res = print_ds_constructor_input_privacy_value_allow_all (DS, T); break;
- case 0x131cc67f: res = print_ds_constructor_input_privacy_value_allow_users (DS, T); break;
- case 0x0ba52007: res = print_ds_constructor_input_privacy_value_disallow_contacts (DS, T); break;
- case 0xd66b66c9: res = print_ds_constructor_input_privacy_value_disallow_all (DS, T); break;
- case 0x90110467: res = print_ds_constructor_input_privacy_value_disallow_users (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_privacy_rule (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x0d09e07b: res = print_ds_constructor_input_privacy_value_allow_contacts (DS, T); break;
- case 0x184b35ce: res = print_ds_constructor_input_privacy_value_allow_all (DS, T); break;
- case 0x131cc67f: res = print_ds_constructor_input_privacy_value_allow_users (DS, T); break;
- case 0x0ba52007: res = print_ds_constructor_input_privacy_value_disallow_contacts (DS, T); break;
- case 0xd66b66c9: res = print_ds_constructor_input_privacy_value_disallow_all (DS, T); break;
- case 0x90110467: res = print_ds_constructor_input_privacy_value_disallow_users (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_sticker_set (struct tl_ds_input_sticker_set *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xffb62b95: res = print_ds_constructor_input_sticker_set_empty (DS, T); break;
- case 0x9de7a269: res = print_ds_constructor_input_sticker_set_i_d (DS, T); break;
- case 0x861cc8a0: res = print_ds_constructor_input_sticker_set_short_name (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_sticker_set (struct tl_ds_input_sticker_set *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xffb62b95: res = print_ds_constructor_input_sticker_set_empty (DS, T); break;
- case 0x9de7a269: res = print_ds_constructor_input_sticker_set_i_d (DS, T); break;
- case 0x861cc8a0: res = print_ds_constructor_input_sticker_set_short_name (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_user (struct tl_ds_input_user *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xb98886cf: res = print_ds_constructor_input_user_empty (DS, T); break;
- case 0xf7c1b13f: res = print_ds_constructor_input_user_self (DS, T); break;
- case 0x86e94f65: res = print_ds_constructor_input_user_contact (DS, T); break;
- case 0x655e74ff: res = print_ds_constructor_input_user_foreign (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_user (struct tl_ds_input_user *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xb98886cf: res = print_ds_constructor_input_user_empty (DS, T); break;
- case 0xf7c1b13f: res = print_ds_constructor_input_user_self (DS, T); break;
- case 0x86e94f65: res = print_ds_constructor_input_user_contact (DS, T); break;
- case 0x655e74ff: res = print_ds_constructor_input_user_foreign (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_input_video (struct tl_ds_input_video *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x5508ec75: res = print_ds_constructor_input_video_empty (DS, T); break;
- case 0xee579652: res = print_ds_constructor_input_video (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_input_video (struct tl_ds_input_video *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x5508ec75: res = print_ds_constructor_input_video_empty (DS, T); break;
- case 0xee579652: res = print_ds_constructor_input_video (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_int (int *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_int (DS, T);
- return res;
-}
-int print_ds_type_bare_int (int *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_int (DS, T);
- return res;
-}
-int print_ds_type_int128 (struct tl_ds_int128 *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_int128 (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_int128 (struct tl_ds_int128 *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_int128 (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_int256 (struct tl_ds_int256 *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_int256 (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_int256 (struct tl_ds_int256 *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_int256 (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_keyboard_button (struct tl_ds_keyboard_button *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_keyboard_button (DS, T);
- return res;
-}
-int print_ds_type_bare_keyboard_button (struct tl_ds_keyboard_button *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_keyboard_button (DS, T);
- return res;
-}
-int print_ds_type_keyboard_button_row (struct tl_ds_keyboard_button_row *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_keyboard_button_row (DS, T);
- return res;
-}
-int print_ds_type_bare_keyboard_button_row (struct tl_ds_keyboard_button_row *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_keyboard_button_row (DS, T);
- return res;
-}
-int print_ds_type_long (long long *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_long (DS, T);
- return res;
-}
-int print_ds_type_bare_long (long long *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_long (DS, T);
- return res;
-}
-int print_ds_type_message (struct tl_ds_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x83e5de54: res = print_ds_constructor_message_empty (DS, T); break;
- case 0xc3060325: res = print_ds_constructor_message (DS, T); break;
- case 0x1d86f70e: res = print_ds_constructor_message_service (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_message (struct tl_ds_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x83e5de54: res = print_ds_constructor_message_empty (DS, T); break;
- case 0xc3060325: res = print_ds_constructor_message (DS, T); break;
- case 0x1d86f70e: res = print_ds_constructor_message_service (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_message_action (struct tl_ds_message_action *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xb6aef7b0: res = print_ds_constructor_message_action_empty (DS, T); break;
- case 0xa6638b9a: res = print_ds_constructor_message_action_chat_create (DS, T); break;
- case 0xb5a1ce5a: res = print_ds_constructor_message_action_chat_edit_title (DS, T); break;
- case 0x7fcb13a8: res = print_ds_constructor_message_action_chat_edit_photo (DS, T); break;
- case 0x95e3fbef: res = print_ds_constructor_message_action_chat_delete_photo (DS, T); break;
- case 0x5e3cfc4b: res = print_ds_constructor_message_action_chat_add_user (DS, T); break;
- case 0xb2ae9b0c: res = print_ds_constructor_message_action_chat_delete_user (DS, T); break;
- case 0x6f038ebc: res = print_ds_constructor_message_action_geo_chat_create (DS, T); break;
- case 0x0c7d53de: res = print_ds_constructor_message_action_geo_chat_checkin (DS, T); break;
- case 0xf89cf5e8: res = print_ds_constructor_message_action_chat_joined_by_link (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_message_action (struct tl_ds_message_action *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xb6aef7b0: res = print_ds_constructor_message_action_empty (DS, T); break;
- case 0xa6638b9a: res = print_ds_constructor_message_action_chat_create (DS, T); break;
- case 0xb5a1ce5a: res = print_ds_constructor_message_action_chat_edit_title (DS, T); break;
- case 0x7fcb13a8: res = print_ds_constructor_message_action_chat_edit_photo (DS, T); break;
- case 0x95e3fbef: res = print_ds_constructor_message_action_chat_delete_photo (DS, T); break;
- case 0x5e3cfc4b: res = print_ds_constructor_message_action_chat_add_user (DS, T); break;
- case 0xb2ae9b0c: res = print_ds_constructor_message_action_chat_delete_user (DS, T); break;
- case 0x6f038ebc: res = print_ds_constructor_message_action_geo_chat_create (DS, T); break;
- case 0x0c7d53de: res = print_ds_constructor_message_action_geo_chat_checkin (DS, T); break;
- case 0xf89cf5e8: res = print_ds_constructor_message_action_chat_joined_by_link (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_message_media (struct tl_ds_message_media *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x3ded6320: res = print_ds_constructor_message_media_empty (DS, T); break;
- case 0x3d8ce53d: res = print_ds_constructor_message_media_photo (DS, T); break;
- case 0x5bcf1675: res = print_ds_constructor_message_media_video (DS, T); break;
- case 0x56e0d474: res = print_ds_constructor_message_media_geo (DS, T); break;
- case 0x5e7d2f39: res = print_ds_constructor_message_media_contact (DS, T); break;
- case 0x9f84f49e: res = print_ds_constructor_message_media_unsupported (DS, T); break;
- case 0x2fda2204: res = print_ds_constructor_message_media_document (DS, T); break;
- case 0xc6b68300: res = print_ds_constructor_message_media_audio (DS, T); break;
- case 0xa32dd600: res = print_ds_constructor_message_media_web_page (DS, T); break;
- case 0x7912b71f: res = print_ds_constructor_message_media_venue (DS, T); break;
- case 0xc8c45a2a: res = print_ds_constructor_message_media_photo_l27 (DS, T); break;
- case 0xa2d24290: res = print_ds_constructor_message_media_video_l27 (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_message_media (struct tl_ds_message_media *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x3ded6320: res = print_ds_constructor_message_media_empty (DS, T); break;
- case 0x3d8ce53d: res = print_ds_constructor_message_media_photo (DS, T); break;
- case 0x5bcf1675: res = print_ds_constructor_message_media_video (DS, T); break;
- case 0x56e0d474: res = print_ds_constructor_message_media_geo (DS, T); break;
- case 0x5e7d2f39: res = print_ds_constructor_message_media_contact (DS, T); break;
- case 0x9f84f49e: res = print_ds_constructor_message_media_unsupported (DS, T); break;
- case 0x2fda2204: res = print_ds_constructor_message_media_document (DS, T); break;
- case 0xc6b68300: res = print_ds_constructor_message_media_audio (DS, T); break;
- case 0xa32dd600: res = print_ds_constructor_message_media_web_page (DS, T); break;
- case 0x7912b71f: res = print_ds_constructor_message_media_venue (DS, T); break;
- case 0xc8c45a2a: res = print_ds_constructor_message_media_photo_l27 (DS, T); break;
- case 0xa2d24290: res = print_ds_constructor_message_media_video_l27 (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_filter (struct tl_ds_messages_filter *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x57e2f66c: res = print_ds_constructor_input_messages_filter_empty (DS, T); break;
- case 0x9609a51c: res = print_ds_constructor_input_messages_filter_photos (DS, T); break;
- case 0x9fc00e65: res = print_ds_constructor_input_messages_filter_video (DS, T); break;
- case 0x56e9f0e4: res = print_ds_constructor_input_messages_filter_photo_video (DS, T); break;
- case 0xd95e73bb: res = print_ds_constructor_input_messages_filter_photo_video_documents (DS, T); break;
- case 0x9eddf188: res = print_ds_constructor_input_messages_filter_document (DS, T); break;
- case 0xcfc87522: res = print_ds_constructor_input_messages_filter_audio (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_filter (struct tl_ds_messages_filter *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x57e2f66c: res = print_ds_constructor_input_messages_filter_empty (DS, T); break;
- case 0x9609a51c: res = print_ds_constructor_input_messages_filter_photos (DS, T); break;
- case 0x9fc00e65: res = print_ds_constructor_input_messages_filter_video (DS, T); break;
- case 0x56e9f0e4: res = print_ds_constructor_input_messages_filter_photo_video (DS, T); break;
- case 0xd95e73bb: res = print_ds_constructor_input_messages_filter_photo_video_documents (DS, T); break;
- case 0x9eddf188: res = print_ds_constructor_input_messages_filter_document (DS, T); break;
- case 0xcfc87522: res = print_ds_constructor_input_messages_filter_audio (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_nearest_dc (struct tl_ds_nearest_dc *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_nearest_dc (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_nearest_dc (struct tl_ds_nearest_dc *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_nearest_dc (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_notify_peer (struct tl_ds_notify_peer *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x9fd40bd8: res = print_ds_constructor_notify_peer (DS, T); break;
- case 0xb4c83b4c: res = print_ds_constructor_notify_users (DS, T); break;
- case 0xc007cec3: res = print_ds_constructor_notify_chats (DS, T); break;
- case 0x74d07c60: res = print_ds_constructor_notify_all (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_notify_peer (struct tl_ds_notify_peer *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x9fd40bd8: res = print_ds_constructor_notify_peer (DS, T); break;
- case 0xb4c83b4c: res = print_ds_constructor_notify_users (DS, T); break;
- case 0xc007cec3: res = print_ds_constructor_notify_chats (DS, T); break;
- case 0x74d07c60: res = print_ds_constructor_notify_all (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_null (struct tl_ds_null *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_null (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_null (struct tl_ds_null *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_null (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_p_q_inner_data (struct tl_ds_p_q_inner_data *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x83c95aec: res = print_ds_constructor_p_q_inner_data (DS, T); break;
- case 0x3c6a84d4: res = print_ds_constructor_p_q_inner_data_temp (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_p_q_inner_data (struct tl_ds_p_q_inner_data *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x83c95aec: res = print_ds_constructor_p_q_inner_data (DS, T); break;
- case 0x3c6a84d4: res = print_ds_constructor_p_q_inner_data_temp (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_peer (struct tl_ds_peer *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x9db1bc6d: res = print_ds_constructor_peer_user (DS, T); break;
- case 0xbad0e5bb: res = print_ds_constructor_peer_chat (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_peer (struct tl_ds_peer *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x9db1bc6d: res = print_ds_constructor_peer_user (DS, T); break;
- case 0xbad0e5bb: res = print_ds_constructor_peer_chat (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_peer_notify_events (struct tl_ds_peer_notify_events *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xadd53cb3: res = print_ds_constructor_peer_notify_events_empty (DS, T); break;
- case 0x6d1ded88: res = print_ds_constructor_peer_notify_events_all (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_peer_notify_events (struct tl_ds_peer_notify_events *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xadd53cb3: res = print_ds_constructor_peer_notify_events_empty (DS, T); break;
- case 0x6d1ded88: res = print_ds_constructor_peer_notify_events_all (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_peer_notify_settings (struct tl_ds_peer_notify_settings *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x70a68512: res = print_ds_constructor_peer_notify_settings_empty (DS, T); break;
- case 0x8d5e11ee: res = print_ds_constructor_peer_notify_settings (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_peer_notify_settings (struct tl_ds_peer_notify_settings *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x70a68512: res = print_ds_constructor_peer_notify_settings_empty (DS, T); break;
- case 0x8d5e11ee: res = print_ds_constructor_peer_notify_settings (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_photo (struct tl_ds_photo *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x2331b22d: res = print_ds_constructor_photo_empty (DS, T); break;
- case 0xc3838076: res = print_ds_constructor_photo (DS, T); break;
- case 0x22b56751: res = print_ds_constructor_photo_l27 (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_photo (struct tl_ds_photo *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x2331b22d: res = print_ds_constructor_photo_empty (DS, T); break;
- case 0xc3838076: res = print_ds_constructor_photo (DS, T); break;
- case 0x22b56751: res = print_ds_constructor_photo_l27 (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_photo_size (struct tl_ds_photo_size *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x0e17e23c: res = print_ds_constructor_photo_size_empty (DS, T); break;
- case 0x77bfb61b: res = print_ds_constructor_photo_size (DS, T); break;
- case 0xe9a734fa: res = print_ds_constructor_photo_cached_size (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_photo_size (struct tl_ds_photo_size *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x0e17e23c: res = print_ds_constructor_photo_size_empty (DS, T); break;
- case 0x77bfb61b: res = print_ds_constructor_photo_size (DS, T); break;
- case 0xe9a734fa: res = print_ds_constructor_photo_cached_size (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_privacy_key (struct tl_ds_privacy_key *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_privacy_key_status_timestamp (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_privacy_key (struct tl_ds_privacy_key *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_privacy_key_status_timestamp (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_privacy_rule (struct tl_ds_privacy_rule *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xfffe1bac: res = print_ds_constructor_privacy_value_allow_contacts (DS, T); break;
- case 0x65427b82: res = print_ds_constructor_privacy_value_allow_all (DS, T); break;
- case 0x4d5bbe0c: res = print_ds_constructor_privacy_value_allow_users (DS, T); break;
- case 0xf888fa1a: res = print_ds_constructor_privacy_value_disallow_contacts (DS, T); break;
- case 0x8b73e763: res = print_ds_constructor_privacy_value_disallow_all (DS, T); break;
- case 0x0c7f49b7: res = print_ds_constructor_privacy_value_disallow_users (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_privacy_rule (struct tl_ds_privacy_rule *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xfffe1bac: res = print_ds_constructor_privacy_value_allow_contacts (DS, T); break;
- case 0x65427b82: res = print_ds_constructor_privacy_value_allow_all (DS, T); break;
- case 0x4d5bbe0c: res = print_ds_constructor_privacy_value_allow_users (DS, T); break;
- case 0xf888fa1a: res = print_ds_constructor_privacy_value_disallow_contacts (DS, T); break;
- case 0x8b73e763: res = print_ds_constructor_privacy_value_disallow_all (DS, T); break;
- case 0x0c7f49b7: res = print_ds_constructor_privacy_value_disallow_users (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_received_notify_message (struct tl_ds_received_notify_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_received_notify_message (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_received_notify_message (struct tl_ds_received_notify_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_received_notify_message (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_reply_markup (struct tl_ds_reply_markup *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xa03e5b85: res = print_ds_constructor_reply_keyboard_hide (DS, T); break;
- case 0xf4108aa0: res = print_ds_constructor_reply_keyboard_force_reply (DS, T); break;
- case 0x3502758c: res = print_ds_constructor_reply_keyboard_markup (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_reply_markup (struct tl_ds_reply_markup *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xa03e5b85: res = print_ds_constructor_reply_keyboard_hide (DS, T); break;
- case 0xf4108aa0: res = print_ds_constructor_reply_keyboard_force_reply (DS, T); break;
- case 0x3502758c: res = print_ds_constructor_reply_keyboard_markup (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_res_p_q (struct tl_ds_res_p_q *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_res_p_q (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_res_p_q (struct tl_ds_res_p_q *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_res_p_q (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_send_message_action (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x16bf744e: res = print_ds_constructor_send_message_typing_action (DS, T); break;
- case 0xfd5ec8f5: res = print_ds_constructor_send_message_cancel_action (DS, T); break;
- case 0xa187d66f: res = print_ds_constructor_send_message_record_video_action (DS, T); break;
- case 0x92042ff7: res = print_ds_constructor_send_message_upload_video_action_l27 (DS, T); break;
- case 0xe9763aec: res = print_ds_constructor_send_message_upload_video_action (DS, T); break;
- case 0xd52f73f7: res = print_ds_constructor_send_message_record_audio_action (DS, T); break;
- case 0xe6ac8a6f: res = print_ds_constructor_send_message_upload_audio_action_l27 (DS, T); break;
- case 0xf351d7ab: res = print_ds_constructor_send_message_upload_audio_action (DS, T); break;
- case 0xd1d34a26: res = print_ds_constructor_send_message_upload_photo_action (DS, T); break;
- case 0x8faee98e: res = print_ds_constructor_send_message_upload_document_action_l27 (DS, T); break;
- case 0xaa0cd9e4: res = print_ds_constructor_send_message_upload_document_action (DS, T); break;
- case 0x176f8ba1: res = print_ds_constructor_send_message_geo_location_action (DS, T); break;
- case 0x628cbc6f: res = print_ds_constructor_send_message_choose_contact_action (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_send_message_action (struct tl_ds_send_message_action *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x16bf744e: res = print_ds_constructor_send_message_typing_action (DS, T); break;
- case 0xfd5ec8f5: res = print_ds_constructor_send_message_cancel_action (DS, T); break;
- case 0xa187d66f: res = print_ds_constructor_send_message_record_video_action (DS, T); break;
- case 0x92042ff7: res = print_ds_constructor_send_message_upload_video_action_l27 (DS, T); break;
- case 0xe9763aec: res = print_ds_constructor_send_message_upload_video_action (DS, T); break;
- case 0xd52f73f7: res = print_ds_constructor_send_message_record_audio_action (DS, T); break;
- case 0xe6ac8a6f: res = print_ds_constructor_send_message_upload_audio_action_l27 (DS, T); break;
- case 0xf351d7ab: res = print_ds_constructor_send_message_upload_audio_action (DS, T); break;
- case 0xd1d34a26: res = print_ds_constructor_send_message_upload_photo_action (DS, T); break;
- case 0x8faee98e: res = print_ds_constructor_send_message_upload_document_action_l27 (DS, T); break;
- case 0xaa0cd9e4: res = print_ds_constructor_send_message_upload_document_action (DS, T); break;
- case 0x176f8ba1: res = print_ds_constructor_send_message_geo_location_action (DS, T); break;
- case 0x628cbc6f: res = print_ds_constructor_send_message_choose_contact_action (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_server_d_h_params (struct tl_ds_server_d_h_params *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x79cb045d: res = print_ds_constructor_server_d_h_params_fail (DS, T); break;
- case 0xd0e8075c: res = print_ds_constructor_server_d_h_params_ok (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_server_d_h_params (struct tl_ds_server_d_h_params *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x79cb045d: res = print_ds_constructor_server_d_h_params_fail (DS, T); break;
- case 0xd0e8075c: res = print_ds_constructor_server_d_h_params_ok (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_server_d_h_inner_data (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_server_d_h_inner_data (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_set_client_d_h_params_answer (struct tl_ds_set_client_d_h_params_answer *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x3bcbf734: res = print_ds_constructor_dh_gen_ok (DS, T); break;
- case 0x46dc1fb9: res = print_ds_constructor_dh_gen_retry (DS, T); break;
- case 0xa69dae02: res = print_ds_constructor_dh_gen_fail (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_set_client_d_h_params_answer (struct tl_ds_set_client_d_h_params_answer *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x3bcbf734: res = print_ds_constructor_dh_gen_ok (DS, T); break;
- case 0x46dc1fb9: res = print_ds_constructor_dh_gen_retry (DS, T); break;
- case 0xa69dae02: res = print_ds_constructor_dh_gen_fail (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_sticker_pack (struct tl_ds_sticker_pack *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_sticker_pack (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_sticker_pack (struct tl_ds_sticker_pack *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_sticker_pack (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_sticker_set (struct tl_ds_sticker_set *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_sticker_set (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_sticker_set (struct tl_ds_sticker_set *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_sticker_set (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_string (struct tl_ds_string *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_string (DS, T);
- return res;
-}
-int print_ds_type_bare_string (struct tl_ds_string *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_string (DS, T);
- return res;
-}
-int print_ds_type_update (struct tl_ds_update *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x1f2b0afd: res = print_ds_constructor_update_new_message (DS, T); break;
- case 0x4e90bfd6: res = print_ds_constructor_update_message_i_d (DS, T); break;
- case 0xa20db0e5: res = print_ds_constructor_update_delete_messages (DS, T); break;
- case 0x5c486927: res = print_ds_constructor_update_user_typing (DS, T); break;
- case 0x9a65ea1f: res = print_ds_constructor_update_chat_user_typing (DS, T); break;
- case 0x07761198: res = print_ds_constructor_update_chat_participants (DS, T); break;
- case 0x1bfbd823: res = print_ds_constructor_update_user_status (DS, T); break;
- case 0xa7332b73: res = print_ds_constructor_update_user_name (DS, T); break;
- case 0x95313b0c: res = print_ds_constructor_update_user_photo (DS, T); break;
- case 0x2575bbb9: res = print_ds_constructor_update_contact_registered (DS, T); break;
- case 0x9d2e67c5: res = print_ds_constructor_update_contact_link (DS, T); break;
- case 0x8f06529a: res = print_ds_constructor_update_new_authorization (DS, T); break;
- case 0x5a68e3f7: res = print_ds_constructor_update_new_geo_chat_message (DS, T); break;
- case 0x12bcbd9a: res = print_ds_constructor_update_new_encrypted_message (DS, T); break;
- case 0x1710f156: res = print_ds_constructor_update_encrypted_chat_typing (DS, T); break;
- case 0xb4a2e88d: res = print_ds_constructor_update_encryption (DS, T); break;
- case 0x38fe25b7: res = print_ds_constructor_update_encrypted_messages_read (DS, T); break;
- case 0x3a0eeb22: res = print_ds_constructor_update_chat_participant_add (DS, T); break;
- case 0x6e5f8c22: res = print_ds_constructor_update_chat_participant_delete (DS, T); break;
- case 0x8e5e9873: res = print_ds_constructor_update_dc_options (DS, T); break;
- case 0x80ece81a: res = print_ds_constructor_update_user_blocked (DS, T); break;
- case 0xbec268ef: res = print_ds_constructor_update_notify_settings (DS, T); break;
- case 0x382dd3e4: res = print_ds_constructor_update_service_notification (DS, T); break;
- case 0xee3b272a: res = print_ds_constructor_update_privacy (DS, T); break;
- case 0x12b9417b: res = print_ds_constructor_update_user_phone (DS, T); break;
- case 0x9961fd5c: res = print_ds_constructor_update_read_history_inbox (DS, T); break;
- case 0x2f2f21bf: res = print_ds_constructor_update_read_history_outbox (DS, T); break;
- case 0x2cc36971: res = print_ds_constructor_update_web_page (DS, T); break;
- case 0x68c13933: res = print_ds_constructor_update_read_messages_contents (DS, T); break;
- case 0x03114739: res = print_ds_constructor_update_msg_update (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_update (struct tl_ds_update *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x1f2b0afd: res = print_ds_constructor_update_new_message (DS, T); break;
- case 0x4e90bfd6: res = print_ds_constructor_update_message_i_d (DS, T); break;
- case 0xa20db0e5: res = print_ds_constructor_update_delete_messages (DS, T); break;
- case 0x5c486927: res = print_ds_constructor_update_user_typing (DS, T); break;
- case 0x9a65ea1f: res = print_ds_constructor_update_chat_user_typing (DS, T); break;
- case 0x07761198: res = print_ds_constructor_update_chat_participants (DS, T); break;
- case 0x1bfbd823: res = print_ds_constructor_update_user_status (DS, T); break;
- case 0xa7332b73: res = print_ds_constructor_update_user_name (DS, T); break;
- case 0x95313b0c: res = print_ds_constructor_update_user_photo (DS, T); break;
- case 0x2575bbb9: res = print_ds_constructor_update_contact_registered (DS, T); break;
- case 0x9d2e67c5: res = print_ds_constructor_update_contact_link (DS, T); break;
- case 0x8f06529a: res = print_ds_constructor_update_new_authorization (DS, T); break;
- case 0x5a68e3f7: res = print_ds_constructor_update_new_geo_chat_message (DS, T); break;
- case 0x12bcbd9a: res = print_ds_constructor_update_new_encrypted_message (DS, T); break;
- case 0x1710f156: res = print_ds_constructor_update_encrypted_chat_typing (DS, T); break;
- case 0xb4a2e88d: res = print_ds_constructor_update_encryption (DS, T); break;
- case 0x38fe25b7: res = print_ds_constructor_update_encrypted_messages_read (DS, T); break;
- case 0x3a0eeb22: res = print_ds_constructor_update_chat_participant_add (DS, T); break;
- case 0x6e5f8c22: res = print_ds_constructor_update_chat_participant_delete (DS, T); break;
- case 0x8e5e9873: res = print_ds_constructor_update_dc_options (DS, T); break;
- case 0x80ece81a: res = print_ds_constructor_update_user_blocked (DS, T); break;
- case 0xbec268ef: res = print_ds_constructor_update_notify_settings (DS, T); break;
- case 0x382dd3e4: res = print_ds_constructor_update_service_notification (DS, T); break;
- case 0xee3b272a: res = print_ds_constructor_update_privacy (DS, T); break;
- case 0x12b9417b: res = print_ds_constructor_update_user_phone (DS, T); break;
- case 0x9961fd5c: res = print_ds_constructor_update_read_history_inbox (DS, T); break;
- case 0x2f2f21bf: res = print_ds_constructor_update_read_history_outbox (DS, T); break;
- case 0x2cc36971: res = print_ds_constructor_update_web_page (DS, T); break;
- case 0x68c13933: res = print_ds_constructor_update_read_messages_contents (DS, T); break;
- case 0x03114739: res = print_ds_constructor_update_msg_update (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_updates (struct tl_ds_updates *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xe317af7e: res = print_ds_constructor_updates_too_long (DS, T); break;
- case 0xed5c2127: res = print_ds_constructor_update_short_message (DS, T); break;
- case 0x52238b3c: res = print_ds_constructor_update_short_chat_message (DS, T); break;
- case 0x78d4dec1: res = print_ds_constructor_update_short (DS, T); break;
- case 0x725b04c3: res = print_ds_constructor_updates_combined (DS, T); break;
- case 0x74ae4240: res = print_ds_constructor_updates (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_updates (struct tl_ds_updates *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xe317af7e: res = print_ds_constructor_updates_too_long (DS, T); break;
- case 0xed5c2127: res = print_ds_constructor_update_short_message (DS, T); break;
- case 0x52238b3c: res = print_ds_constructor_update_short_chat_message (DS, T); break;
- case 0x78d4dec1: res = print_ds_constructor_update_short (DS, T); break;
- case 0x725b04c3: res = print_ds_constructor_updates_combined (DS, T); break;
- case 0x74ae4240: res = print_ds_constructor_updates (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_user (struct tl_ds_user *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x200250ba: res = print_ds_constructor_user_empty (DS, T); break;
- case 0x22e49072: res = print_ds_constructor_user (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_user (struct tl_ds_user *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x200250ba: res = print_ds_constructor_user_empty (DS, T); break;
- case 0x22e49072: res = print_ds_constructor_user (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_user_full (struct tl_ds_user_full *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_user_full (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_user_full (struct tl_ds_user_full *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_user_full (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_user_profile_photo (struct tl_ds_user_profile_photo *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x4f11bae1: res = print_ds_constructor_user_profile_photo_empty (DS, T); break;
- case 0xd559d8c8: res = print_ds_constructor_user_profile_photo (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_user_profile_photo (struct tl_ds_user_profile_photo *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x4f11bae1: res = print_ds_constructor_user_profile_photo_empty (DS, T); break;
- case 0xd559d8c8: res = print_ds_constructor_user_profile_photo (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_user_status (struct tl_ds_user_status *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x09d05049: res = print_ds_constructor_user_status_empty (DS, T); break;
- case 0xedb93949: res = print_ds_constructor_user_status_online (DS, T); break;
- case 0x008c703f: res = print_ds_constructor_user_status_offline (DS, T); break;
- case 0xe26f42f1: res = print_ds_constructor_user_status_recently (DS, T); break;
- case 0x07bf09fc: res = print_ds_constructor_user_status_last_week (DS, T); break;
- case 0x77ebc742: res = print_ds_constructor_user_status_last_month (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_user_status (struct tl_ds_user_status *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x09d05049: res = print_ds_constructor_user_status_empty (DS, T); break;
- case 0xedb93949: res = print_ds_constructor_user_status_online (DS, T); break;
- case 0x008c703f: res = print_ds_constructor_user_status_offline (DS, T); break;
- case 0xe26f42f1: res = print_ds_constructor_user_status_recently (DS, T); break;
- case 0x07bf09fc: res = print_ds_constructor_user_status_last_week (DS, T); break;
- case 0x77ebc742: res = print_ds_constructor_user_status_last_month (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_vector (struct tl_ds_vector *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_vector (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_vector (struct tl_ds_vector *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_vector (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_video (struct tl_ds_video *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xc10658a8: res = print_ds_constructor_video_empty (DS, T); break;
- case 0xee9f4a4d: res = print_ds_constructor_video (DS, T); break;
- case 0x388fa391: res = print_ds_constructor_video_l27 (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_video (struct tl_ds_video *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xc10658a8: res = print_ds_constructor_video_empty (DS, T); break;
- case 0xee9f4a4d: res = print_ds_constructor_video (DS, T); break;
- case 0x388fa391: res = print_ds_constructor_video_l27 (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_wall_paper (struct tl_ds_wall_paper *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xccb03657: res = print_ds_constructor_wall_paper (DS, T); break;
- case 0x63117f24: res = print_ds_constructor_wall_paper_solid (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_wall_paper (struct tl_ds_wall_paper *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xccb03657: res = print_ds_constructor_wall_paper (DS, T); break;
- case 0x63117f24: res = print_ds_constructor_wall_paper_solid (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_web_page (struct tl_ds_web_page *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xeb1477e8: res = print_ds_constructor_web_page_empty (DS, T); break;
- case 0xc586da1c: res = print_ds_constructor_web_page_pending (DS, T); break;
- case 0xa31ea0b5: res = print_ds_constructor_web_page (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_web_page (struct tl_ds_web_page *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xeb1477e8: res = print_ds_constructor_web_page_empty (DS, T); break;
- case 0xc586da1c: res = print_ds_constructor_web_page_pending (DS, T); break;
- case 0xa31ea0b5: res = print_ds_constructor_web_page (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_account_authorizations (struct tl_ds_account_authorizations *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_account_authorizations (DS, T);
- return res;
-}
-int print_ds_type_bare_account_authorizations (struct tl_ds_account_authorizations *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_account_authorizations (DS, T);
- return res;
-}
-int print_ds_type_account_password (struct tl_ds_account_password *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x96dabc18: res = print_ds_constructor_account_no_password (DS, T); break;
- case 0x7c18141c: res = print_ds_constructor_account_password (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_account_password (struct tl_ds_account_password *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x96dabc18: res = print_ds_constructor_account_no_password (DS, T); break;
- case 0x7c18141c: res = print_ds_constructor_account_password (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_account_password_input_settings (struct tl_ds_account_password_input_settings *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_account_password_input_settings (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_account_password_input_settings (struct tl_ds_account_password_input_settings *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_account_password_input_settings (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_account_password_settings (struct tl_ds_account_password_settings *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_account_password_settings (DS, T);
- return res;
-}
-int print_ds_type_bare_account_password_settings (struct tl_ds_account_password_settings *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_account_password_settings (DS, T);
- return res;
-}
-int print_ds_type_account_privacy_rules (struct tl_ds_account_privacy_rules *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_account_privacy_rules (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_account_privacy_rules (struct tl_ds_account_privacy_rules *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_account_privacy_rules (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_account_sent_change_phone_code (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_account_sent_change_phone_code (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_auth_authorization (struct tl_ds_auth_authorization *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_auth_authorization (DS, T);
- return res;
-}
-int print_ds_type_bare_auth_authorization (struct tl_ds_auth_authorization *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_auth_authorization (DS, T);
- return res;
-}
-int print_ds_type_auth_checked_phone (struct tl_ds_auth_checked_phone *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_auth_checked_phone (DS, T);
- return res;
-}
-int print_ds_type_bare_auth_checked_phone (struct tl_ds_auth_checked_phone *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_auth_checked_phone (DS, T);
- return res;
-}
-int print_ds_type_auth_exported_authorization (struct tl_ds_auth_exported_authorization *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_auth_exported_authorization (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_auth_exported_authorization (struct tl_ds_auth_exported_authorization *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_auth_exported_authorization (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_auth_password_recovery (struct tl_ds_auth_password_recovery *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_auth_password_recovery (DS, T);
- return res;
-}
-int print_ds_type_bare_auth_password_recovery (struct tl_ds_auth_password_recovery *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_auth_password_recovery (DS, T);
- return res;
-}
-int print_ds_type_auth_sent_code (struct tl_ds_auth_sent_code *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xefed51d9: res = print_ds_constructor_auth_sent_code (DS, T); break;
- case 0xe325edcf: res = print_ds_constructor_auth_sent_app_code (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_auth_sent_code (struct tl_ds_auth_sent_code *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xefed51d9: res = print_ds_constructor_auth_sent_code (DS, T); break;
- case 0xe325edcf: res = print_ds_constructor_auth_sent_app_code (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_binlog_encr_key (struct tl_ds_binlog_encr_key *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_binlog_encr_key (DS, T);
- return res;
-}
-int print_ds_type_bare_binlog_encr_key (struct tl_ds_binlog_encr_key *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_binlog_encr_key (DS, T);
- return res;
-}
-int print_ds_type_binlog_update (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x3b06de69: res = print_ds_constructor_binlog_start (DS, T); break;
- case 0xf96feb32: res = print_ds_constructor_binlog_dc_option (DS, T); break;
- case 0x7c0d22d8: res = print_ds_constructor_binlog_dc_option_new (DS, T); break;
- case 0x71e8c156: res = print_ds_constructor_binlog_auth_key (DS, T); break;
- case 0x9e83dbdc: res = print_ds_constructor_binlog_default_dc (DS, T); break;
- case 0x26451bb5: res = print_ds_constructor_binlog_dc_signed (DS, T); break;
- case 0x68a870e8: res = print_ds_constructor_binlog_our_id (DS, T); break;
- case 0xeaeb7826: res = print_ds_constructor_binlog_set_dh_params (DS, T); break;
- case 0x2ca8c939: res = print_ds_constructor_binlog_set_pts (DS, T); break;
- case 0xd95738ac: res = print_ds_constructor_binlog_set_qts (DS, T); break;
- case 0x1d0f4b52: res = print_ds_constructor_binlog_set_date (DS, T); break;
- case 0x6eeb2989: res = print_ds_constructor_binlog_set_seq (DS, T); break;
- case 0xee1b38e8: res = print_ds_constructor_binlog_encr_chat_delete (DS, T); break;
- case 0x84977251: res = print_ds_constructor_binlog_encr_chat_new (DS, T); break;
- case 0x9d49488d: res = print_ds_constructor_binlog_encr_chat_exchange_new (DS, T); break;
- case 0xac55d447: res = print_ds_constructor_binlog_user_delete (DS, T); break;
- case 0x127cf2f9: res = print_ds_constructor_binlog_user_new (DS, T); break;
- case 0x0a10aa92: res = print_ds_constructor_binlog_chat_new (DS, T); break;
- case 0x535475ea: res = print_ds_constructor_binlog_chat_add_participant (DS, T); break;
- case 0x7dd1a1a2: res = print_ds_constructor_binlog_chat_del_participant (DS, T); break;
- case 0x3c873416: res = print_ds_constructor_binlog_set_msg_id (DS, T); break;
- case 0x847e77b1: res = print_ds_constructor_binlog_message_delete (DS, T); break;
- case 0x427cfcdb: res = print_ds_constructor_binlog_message_new (DS, T); break;
- case 0x6cf7cabc: res = print_ds_constructor_binlog_message_encr_new (DS, T); break;
- case 0x6dd4d85f: res = print_ds_constructor_binlog_msg_update (DS, T); break;
- case 0x83327955: res = print_ds_constructor_binlog_reset_authorization (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_binlog_update (struct tl_ds_binlog_update *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x3b06de69: res = print_ds_constructor_binlog_start (DS, T); break;
- case 0xf96feb32: res = print_ds_constructor_binlog_dc_option (DS, T); break;
- case 0x7c0d22d8: res = print_ds_constructor_binlog_dc_option_new (DS, T); break;
- case 0x71e8c156: res = print_ds_constructor_binlog_auth_key (DS, T); break;
- case 0x9e83dbdc: res = print_ds_constructor_binlog_default_dc (DS, T); break;
- case 0x26451bb5: res = print_ds_constructor_binlog_dc_signed (DS, T); break;
- case 0x68a870e8: res = print_ds_constructor_binlog_our_id (DS, T); break;
- case 0xeaeb7826: res = print_ds_constructor_binlog_set_dh_params (DS, T); break;
- case 0x2ca8c939: res = print_ds_constructor_binlog_set_pts (DS, T); break;
- case 0xd95738ac: res = print_ds_constructor_binlog_set_qts (DS, T); break;
- case 0x1d0f4b52: res = print_ds_constructor_binlog_set_date (DS, T); break;
- case 0x6eeb2989: res = print_ds_constructor_binlog_set_seq (DS, T); break;
- case 0xee1b38e8: res = print_ds_constructor_binlog_encr_chat_delete (DS, T); break;
- case 0x84977251: res = print_ds_constructor_binlog_encr_chat_new (DS, T); break;
- case 0x9d49488d: res = print_ds_constructor_binlog_encr_chat_exchange_new (DS, T); break;
- case 0xac55d447: res = print_ds_constructor_binlog_user_delete (DS, T); break;
- case 0x127cf2f9: res = print_ds_constructor_binlog_user_new (DS, T); break;
- case 0x0a10aa92: res = print_ds_constructor_binlog_chat_new (DS, T); break;
- case 0x535475ea: res = print_ds_constructor_binlog_chat_add_participant (DS, T); break;
- case 0x7dd1a1a2: res = print_ds_constructor_binlog_chat_del_participant (DS, T); break;
- case 0x3c873416: res = print_ds_constructor_binlog_set_msg_id (DS, T); break;
- case 0x847e77b1: res = print_ds_constructor_binlog_message_delete (DS, T); break;
- case 0x427cfcdb: res = print_ds_constructor_binlog_message_new (DS, T); break;
- case 0x6cf7cabc: res = print_ds_constructor_binlog_message_encr_new (DS, T); break;
- case 0x6dd4d85f: res = print_ds_constructor_binlog_msg_update (DS, T); break;
- case 0x83327955: res = print_ds_constructor_binlog_reset_authorization (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_contacts_blocked (struct tl_ds_contacts_blocked *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x1c138d15: res = print_ds_constructor_contacts_blocked (DS, T); break;
- case 0x900802a1: res = print_ds_constructor_contacts_blocked_slice (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_contacts_blocked (struct tl_ds_contacts_blocked *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x1c138d15: res = print_ds_constructor_contacts_blocked (DS, T); break;
- case 0x900802a1: res = print_ds_constructor_contacts_blocked_slice (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_contacts_contacts (struct tl_ds_contacts_contacts *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xb74ba9d2: res = print_ds_constructor_contacts_contacts_not_modified (DS, T); break;
- case 0x6f8b8cb2: res = print_ds_constructor_contacts_contacts (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_contacts_contacts (struct tl_ds_contacts_contacts *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xb74ba9d2: res = print_ds_constructor_contacts_contacts_not_modified (DS, T); break;
- case 0x6f8b8cb2: res = print_ds_constructor_contacts_contacts (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_contacts_found (struct tl_ds_contacts_found *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contacts_found (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_contacts_found (struct tl_ds_contacts_found *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contacts_found (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contacts_imported_contacts (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contacts_imported_contacts (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_contacts_link (struct tl_ds_contacts_link *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contacts_link (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_contacts_link (struct tl_ds_contacts_link *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contacts_link (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_contacts_suggested (struct tl_ds_contacts_suggested *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contacts_suggested (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_contacts_suggested (struct tl_ds_contacts_suggested *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_contacts_suggested (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_geochats_located (struct tl_ds_geochats_located *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_geochats_located (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_geochats_located (struct tl_ds_geochats_located *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_geochats_located (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_geochats_messages (struct tl_ds_geochats_messages *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xd1526db1: res = print_ds_constructor_geochats_messages (DS, T); break;
- case 0xbc5863e8: res = print_ds_constructor_geochats_messages_slice (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_geochats_messages (struct tl_ds_geochats_messages *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xd1526db1: res = print_ds_constructor_geochats_messages (DS, T); break;
- case 0xbc5863e8: res = print_ds_constructor_geochats_messages_slice (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_geochats_stated_message (struct tl_ds_geochats_stated_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_geochats_stated_message (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_geochats_stated_message (struct tl_ds_geochats_stated_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_geochats_stated_message (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_help_app_update (struct tl_ds_help_app_update *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x8987f311: res = print_ds_constructor_help_app_update (DS, T); break;
- case 0xc45a6536: res = print_ds_constructor_help_no_app_update (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_help_app_update (struct tl_ds_help_app_update *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x8987f311: res = print_ds_constructor_help_app_update (DS, T); break;
- case 0xc45a6536: res = print_ds_constructor_help_no_app_update (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_help_invite_text (struct tl_ds_help_invite_text *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_help_invite_text (DS, T);
- return res;
-}
-int print_ds_type_bare_help_invite_text (struct tl_ds_help_invite_text *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_help_invite_text (DS, T);
- return res;
-}
-int print_ds_type_help_support (struct tl_ds_help_support *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_help_support (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_help_support (struct tl_ds_help_support *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_help_support (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_affected_history (struct tl_ds_messages_affected_history *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_messages_affected_history (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_affected_history (struct tl_ds_messages_affected_history *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_messages_affected_history (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_affected_messages (struct tl_ds_messages_affected_messages *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_messages_affected_messages (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_affected_messages (struct tl_ds_messages_affected_messages *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_messages_affected_messages (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_all_stickers (struct tl_ds_messages_all_stickers *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xe86602c3: res = print_ds_constructor_messages_all_stickers_not_modified (DS, T); break;
- case 0x5ce352ec: res = print_ds_constructor_messages_all_stickers (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_all_stickers (struct tl_ds_messages_all_stickers *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xe86602c3: res = print_ds_constructor_messages_all_stickers_not_modified (DS, T); break;
- case 0x5ce352ec: res = print_ds_constructor_messages_all_stickers (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_chat_full (struct tl_ds_messages_chat_full *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_messages_chat_full (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_chat_full (struct tl_ds_messages_chat_full *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_messages_chat_full (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_chats (struct tl_ds_messages_chats *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_messages_chats (DS, T);
- return res;
-}
-int print_ds_type_bare_messages_chats (struct tl_ds_messages_chats *DS, struct paramed_type *T) {
- int res;
- res = print_ds_constructor_messages_chats (DS, T);
- return res;
-}
-int print_ds_type_messages_dh_config (struct tl_ds_messages_dh_config *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xc0e24635: res = print_ds_constructor_messages_dh_config_not_modified (DS, T); break;
- case 0x2c221edd: res = print_ds_constructor_messages_dh_config (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_dh_config (struct tl_ds_messages_dh_config *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xc0e24635: res = print_ds_constructor_messages_dh_config_not_modified (DS, T); break;
- case 0x2c221edd: res = print_ds_constructor_messages_dh_config (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_dialogs (struct tl_ds_messages_dialogs *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x15ba6c40: res = print_ds_constructor_messages_dialogs (DS, T); break;
- case 0x71e094f3: res = print_ds_constructor_messages_dialogs_slice (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_dialogs (struct tl_ds_messages_dialogs *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x15ba6c40: res = print_ds_constructor_messages_dialogs (DS, T); break;
- case 0x71e094f3: res = print_ds_constructor_messages_dialogs_slice (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_message (struct tl_ds_messages_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_messages_message_empty (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_message (struct tl_ds_messages_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_messages_message_empty (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_messages (struct tl_ds_messages_messages *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x8c718e87: res = print_ds_constructor_messages_messages (DS, T); break;
- case 0x0b446ae3: res = print_ds_constructor_messages_messages_slice (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_messages (struct tl_ds_messages_messages *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x8c718e87: res = print_ds_constructor_messages_messages (DS, T); break;
- case 0x0b446ae3: res = print_ds_constructor_messages_messages_slice (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x560f8935: res = print_ds_constructor_messages_sent_encrypted_message (DS, T); break;
- case 0x9493ff32: res = print_ds_constructor_messages_sent_encrypted_file (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x560f8935: res = print_ds_constructor_messages_sent_encrypted_message (DS, T); break;
- case 0x9493ff32: res = print_ds_constructor_messages_sent_encrypted_file (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_sent_message (struct tl_ds_messages_sent_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x4c3d47f3: res = print_ds_constructor_messages_sent_message (DS, T); break;
- case 0x35a1a663: res = print_ds_constructor_messages_sent_message_link (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_sent_message (struct tl_ds_messages_sent_message *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x4c3d47f3: res = print_ds_constructor_messages_sent_message (DS, T); break;
- case 0x35a1a663: res = print_ds_constructor_messages_sent_message_link (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_sticker_set (struct tl_ds_messages_sticker_set *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_messages_sticker_set (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_sticker_set (struct tl_ds_messages_sticker_set *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_messages_sticker_set (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_messages_stickers (struct tl_ds_messages_stickers *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xf1749a22: res = print_ds_constructor_messages_stickers_not_modified (DS, T); break;
- case 0x8a8ecd32: res = print_ds_constructor_messages_stickers (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_messages_stickers (struct tl_ds_messages_stickers *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xf1749a22: res = print_ds_constructor_messages_stickers_not_modified (DS, T); break;
- case 0x8a8ecd32: res = print_ds_constructor_messages_stickers (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_photos_photo (struct tl_ds_photos_photo *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_photos_photo (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_photos_photo (struct tl_ds_photos_photo *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_photos_photo (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_photos_photos (struct tl_ds_photos_photos *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x8dca6aa5: res = print_ds_constructor_photos_photos (DS, T); break;
- case 0x15051f54: res = print_ds_constructor_photos_photos_slice (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_photos_photos (struct tl_ds_photos_photos *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x8dca6aa5: res = print_ds_constructor_photos_photos (DS, T); break;
- case 0x15051f54: res = print_ds_constructor_photos_photos_slice (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_storage_file_type (struct tl_ds_storage_file_type *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xaa963b05: res = print_ds_constructor_storage_file_unknown (DS, T); break;
- case 0x007efe0e: res = print_ds_constructor_storage_file_jpeg (DS, T); break;
- case 0xcae1aadf: res = print_ds_constructor_storage_file_gif (DS, T); break;
- case 0x0a4f63c0: res = print_ds_constructor_storage_file_png (DS, T); break;
- case 0xae1e508d: res = print_ds_constructor_storage_file_pdf (DS, T); break;
- case 0x528a0677: res = print_ds_constructor_storage_file_mp3 (DS, T); break;
- case 0x4b09ebbc: res = print_ds_constructor_storage_file_mov (DS, T); break;
- case 0x40bc6f52: res = print_ds_constructor_storage_file_partial (DS, T); break;
- case 0xb3cea0e4: res = print_ds_constructor_storage_file_mp4 (DS, T); break;
- case 0x1081464c: res = print_ds_constructor_storage_file_webp (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_storage_file_type (struct tl_ds_storage_file_type *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0xaa963b05: res = print_ds_constructor_storage_file_unknown (DS, T); break;
- case 0x007efe0e: res = print_ds_constructor_storage_file_jpeg (DS, T); break;
- case 0xcae1aadf: res = print_ds_constructor_storage_file_gif (DS, T); break;
- case 0x0a4f63c0: res = print_ds_constructor_storage_file_png (DS, T); break;
- case 0xae1e508d: res = print_ds_constructor_storage_file_pdf (DS, T); break;
- case 0x528a0677: res = print_ds_constructor_storage_file_mp3 (DS, T); break;
- case 0x4b09ebbc: res = print_ds_constructor_storage_file_mov (DS, T); break;
- case 0x40bc6f52: res = print_ds_constructor_storage_file_partial (DS, T); break;
- case 0xb3cea0e4: res = print_ds_constructor_storage_file_mp4 (DS, T); break;
- case 0x1081464c: res = print_ds_constructor_storage_file_webp (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_updates_difference (struct tl_ds_updates_difference *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x5d75a138: res = print_ds_constructor_updates_difference_empty (DS, T); break;
- case 0x00f49ca0: res = print_ds_constructor_updates_difference (DS, T); break;
- case 0xa8fb1981: res = print_ds_constructor_updates_difference_slice (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_updates_difference (struct tl_ds_updates_difference *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- switch (DS->magic) {
- case 0x5d75a138: res = print_ds_constructor_updates_difference_empty (DS, T); break;
- case 0x00f49ca0: res = print_ds_constructor_updates_difference (DS, T); break;
- case 0xa8fb1981: res = print_ds_constructor_updates_difference_slice (DS, T); break;
- default: return -1;
- }
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_updates_state (struct tl_ds_updates_state *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_updates_state (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_updates_state (struct tl_ds_updates_state *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_updates_state (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_upload_file (struct tl_ds_upload_file *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_upload_file (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_bare_upload_file (struct tl_ds_upload_file *DS, struct paramed_type *T) {
- int res;
- if (multiline_output >= 2) { multiline_offset += multiline_offset_size; }
- eprintf (" (");
- res = print_ds_constructor_upload_file (DS, T);
- if (res >= 0) {
- if (multiline_output >= 2) { multiline_offset -= multiline_offset_size; print_offset (); }
- eprintf (" )");
- }
- return res;
-}
-int print_ds_type_any (void *DS, struct paramed_type *T) {
- switch (T->type->name) {
- case 0xb8d0afdf: return print_ds_type_account_days_t_t_l (DS, T);
- case 0x472f5020: return print_ds_type_bare_account_days_t_t_l (DS, T);
- case 0x9fc5ec4e: return print_ds_type_audio (DS, T);
- case 0x603a13b1: return print_ds_type_bare_audio (DS, T);
- case 0x7bf2e6f6: return print_ds_type_authorization (DS, T);
- case 0x840d1909: return print_ds_type_bare_authorization (DS, T);
- case 0x250be282: return print_ds_type_bool (DS, T);
- case 0xdaf41d7d: return print_ds_type_bare_bool (DS, T);
- case 0x75e7ea6c: return print_ds_type_bot_command (DS, T);
- case 0x8a181593: return print_ds_type_bare_bot_command (DS, T);
- case 0xb2e16f93: return print_ds_type_bot_info (DS, T);
- case 0x4d1e906c: return print_ds_type_bare_bot_info (DS, T);
- case 0x0ee1379f: return print_ds_type_bytes (DS, T);
- case 0xf11ec860: return print_ds_type_bare_bytes (DS, T);
- case 0x7bd865dc: return print_ds_type_chat (DS, T);
- case 0x84279a23: return print_ds_type_bare_chat (DS, T);
- case 0x2e02a614: return print_ds_type_chat_full (DS, T);
- case 0xd1fd59eb: return print_ds_type_bare_chat_full (DS, T);
- case 0x94f910b1: return print_ds_type_chat_invite (DS, T);
- case 0x6b06ef4e: return print_ds_type_bare_chat_invite (DS, T);
- case 0x3631cf4c: return print_ds_type_chat_located (DS, T);
- case 0xc9ce30b3: return print_ds_type_bare_chat_located (DS, T);
- case 0xc8d7493e: return print_ds_type_chat_participant (DS, T);
- case 0x3728b6c1: return print_ds_type_bare_chat_participant (DS, T);
- case 0x77930f9f: return print_ds_type_chat_participants (DS, T);
- case 0x886cf060: return print_ds_type_bare_chat_participants (DS, T);
- case 0x56922676: return print_ds_type_chat_photo (DS, T);
- case 0xa96dd989: return print_ds_type_bare_chat_photo (DS, T);
- case 0x6643b654: return print_ds_type_client_d_h_inner_data (DS, T);
- case 0x99bc49ab: return print_ds_type_bare_client_d_h_inner_data (DS, T);
- case 0x4e32b894: return print_ds_type_config (DS, T);
- case 0xb1cd476b: return print_ds_type_bare_config (DS, T);
- case 0xf911c994: return print_ds_type_contact (DS, T);
- case 0x06ee366b: return print_ds_type_bare_contact (DS, T);
- case 0x561bc879: return print_ds_type_contact_blocked (DS, T);
- case 0xa9e43786: return print_ds_type_bare_contact_blocked (DS, T);
- case 0xea879f95: return print_ds_type_contact_found (DS, T);
- case 0x1578606a: return print_ds_type_bare_contact_found (DS, T);
- case 0x522fbc63: return print_ds_type_contact_link (DS, T);
- case 0xadd0439c: return print_ds_type_bare_contact_link (DS, T);
- case 0xd3680c61: return print_ds_type_contact_status (DS, T);
- case 0x2c97f39e: return print_ds_type_bare_contact_status (DS, T);
- case 0x3de191a1: return print_ds_type_contact_suggested (DS, T);
- case 0xc21e6e5e: return print_ds_type_bare_contact_suggested (DS, T);
- case 0x2b1a62f0: return print_ds_type_dc_option (DS, T);
- case 0xd4e59d0f: return print_ds_type_bare_dc_option (DS, T);
- case 0x535b7918: return print_ds_type_decrypted_message (DS, T);
- case 0xaca486e7: return print_ds_type_bare_decrypted_message (DS, T);
- case 0x4e0eefde: return print_ds_type_decrypted_message_action (DS, T);
- case 0xb1f11021: return print_ds_type_bare_decrypted_message_action (DS, T);
- case 0x1be31789: return print_ds_type_decrypted_message_layer (DS, T);
- case 0xe41ce876: return print_ds_type_bare_decrypted_message_layer (DS, T);
- case 0x34e0d674: return print_ds_type_decrypted_message_media (DS, T);
- case 0xcb1f298b: return print_ds_type_bare_decrypted_message_media (DS, T);
- case 0xc1dd804a: return print_ds_type_dialog (DS, T);
- case 0x3e227fb5: return print_ds_type_bare_dialog (DS, T);
- case 0xae636f24: return print_ds_type_disabled_feature (DS, T);
- case 0x519c90db: return print_ds_type_bare_disabled_feature (DS, T);
- case 0x51a73418: return print_ds_type_document (DS, T);
- case 0xae58cbe7: return print_ds_type_bare_document (DS, T);
- case 0x97c637a3: return print_ds_type_document_attribute (DS, T);
- case 0x6839c85c: return print_ds_type_bare_document_attribute (DS, T);
- case 0x2210c154: return print_ds_type_double (DS, T);
- case 0xddef3eab: return print_ds_type_bare_double (DS, T);
- case 0xb1718213: return print_ds_type_encrypted_chat (DS, T);
- case 0x4e8e7dec: return print_ds_type_bare_encrypted_chat (DS, T);
- case 0x886fd032: return print_ds_type_encrypted_file (DS, T);
- case 0x77902fcd: return print_ds_type_bare_encrypted_file (DS, T);
- case 0xce6b8a1e: return print_ds_type_encrypted_message (DS, T);
- case 0x319475e1: return print_ds_type_bare_encrypted_message (DS, T);
- case 0xc4b9f9bb: return print_ds_type_error (DS, T);
- case 0x3b460644: return print_ds_type_bare_error (DS, T);
- case 0x95f132d5: return print_ds_type_exported_chat_invite (DS, T);
- case 0x6a0ecd2a: return print_ds_type_bare_exported_chat_invite (DS, T);
- case 0x2f8ffb30: return print_ds_type_file_location (DS, T);
- case 0xd07004cf: return print_ds_type_bare_file_location (DS, T);
- case 0xf67b4034: return print_ds_type_geo_chat_message (DS, T);
- case 0x0984bfcb: return print_ds_type_bare_geo_chat_message (DS, T);
- case 0x315e0a53: return print_ds_type_geo_point (DS, T);
- case 0xcea1f5ac: return print_ds_type_bare_geo_point (DS, T);
- case 0xd0028438: return print_ds_type_imported_contact (DS, T);
- case 0x2ffd7bc7: return print_ds_type_bare_imported_contact (DS, T);
- case 0x770656a8: return print_ds_type_input_app_event (DS, T);
- case 0x88f9a957: return print_ds_type_bare_input_app_event (DS, T);
- case 0xae8e9c7b: return print_ds_type_input_audio (DS, T);
- case 0x51716384: return print_ds_type_bare_input_audio (DS, T);
- case 0x3a60776d: return print_ds_type_input_chat_photo (DS, T);
- case 0xc59f8892: return print_ds_type_bare_input_chat_photo (DS, T);
- case 0xf392b7f4: return print_ds_type_input_contact (DS, T);
- case 0x0c6d480b: return print_ds_type_bare_input_contact (DS, T);
- case 0x6a8963fc: return print_ds_type_input_document (DS, T);
- case 0x95769c03: return print_ds_type_bare_input_document (DS, T);
- case 0xf141b5e1: return print_ds_type_input_encrypted_chat (DS, T);
- case 0x0ebe4a1e: return print_ds_type_bare_input_encrypted_chat (DS, T);
- case 0x0b5c064f: return print_ds_type_input_encrypted_file (DS, T);
- case 0xf4a3f9b0: return print_ds_type_bare_input_encrypted_file (DS, T);
- case 0x0f60f9ca: return print_ds_type_input_file (DS, T);
- case 0xf09f0635: return print_ds_type_bare_input_file (DS, T);
- case 0xe6daa38b: return print_ds_type_input_file_location (DS, T);
- case 0x19255c74: return print_ds_type_bare_input_file_location (DS, T);
- case 0x74d456fa: return print_ds_type_input_geo_chat (DS, T);
- case 0x8b2ba905: return print_ds_type_bare_input_geo_chat (DS, T);
- case 0x17768f1f: return print_ds_type_input_geo_point (DS, T);
- case 0xe88970e0: return print_ds_type_bare_input_geo_point (DS, T);
- case 0xb32c91dd: return print_ds_type_input_media (DS, T);
- case 0x4cd36e22: return print_ds_type_bare_input_media (DS, T);
- case 0x02b6911b: return print_ds_type_input_notify_peer (DS, T);
- case 0xfd496ee4: return print_ds_type_bare_input_notify_peer (DS, T);
- case 0x9e67268d: return print_ds_type_input_peer (DS, T);
- case 0x6198d972: return print_ds_type_bare_input_peer (DS, T);
- case 0x185a48ac: return print_ds_type_input_peer_notify_events (DS, T);
- case 0xe7a5b753: return print_ds_type_bare_input_peer_notify_events (DS, T);
- case 0x46a2ce98: return print_ds_type_input_peer_notify_settings (DS, T);
- case 0xb95d3167: return print_ds_type_bare_input_peer_notify_settings (DS, T);
- case 0xe74279c9: return print_ds_type_input_photo (DS, T);
- case 0x18bd8636: return print_ds_type_bare_input_photo (DS, T);
- case 0x7477e321: return print_ds_type_input_photo_crop (DS, T);
- case 0x8b881cde: return print_ds_type_bare_input_photo_crop (DS, T);
- case 0x4f96cb18: return print_ds_type_input_privacy_key (DS, T);
- case 0xb06934e7: return print_ds_type_bare_input_privacy_key (DS, T);
- case 0x4b815163: return print_ds_type_input_privacy_rule (DS, T);
- case 0xb47eae9c: return print_ds_type_bare_input_privacy_rule (DS, T);
- case 0xe44d415c: return print_ds_type_input_sticker_set (DS, T);
- case 0x1bb2bea3: return print_ds_type_bare_input_sticker_set (DS, T);
- case 0xadfe0c6a: return print_ds_type_input_user (DS, T);
- case 0x5201f395: return print_ds_type_bare_input_user (DS, T);
- case 0xbb5f7a27: return print_ds_type_input_video (DS, T);
- case 0x44a085d8: return print_ds_type_bare_input_video (DS, T);
- case 0xa8509bda: return print_ds_type_int (DS, T);
- case 0x57af6425: return print_ds_type_bare_int (DS, T);
- case 0x7d36c439: return print_ds_type_int128 (DS, T);
- case 0x82c93bc6: return print_ds_type_bare_int128 (DS, T);
- case 0xf2c798b3: return print_ds_type_int256 (DS, T);
- case 0x0d38674c: return print_ds_type_bare_int256 (DS, T);
- case 0xa2fa4880: return print_ds_type_keyboard_button (DS, T);
- case 0x5d05b77f: return print_ds_type_bare_keyboard_button (DS, T);
- case 0x77608b83: return print_ds_type_keyboard_button_row (DS, T);
- case 0x889f747c: return print_ds_type_bare_keyboard_button_row (DS, T);
- case 0x22076cba: return print_ds_type_long (DS, T);
- case 0xddf89345: return print_ds_type_bare_long (DS, T);
- case 0x5d652a7f: return print_ds_type_message (DS, T);
- case 0xa29ad580: return print_ds_type_bare_message (DS, T);
- case 0x383415fa: return print_ds_type_message_action (DS, T);
- case 0xc7cbea05: return print_ds_type_bare_message_action (DS, T);
- case 0x95f2471a: return print_ds_type_message_media (DS, T);
- case 0x6a0db8e5: return print_ds_type_bare_message_media (DS, T);
- case 0x80895ae0: return print_ds_type_messages_filter (DS, T);
- case 0x7f76a51f: return print_ds_type_bare_messages_filter (DS, T);
- case 0x8e1a1775: return print_ds_type_nearest_dc (DS, T);
- case 0x71e5e88a: return print_ds_type_bare_nearest_dc (DS, T);
- case 0x9fcb8237: return print_ds_type_notify_peer (DS, T);
- case 0x60347dc8: return print_ds_type_bare_notify_peer (DS, T);
- case 0x56730bcc: return print_ds_type_null (DS, T);
- case 0xa98cf433: return print_ds_type_bare_null (DS, T);
- case 0xbfa3de38: return print_ds_type_p_q_inner_data (DS, T);
- case 0x405c21c7: return print_ds_type_bare_p_q_inner_data (DS, T);
- case 0x276159d6: return print_ds_type_peer (DS, T);
- case 0xd89ea629: return print_ds_type_bare_peer (DS, T);
- case 0xc0c8d13b: return print_ds_type_peer_notify_events (DS, T);
- case 0x3f372ec4: return print_ds_type_bare_peer_notify_events (DS, T);
- case 0xfdf894fc: return print_ds_type_peer_notify_settings (DS, T);
- case 0x02076b03: return print_ds_type_bare_peer_notify_settings (DS, T);
- case 0xc207550a: return print_ds_type_photo (DS, T);
- case 0x3df8aaf5: return print_ds_type_bare_photo (DS, T);
- case 0x900f60dd: return print_ds_type_photo_size (DS, T);
- case 0x6ff09f22: return print_ds_type_bare_photo_size (DS, T);
- case 0xbc2eab30: return print_ds_type_privacy_key (DS, T);
- case 0x43d154cf: return print_ds_type_bare_privacy_key (DS, T);
- case 0xa8638aec: return print_ds_type_privacy_rule (DS, T);
- case 0x579c7513: return print_ds_type_bare_privacy_rule (DS, T);
- case 0xa384b779: return print_ds_type_received_notify_message (DS, T);
- case 0x5c7b4886: return print_ds_type_bare_received_notify_message (DS, T);
- case 0x612ca4a9: return print_ds_type_reply_markup (DS, T);
- case 0x9ed35b56: return print_ds_type_bare_reply_markup (DS, T);
- case 0x05162463: return print_ds_type_res_p_q (DS, T);
- case 0xfae9db9c: return print_ds_type_bare_res_p_q (DS, T);
- case 0x70541c7e: return print_ds_type_send_message_action (DS, T);
- case 0x8fabe381: return print_ds_type_bare_send_message_action (DS, T);
- case 0xa9230301: return print_ds_type_server_d_h_params (DS, T);
- case 0x56dcfcfe: return print_ds_type_bare_server_d_h_params (DS, T);
- case 0xb5890dba: return print_ds_type_server_d_h_inner_data (DS, T);
- case 0x4a76f245: return print_ds_type_bare_server_d_h_inner_data (DS, T);
- case 0xdb8a468f: return print_ds_type_set_client_d_h_params_answer (DS, T);
- case 0x2475b970: return print_ds_type_bare_set_client_d_h_params_answer (DS, T);
- case 0x12b299d4: return print_ds_type_sticker_pack (DS, T);
- case 0xed4d662b: return print_ds_type_bare_sticker_pack (DS, T);
- case 0xa7a43b17: return print_ds_type_sticker_set (DS, T);
- case 0x585bc4e8: return print_ds_type_bare_sticker_set (DS, T);
- case 0xb5286e24: return print_ds_type_string (DS, T);
- case 0x4ad791db: return print_ds_type_bare_string (DS, T);
- case 0x2e02b27e: return print_ds_type_update (DS, T);
- case 0xd1fd4d81: return print_ds_type_bare_update (DS, T);
- case 0x22499d27: return print_ds_type_updates (DS, T);
- case 0xddb662d8: return print_ds_type_bare_updates (DS, T);
- case 0x02e6c0c8: return print_ds_type_user (DS, T);
- case 0xfd193f37: return print_ds_type_bare_user (DS, T);
- case 0x5a89ac5b: return print_ds_type_user_full (DS, T);
- case 0xa57653a4: return print_ds_type_bare_user_full (DS, T);
- case 0x9a486229: return print_ds_type_user_profile_photo (DS, T);
- case 0x65b79dd6: return print_ds_type_bare_user_profile_photo (DS, T);
- case 0x76de9570: return print_ds_type_user_status (DS, T);
- case 0x89216a8f: return print_ds_type_bare_user_status (DS, T);
- case 0x1cb5c415: return print_ds_type_vector (DS, T);
- case 0xe34a3bea: return print_ds_type_bare_vector (DS, T);
- case 0x1716b174: return print_ds_type_video (DS, T);
- case 0xe8e94e8b: return print_ds_type_bare_video (DS, T);
- case 0xafa14973: return print_ds_type_wall_paper (DS, T);
- case 0x505eb68c: return print_ds_type_bare_wall_paper (DS, T);
- case 0x8d8c0d41: return print_ds_type_web_page (DS, T);
- case 0x7273f2be: return print_ds_type_bare_web_page (DS, T);
- case 0x1250abde: return print_ds_type_account_authorizations (DS, T);
- case 0xedaf5421: return print_ds_type_bare_account_authorizations (DS, T);
- case 0xeac2a804: return print_ds_type_account_password (DS, T);
- case 0x153d57fb: return print_ds_type_bare_account_password (DS, T);
- case 0xbcfc532c: return print_ds_type_account_password_input_settings (DS, T);
- case 0x4303acd3: return print_ds_type_bare_account_password_input_settings (DS, T);
- case 0xb7b72ab3: return print_ds_type_account_password_settings (DS, T);
- case 0x4848d54c: return print_ds_type_bare_account_password_settings (DS, T);
- case 0x554abb6f: return print_ds_type_account_privacy_rules (DS, T);
- case 0xaab54490: return print_ds_type_bare_account_privacy_rules (DS, T);
- case 0xa4f58c4c: return print_ds_type_account_sent_change_phone_code (DS, T);
- case 0x5b0a73b3: return print_ds_type_bare_account_sent_change_phone_code (DS, T);
- case 0xff036af1: return print_ds_type_auth_authorization (DS, T);
- case 0x00fc950e: return print_ds_type_bare_auth_authorization (DS, T);
- case 0x811ea28e: return print_ds_type_auth_checked_phone (DS, T);
- case 0x7ee15d71: return print_ds_type_bare_auth_checked_phone (DS, T);
- case 0xdf969c2d: return print_ds_type_auth_exported_authorization (DS, T);
- case 0x206963d2: return print_ds_type_bare_auth_exported_authorization (DS, T);
- case 0x137948a5: return print_ds_type_auth_password_recovery (DS, T);
- case 0xec86b75a: return print_ds_type_bare_auth_password_recovery (DS, T);
- case 0x0cc8bc16: return print_ds_type_auth_sent_code (DS, T);
- case 0xf33743e9: return print_ds_type_bare_auth_sent_code (DS, T);
- case 0x0377168f: return print_ds_type_binlog_encr_key (DS, T);
- case 0xfc88e970: return print_ds_type_bare_binlog_encr_key (DS, T);
- case 0x66ff03a6: return print_ds_type_binlog_update (DS, T);
- case 0x9900fc59: return print_ds_type_bare_binlog_update (DS, T);
- case 0x8c1b8fb4: return print_ds_type_contacts_blocked (DS, T);
- case 0x73e4704b: return print_ds_type_bare_contacts_blocked (DS, T);
- case 0xd8c02560: return print_ds_type_contacts_contacts (DS, T);
- case 0x273fda9f: return print_ds_type_bare_contacts_contacts (DS, T);
- case 0x0566000e: return print_ds_type_contacts_found (DS, T);
- case 0xfa99fff1: return print_ds_type_bare_contacts_found (DS, T);
- case 0xad524315: return print_ds_type_contacts_imported_contacts (DS, T);
- case 0x52adbcea: return print_ds_type_bare_contacts_imported_contacts (DS, T);
- case 0x3ace484c: return print_ds_type_contacts_link (DS, T);
- case 0xc531b7b3: return print_ds_type_bare_contacts_link (DS, T);
- case 0x5649dcc5: return print_ds_type_contacts_suggested (DS, T);
- case 0xa9b6233a: return print_ds_type_bare_contacts_suggested (DS, T);
- case 0x48feb267: return print_ds_type_geochats_located (DS, T);
- case 0xb7014d98: return print_ds_type_bare_geochats_located (DS, T);
- case 0x6d0a0e59: return print_ds_type_geochats_messages (DS, T);
- case 0x92f5f1a6: return print_ds_type_bare_geochats_messages (DS, T);
- case 0x17b1578b: return print_ds_type_geochats_stated_message (DS, T);
- case 0xe84ea874: return print_ds_type_bare_geochats_stated_message (DS, T);
- case 0x4ddd9627: return print_ds_type_help_app_update (DS, T);
- case 0xb22269d8: return print_ds_type_bare_help_app_update (DS, T);
- case 0x18cb9f78: return print_ds_type_help_invite_text (DS, T);
- case 0xe7346087: return print_ds_type_bare_help_invite_text (DS, T);
- case 0x17c6b5f6: return print_ds_type_help_support (DS, T);
- case 0xe8394a09: return print_ds_type_bare_help_support (DS, T);
- case 0xb45c69d1: return print_ds_type_messages_affected_history (DS, T);
- case 0x4ba3962e: return print_ds_type_bare_messages_affected_history (DS, T);
- case 0x84d19185: return print_ds_type_messages_affected_messages (DS, T);
- case 0x7b2e6e7a: return print_ds_type_bare_messages_affected_messages (DS, T);
- case 0xb485502f: return print_ds_type_messages_all_stickers (DS, T);
- case 0x4b7aafd0: return print_ds_type_bare_messages_all_stickers (DS, T);
- case 0xe5d7d19c: return print_ds_type_messages_chat_full (DS, T);
- case 0x1a282e63: return print_ds_type_bare_messages_chat_full (DS, T);
- case 0x64ff9fd5: return print_ds_type_messages_chats (DS, T);
- case 0x9b00602a: return print_ds_type_bare_messages_chats (DS, T);
- case 0xecc058e8: return print_ds_type_messages_dh_config (DS, T);
- case 0x133fa717: return print_ds_type_bare_messages_dh_config (DS, T);
- case 0x645af8b3: return print_ds_type_messages_dialogs (DS, T);
- case 0x9ba5074c: return print_ds_type_bare_messages_dialogs (DS, T);
- case 0x3f4e0648: return print_ds_type_messages_message (DS, T);
- case 0xc0b1f9b7: return print_ds_type_bare_messages_message (DS, T);
- case 0x8735e464: return print_ds_type_messages_messages (DS, T);
- case 0x78ca1b9b: return print_ds_type_bare_messages_messages (DS, T);
- case 0xc29c7607: return print_ds_type_messages_sent_encrypted_message (DS, T);
- case 0x3d6389f8: return print_ds_type_bare_messages_sent_encrypted_message (DS, T);
- case 0x799ce190: return print_ds_type_messages_sent_message (DS, T);
- case 0x86631e6f: return print_ds_type_bare_messages_sent_message (DS, T);
- case 0xb60a24a6: return print_ds_type_messages_sticker_set (DS, T);
- case 0x49f5db59: return print_ds_type_bare_messages_sticker_set (DS, T);
- case 0x7bfa5710: return print_ds_type_messages_stickers (DS, T);
- case 0x8405a8ef: return print_ds_type_bare_messages_stickers (DS, T);
- case 0x20212ca8: return print_ds_type_photos_photo (DS, T);
- case 0xdfded357: return print_ds_type_bare_photos_photo (DS, T);
- case 0x98cf75f1: return print_ds_type_photos_photos (DS, T);
- case 0x67308a0e: return print_ds_type_bare_photos_photos (DS, T);
- case 0x3e2838a8: return print_ds_type_storage_file_type (DS, T);
- case 0xc1d7c757: return print_ds_type_bare_storage_file_type (DS, T);
- case 0xf57a2419: return print_ds_type_updates_difference (DS, T);
- case 0x0a85dbe6: return print_ds_type_bare_updates_difference (DS, T);
- case 0xa56c2a3e: return print_ds_type_updates_state (DS, T);
- case 0x5a93d5c1: return print_ds_type_bare_updates_state (DS, T);
- case 0x096a18d5: return print_ds_type_upload_file (DS, T);
- case 0xf695e72a: return print_ds_type_bare_upload_file (DS, T);
- default: return -1; }
-}
diff --git a/protocols/Telegram/src/tgl/auto/auto-print-ds.h b/protocols/Telegram/src/tgl/auto/auto-print-ds.h
deleted file mode 100644
index 2f74cd9f17..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-print-ds.h
+++ /dev/null
@@ -1,719 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#include "auto-types.h"
-#else
-#include "auto.h"
-#include "auto-types.h"
-#endif
-#include <assert.h>
-#include <stdio.h>
-struct tgl_state;
-char *tglf_extf_print_ds (struct tgl_state *TLS, void *DS, struct paramed_type *T);
-int print_ds_constructor_account_days_t_t_l (struct tl_ds_account_days_t_t_l *DS, struct paramed_type *T);
-int print_ds_constructor_audio_empty (struct tl_ds_audio *DS, struct paramed_type *T);
-int print_ds_constructor_audio (struct tl_ds_audio *DS, struct paramed_type *T);
-int print_ds_constructor_authorization (struct tl_ds_authorization *DS, struct paramed_type *T);
-int print_ds_constructor_bool_false (struct tl_ds_bool *DS, struct paramed_type *T);
-int print_ds_constructor_bool_true (struct tl_ds_bool *DS, struct paramed_type *T);
-int print_ds_constructor_bot_command (struct tl_ds_bot_command *DS, struct paramed_type *T);
-int print_ds_constructor_bot_command_old (struct tl_ds_bot_command *DS, struct paramed_type *T);
-int print_ds_constructor_bot_info_empty (struct tl_ds_bot_info *DS, struct paramed_type *T);
-int print_ds_constructor_bot_info (struct tl_ds_bot_info *DS, struct paramed_type *T);
-int print_ds_constructor_bytes (struct tl_ds_string *DS, struct paramed_type *T);
-int print_ds_constructor_chat_empty (struct tl_ds_chat *DS, struct paramed_type *T);
-int print_ds_constructor_chat (struct tl_ds_chat *DS, struct paramed_type *T);
-int print_ds_constructor_chat_forbidden (struct tl_ds_chat *DS, struct paramed_type *T);
-int print_ds_constructor_geo_chat (struct tl_ds_chat *DS, struct paramed_type *T);
-int print_ds_constructor_chat_full (struct tl_ds_chat_full *DS, struct paramed_type *T);
-int print_ds_constructor_chat_invite_already (struct tl_ds_chat_invite *DS, struct paramed_type *T);
-int print_ds_constructor_chat_invite (struct tl_ds_chat_invite *DS, struct paramed_type *T);
-int print_ds_constructor_chat_located (struct tl_ds_chat_located *DS, struct paramed_type *T);
-int print_ds_constructor_chat_participant (struct tl_ds_chat_participant *DS, struct paramed_type *T);
-int print_ds_constructor_chat_participants_forbidden (struct tl_ds_chat_participants *DS, struct paramed_type *T);
-int print_ds_constructor_chat_participants (struct tl_ds_chat_participants *DS, struct paramed_type *T);
-int print_ds_constructor_chat_photo_empty (struct tl_ds_chat_photo *DS, struct paramed_type *T);
-int print_ds_constructor_chat_photo (struct tl_ds_chat_photo *DS, struct paramed_type *T);
-int print_ds_constructor_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *DS, struct paramed_type *T);
-int print_ds_constructor_config (struct tl_ds_config *DS, struct paramed_type *T);
-int print_ds_constructor_contact (struct tl_ds_contact *DS, struct paramed_type *T);
-int print_ds_constructor_contact_blocked (struct tl_ds_contact_blocked *DS, struct paramed_type *T);
-int print_ds_constructor_contact_found (struct tl_ds_contact_found *DS, struct paramed_type *T);
-int print_ds_constructor_contact_link_unknown (struct tl_ds_contact_link *DS, struct paramed_type *T);
-int print_ds_constructor_contact_link_none (struct tl_ds_contact_link *DS, struct paramed_type *T);
-int print_ds_constructor_contact_link_has_phone (struct tl_ds_contact_link *DS, struct paramed_type *T);
-int print_ds_constructor_contact_link_contact (struct tl_ds_contact_link *DS, struct paramed_type *T);
-int print_ds_constructor_contact_status (struct tl_ds_contact_status *DS, struct paramed_type *T);
-int print_ds_constructor_contact_suggested (struct tl_ds_contact_suggested *DS, struct paramed_type *T);
-int print_ds_constructor_dc_option_l28 (struct tl_ds_dc_option *DS, struct paramed_type *T);
-int print_ds_constructor_dc_option (struct tl_ds_dc_option *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message (struct tl_ds_decrypted_message *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_service (struct tl_ds_decrypted_message *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_set_message_t_t_l (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_read_messages (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_delete_messages (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_screenshot_messages (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_flush_history (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_resend (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_notify_layer (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_typing (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_request_key (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_accept_key (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_abort_key (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_commit_key (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_action_noop (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_layer (struct tl_ds_decrypted_message_layer *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_media_empty (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_media_photo (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_media_geo_point (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_media_contact (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_media_document (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_media_video (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_media_audio (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_media_external_document (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_media_video_l12 (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_decrypted_message_media_audio_l12 (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_dialog (struct tl_ds_dialog *DS, struct paramed_type *T);
-int print_ds_constructor_disabled_feature (struct tl_ds_disabled_feature *DS, struct paramed_type *T);
-int print_ds_constructor_document_empty (struct tl_ds_document *DS, struct paramed_type *T);
-int print_ds_constructor_document (struct tl_ds_document *DS, struct paramed_type *T);
-int print_ds_constructor_document_l19 (struct tl_ds_document *DS, struct paramed_type *T);
-int print_ds_constructor_document_attribute_image_size (struct tl_ds_document_attribute *DS, struct paramed_type *T);
-int print_ds_constructor_document_attribute_animated (struct tl_ds_document_attribute *DS, struct paramed_type *T);
-int print_ds_constructor_document_attribute_sticker_l28 (struct tl_ds_document_attribute *DS, struct paramed_type *T);
-int print_ds_constructor_document_attribute_sticker (struct tl_ds_document_attribute *DS, struct paramed_type *T);
-int print_ds_constructor_document_attribute_video (struct tl_ds_document_attribute *DS, struct paramed_type *T);
-int print_ds_constructor_document_attribute_audio (struct tl_ds_document_attribute *DS, struct paramed_type *T);
-int print_ds_constructor_document_attribute_filename (struct tl_ds_document_attribute *DS, struct paramed_type *T);
-int print_ds_constructor_double (double *DS, struct paramed_type *T);
-int print_ds_constructor_encrypted_chat_empty (struct tl_ds_encrypted_chat *DS, struct paramed_type *T);
-int print_ds_constructor_encrypted_chat_waiting (struct tl_ds_encrypted_chat *DS, struct paramed_type *T);
-int print_ds_constructor_encrypted_chat_requested (struct tl_ds_encrypted_chat *DS, struct paramed_type *T);
-int print_ds_constructor_encrypted_chat (struct tl_ds_encrypted_chat *DS, struct paramed_type *T);
-int print_ds_constructor_encrypted_chat_discarded (struct tl_ds_encrypted_chat *DS, struct paramed_type *T);
-int print_ds_constructor_encrypted_file_empty (struct tl_ds_encrypted_file *DS, struct paramed_type *T);
-int print_ds_constructor_encrypted_file (struct tl_ds_encrypted_file *DS, struct paramed_type *T);
-int print_ds_constructor_encrypted_message (struct tl_ds_encrypted_message *DS, struct paramed_type *T);
-int print_ds_constructor_encrypted_message_service (struct tl_ds_encrypted_message *DS, struct paramed_type *T);
-int print_ds_constructor_error (struct tl_ds_error *DS, struct paramed_type *T);
-int print_ds_constructor_chat_invite_empty (struct tl_ds_exported_chat_invite *DS, struct paramed_type *T);
-int print_ds_constructor_chat_invite_exported (struct tl_ds_exported_chat_invite *DS, struct paramed_type *T);
-int print_ds_constructor_file_location_unavailable (struct tl_ds_file_location *DS, struct paramed_type *T);
-int print_ds_constructor_file_location (struct tl_ds_file_location *DS, struct paramed_type *T);
-int print_ds_constructor_geo_chat_message_empty (struct tl_ds_geo_chat_message *DS, struct paramed_type *T);
-int print_ds_constructor_geo_chat_message (struct tl_ds_geo_chat_message *DS, struct paramed_type *T);
-int print_ds_constructor_geo_chat_message_service (struct tl_ds_geo_chat_message *DS, struct paramed_type *T);
-int print_ds_constructor_geo_point_empty (struct tl_ds_geo_point *DS, struct paramed_type *T);
-int print_ds_constructor_geo_point (struct tl_ds_geo_point *DS, struct paramed_type *T);
-int print_ds_constructor_imported_contact (struct tl_ds_imported_contact *DS, struct paramed_type *T);
-int print_ds_constructor_input_app_event (struct tl_ds_input_app_event *DS, struct paramed_type *T);
-int print_ds_constructor_input_audio_empty (struct tl_ds_input_audio *DS, struct paramed_type *T);
-int print_ds_constructor_input_audio (struct tl_ds_input_audio *DS, struct paramed_type *T);
-int print_ds_constructor_input_chat_photo_empty (struct tl_ds_input_chat_photo *DS, struct paramed_type *T);
-int print_ds_constructor_input_chat_uploaded_photo (struct tl_ds_input_chat_photo *DS, struct paramed_type *T);
-int print_ds_constructor_input_chat_photo (struct tl_ds_input_chat_photo *DS, struct paramed_type *T);
-int print_ds_constructor_input_phone_contact (struct tl_ds_input_contact *DS, struct paramed_type *T);
-int print_ds_constructor_input_document_empty (struct tl_ds_input_document *DS, struct paramed_type *T);
-int print_ds_constructor_input_document (struct tl_ds_input_document *DS, struct paramed_type *T);
-int print_ds_constructor_input_encrypted_chat (struct tl_ds_input_encrypted_chat *DS, struct paramed_type *T);
-int print_ds_constructor_input_encrypted_file_empty (struct tl_ds_input_encrypted_file *DS, struct paramed_type *T);
-int print_ds_constructor_input_encrypted_file_uploaded (struct tl_ds_input_encrypted_file *DS, struct paramed_type *T);
-int print_ds_constructor_input_encrypted_file (struct tl_ds_input_encrypted_file *DS, struct paramed_type *T);
-int print_ds_constructor_input_encrypted_file_big_uploaded (struct tl_ds_input_encrypted_file *DS, struct paramed_type *T);
-int print_ds_constructor_input_file (struct tl_ds_input_file *DS, struct paramed_type *T);
-int print_ds_constructor_input_file_big (struct tl_ds_input_file *DS, struct paramed_type *T);
-int print_ds_constructor_input_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T);
-int print_ds_constructor_input_video_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T);
-int print_ds_constructor_input_encrypted_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T);
-int print_ds_constructor_input_audio_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T);
-int print_ds_constructor_input_document_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T);
-int print_ds_constructor_input_geo_chat (struct tl_ds_input_geo_chat *DS, struct paramed_type *T);
-int print_ds_constructor_input_geo_point_empty (struct tl_ds_input_geo_point *DS, struct paramed_type *T);
-int print_ds_constructor_input_geo_point (struct tl_ds_input_geo_point *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_empty (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_uploaded_photo (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_photo (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_geo_point (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_contact (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_uploaded_video (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_uploaded_thumb_video (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_video (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_uploaded_audio (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_audio (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_uploaded_document (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_uploaded_thumb_document (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_document (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_media_venue (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_notify_peer (struct tl_ds_input_notify_peer *DS, struct paramed_type *T);
-int print_ds_constructor_input_notify_users (struct tl_ds_input_notify_peer *DS, struct paramed_type *T);
-int print_ds_constructor_input_notify_chats (struct tl_ds_input_notify_peer *DS, struct paramed_type *T);
-int print_ds_constructor_input_notify_all (struct tl_ds_input_notify_peer *DS, struct paramed_type *T);
-int print_ds_constructor_input_notify_geo_chat_peer (struct tl_ds_input_notify_peer *DS, struct paramed_type *T);
-int print_ds_constructor_input_peer_empty (struct tl_ds_input_peer *DS, struct paramed_type *T);
-int print_ds_constructor_input_peer_self (struct tl_ds_input_peer *DS, struct paramed_type *T);
-int print_ds_constructor_input_peer_contact (struct tl_ds_input_peer *DS, struct paramed_type *T);
-int print_ds_constructor_input_peer_foreign (struct tl_ds_input_peer *DS, struct paramed_type *T);
-int print_ds_constructor_input_peer_chat (struct tl_ds_input_peer *DS, struct paramed_type *T);
-int print_ds_constructor_input_peer_notify_events_empty (struct tl_ds_input_peer_notify_events *DS, struct paramed_type *T);
-int print_ds_constructor_input_peer_notify_events_all (struct tl_ds_input_peer_notify_events *DS, struct paramed_type *T);
-int print_ds_constructor_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *DS, struct paramed_type *T);
-int print_ds_constructor_input_photo_empty (struct tl_ds_input_photo *DS, struct paramed_type *T);
-int print_ds_constructor_input_photo (struct tl_ds_input_photo *DS, struct paramed_type *T);
-int print_ds_constructor_input_photo_crop_auto (struct tl_ds_input_photo_crop *DS, struct paramed_type *T);
-int print_ds_constructor_input_photo_crop (struct tl_ds_input_photo_crop *DS, struct paramed_type *T);
-int print_ds_constructor_input_privacy_key_status_timestamp (struct tl_ds_input_privacy_key *DS, struct paramed_type *T);
-int print_ds_constructor_input_privacy_value_allow_contacts (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T);
-int print_ds_constructor_input_privacy_value_allow_all (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T);
-int print_ds_constructor_input_privacy_value_allow_users (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T);
-int print_ds_constructor_input_privacy_value_disallow_contacts (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T);
-int print_ds_constructor_input_privacy_value_disallow_all (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T);
-int print_ds_constructor_input_privacy_value_disallow_users (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T);
-int print_ds_constructor_input_sticker_set_empty (struct tl_ds_input_sticker_set *DS, struct paramed_type *T);
-int print_ds_constructor_input_sticker_set_i_d (struct tl_ds_input_sticker_set *DS, struct paramed_type *T);
-int print_ds_constructor_input_sticker_set_short_name (struct tl_ds_input_sticker_set *DS, struct paramed_type *T);
-int print_ds_constructor_input_user_empty (struct tl_ds_input_user *DS, struct paramed_type *T);
-int print_ds_constructor_input_user_self (struct tl_ds_input_user *DS, struct paramed_type *T);
-int print_ds_constructor_input_user_contact (struct tl_ds_input_user *DS, struct paramed_type *T);
-int print_ds_constructor_input_user_foreign (struct tl_ds_input_user *DS, struct paramed_type *T);
-int print_ds_constructor_input_video_empty (struct tl_ds_input_video *DS, struct paramed_type *T);
-int print_ds_constructor_input_video (struct tl_ds_input_video *DS, struct paramed_type *T);
-int print_ds_constructor_int (int *DS, struct paramed_type *T);
-int print_ds_constructor_int128 (struct tl_ds_int128 *DS, struct paramed_type *T);
-int print_ds_constructor_int256 (struct tl_ds_int256 *DS, struct paramed_type *T);
-int print_ds_constructor_keyboard_button (struct tl_ds_keyboard_button *DS, struct paramed_type *T);
-int print_ds_constructor_keyboard_button_row (struct tl_ds_keyboard_button_row *DS, struct paramed_type *T);
-int print_ds_constructor_long (long long *DS, struct paramed_type *T);
-int print_ds_constructor_message_empty (struct tl_ds_message *DS, struct paramed_type *T);
-int print_ds_constructor_message (struct tl_ds_message *DS, struct paramed_type *T);
-int print_ds_constructor_message_service (struct tl_ds_message *DS, struct paramed_type *T);
-int print_ds_constructor_message_action_empty (struct tl_ds_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_message_action_chat_create (struct tl_ds_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_message_action_chat_edit_title (struct tl_ds_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_message_action_chat_edit_photo (struct tl_ds_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_message_action_chat_delete_photo (struct tl_ds_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_message_action_chat_add_user (struct tl_ds_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_message_action_chat_delete_user (struct tl_ds_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_message_action_geo_chat_create (struct tl_ds_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_message_action_geo_chat_checkin (struct tl_ds_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_message_action_chat_joined_by_link (struct tl_ds_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_message_media_empty (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_message_media_photo (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_message_media_video (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_message_media_geo (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_message_media_contact (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_message_media_unsupported (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_message_media_document (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_message_media_audio (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_message_media_web_page (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_message_media_venue (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_message_media_photo_l27 (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_message_media_video_l27 (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_constructor_input_messages_filter_empty (struct tl_ds_messages_filter *DS, struct paramed_type *T);
-int print_ds_constructor_input_messages_filter_photos (struct tl_ds_messages_filter *DS, struct paramed_type *T);
-int print_ds_constructor_input_messages_filter_video (struct tl_ds_messages_filter *DS, struct paramed_type *T);
-int print_ds_constructor_input_messages_filter_photo_video (struct tl_ds_messages_filter *DS, struct paramed_type *T);
-int print_ds_constructor_input_messages_filter_photo_video_documents (struct tl_ds_messages_filter *DS, struct paramed_type *T);
-int print_ds_constructor_input_messages_filter_document (struct tl_ds_messages_filter *DS, struct paramed_type *T);
-int print_ds_constructor_input_messages_filter_audio (struct tl_ds_messages_filter *DS, struct paramed_type *T);
-int print_ds_constructor_nearest_dc (struct tl_ds_nearest_dc *DS, struct paramed_type *T);
-int print_ds_constructor_notify_peer (struct tl_ds_notify_peer *DS, struct paramed_type *T);
-int print_ds_constructor_notify_users (struct tl_ds_notify_peer *DS, struct paramed_type *T);
-int print_ds_constructor_notify_chats (struct tl_ds_notify_peer *DS, struct paramed_type *T);
-int print_ds_constructor_notify_all (struct tl_ds_notify_peer *DS, struct paramed_type *T);
-int print_ds_constructor_null (struct tl_ds_null *DS, struct paramed_type *T);
-int print_ds_constructor_p_q_inner_data (struct tl_ds_p_q_inner_data *DS, struct paramed_type *T);
-int print_ds_constructor_p_q_inner_data_temp (struct tl_ds_p_q_inner_data *DS, struct paramed_type *T);
-int print_ds_constructor_peer_user (struct tl_ds_peer *DS, struct paramed_type *T);
-int print_ds_constructor_peer_chat (struct tl_ds_peer *DS, struct paramed_type *T);
-int print_ds_constructor_peer_notify_events_empty (struct tl_ds_peer_notify_events *DS, struct paramed_type *T);
-int print_ds_constructor_peer_notify_events_all (struct tl_ds_peer_notify_events *DS, struct paramed_type *T);
-int print_ds_constructor_peer_notify_settings_empty (struct tl_ds_peer_notify_settings *DS, struct paramed_type *T);
-int print_ds_constructor_peer_notify_settings (struct tl_ds_peer_notify_settings *DS, struct paramed_type *T);
-int print_ds_constructor_photo_empty (struct tl_ds_photo *DS, struct paramed_type *T);
-int print_ds_constructor_photo (struct tl_ds_photo *DS, struct paramed_type *T);
-int print_ds_constructor_photo_l27 (struct tl_ds_photo *DS, struct paramed_type *T);
-int print_ds_constructor_photo_size_empty (struct tl_ds_photo_size *DS, struct paramed_type *T);
-int print_ds_constructor_photo_size (struct tl_ds_photo_size *DS, struct paramed_type *T);
-int print_ds_constructor_photo_cached_size (struct tl_ds_photo_size *DS, struct paramed_type *T);
-int print_ds_constructor_privacy_key_status_timestamp (struct tl_ds_privacy_key *DS, struct paramed_type *T);
-int print_ds_constructor_privacy_value_allow_contacts (struct tl_ds_privacy_rule *DS, struct paramed_type *T);
-int print_ds_constructor_privacy_value_allow_all (struct tl_ds_privacy_rule *DS, struct paramed_type *T);
-int print_ds_constructor_privacy_value_allow_users (struct tl_ds_privacy_rule *DS, struct paramed_type *T);
-int print_ds_constructor_privacy_value_disallow_contacts (struct tl_ds_privacy_rule *DS, struct paramed_type *T);
-int print_ds_constructor_privacy_value_disallow_all (struct tl_ds_privacy_rule *DS, struct paramed_type *T);
-int print_ds_constructor_privacy_value_disallow_users (struct tl_ds_privacy_rule *DS, struct paramed_type *T);
-int print_ds_constructor_received_notify_message (struct tl_ds_received_notify_message *DS, struct paramed_type *T);
-int print_ds_constructor_reply_keyboard_hide (struct tl_ds_reply_markup *DS, struct paramed_type *T);
-int print_ds_constructor_reply_keyboard_force_reply (struct tl_ds_reply_markup *DS, struct paramed_type *T);
-int print_ds_constructor_reply_keyboard_markup (struct tl_ds_reply_markup *DS, struct paramed_type *T);
-int print_ds_constructor_res_p_q (struct tl_ds_res_p_q *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_typing_action (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_cancel_action (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_record_video_action (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_upload_video_action_l27 (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_upload_video_action (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_record_audio_action (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_upload_audio_action_l27 (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_upload_audio_action (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_upload_photo_action (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_upload_document_action_l27 (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_upload_document_action (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_geo_location_action (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_send_message_choose_contact_action (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_constructor_server_d_h_params_fail (struct tl_ds_server_d_h_params *DS, struct paramed_type *T);
-int print_ds_constructor_server_d_h_params_ok (struct tl_ds_server_d_h_params *DS, struct paramed_type *T);
-int print_ds_constructor_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *DS, struct paramed_type *T);
-int print_ds_constructor_dh_gen_ok (struct tl_ds_set_client_d_h_params_answer *DS, struct paramed_type *T);
-int print_ds_constructor_dh_gen_retry (struct tl_ds_set_client_d_h_params_answer *DS, struct paramed_type *T);
-int print_ds_constructor_dh_gen_fail (struct tl_ds_set_client_d_h_params_answer *DS, struct paramed_type *T);
-int print_ds_constructor_sticker_pack (struct tl_ds_sticker_pack *DS, struct paramed_type *T);
-int print_ds_constructor_sticker_set (struct tl_ds_sticker_set *DS, struct paramed_type *T);
-int print_ds_constructor_string (struct tl_ds_string *DS, struct paramed_type *T);
-int print_ds_constructor_update_new_message (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_message_i_d (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_delete_messages (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_user_typing (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_chat_user_typing (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_chat_participants (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_user_status (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_user_name (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_user_photo (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_contact_registered (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_contact_link (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_new_authorization (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_new_geo_chat_message (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_new_encrypted_message (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_encrypted_chat_typing (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_encryption (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_encrypted_messages_read (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_chat_participant_add (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_chat_participant_delete (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_dc_options (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_user_blocked (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_notify_settings (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_service_notification (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_privacy (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_user_phone (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_read_history_inbox (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_read_history_outbox (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_web_page (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_read_messages_contents (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_update_msg_update (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_constructor_updates_too_long (struct tl_ds_updates *DS, struct paramed_type *T);
-int print_ds_constructor_update_short_message (struct tl_ds_updates *DS, struct paramed_type *T);
-int print_ds_constructor_update_short_chat_message (struct tl_ds_updates *DS, struct paramed_type *T);
-int print_ds_constructor_update_short (struct tl_ds_updates *DS, struct paramed_type *T);
-int print_ds_constructor_updates_combined (struct tl_ds_updates *DS, struct paramed_type *T);
-int print_ds_constructor_updates (struct tl_ds_updates *DS, struct paramed_type *T);
-int print_ds_constructor_user_empty (struct tl_ds_user *DS, struct paramed_type *T);
-int print_ds_constructor_user (struct tl_ds_user *DS, struct paramed_type *T);
-int print_ds_constructor_user_full (struct tl_ds_user_full *DS, struct paramed_type *T);
-int print_ds_constructor_user_profile_photo_empty (struct tl_ds_user_profile_photo *DS, struct paramed_type *T);
-int print_ds_constructor_user_profile_photo (struct tl_ds_user_profile_photo *DS, struct paramed_type *T);
-int print_ds_constructor_user_status_empty (struct tl_ds_user_status *DS, struct paramed_type *T);
-int print_ds_constructor_user_status_online (struct tl_ds_user_status *DS, struct paramed_type *T);
-int print_ds_constructor_user_status_offline (struct tl_ds_user_status *DS, struct paramed_type *T);
-int print_ds_constructor_user_status_recently (struct tl_ds_user_status *DS, struct paramed_type *T);
-int print_ds_constructor_user_status_last_week (struct tl_ds_user_status *DS, struct paramed_type *T);
-int print_ds_constructor_user_status_last_month (struct tl_ds_user_status *DS, struct paramed_type *T);
-int print_ds_constructor_vector (struct tl_ds_vector *DS, struct paramed_type *T);
-int print_ds_constructor_video_empty (struct tl_ds_video *DS, struct paramed_type *T);
-int print_ds_constructor_video (struct tl_ds_video *DS, struct paramed_type *T);
-int print_ds_constructor_video_l27 (struct tl_ds_video *DS, struct paramed_type *T);
-int print_ds_constructor_wall_paper (struct tl_ds_wall_paper *DS, struct paramed_type *T);
-int print_ds_constructor_wall_paper_solid (struct tl_ds_wall_paper *DS, struct paramed_type *T);
-int print_ds_constructor_web_page_empty (struct tl_ds_web_page *DS, struct paramed_type *T);
-int print_ds_constructor_web_page_pending (struct tl_ds_web_page *DS, struct paramed_type *T);
-int print_ds_constructor_web_page (struct tl_ds_web_page *DS, struct paramed_type *T);
-int print_ds_constructor_account_authorizations (struct tl_ds_account_authorizations *DS, struct paramed_type *T);
-int print_ds_constructor_account_no_password (struct tl_ds_account_password *DS, struct paramed_type *T);
-int print_ds_constructor_account_password (struct tl_ds_account_password *DS, struct paramed_type *T);
-int print_ds_constructor_account_password_input_settings (struct tl_ds_account_password_input_settings *DS, struct paramed_type *T);
-int print_ds_constructor_account_password_settings (struct tl_ds_account_password_settings *DS, struct paramed_type *T);
-int print_ds_constructor_account_privacy_rules (struct tl_ds_account_privacy_rules *DS, struct paramed_type *T);
-int print_ds_constructor_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *DS, struct paramed_type *T);
-int print_ds_constructor_auth_authorization (struct tl_ds_auth_authorization *DS, struct paramed_type *T);
-int print_ds_constructor_auth_checked_phone (struct tl_ds_auth_checked_phone *DS, struct paramed_type *T);
-int print_ds_constructor_auth_exported_authorization (struct tl_ds_auth_exported_authorization *DS, struct paramed_type *T);
-int print_ds_constructor_auth_password_recovery (struct tl_ds_auth_password_recovery *DS, struct paramed_type *T);
-int print_ds_constructor_auth_sent_code (struct tl_ds_auth_sent_code *DS, struct paramed_type *T);
-int print_ds_constructor_auth_sent_app_code (struct tl_ds_auth_sent_code *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_encr_key (struct tl_ds_binlog_encr_key *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_start (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_dc_option (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_dc_option_new (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_auth_key (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_default_dc (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_dc_signed (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_our_id (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_set_dh_params (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_set_pts (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_set_qts (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_set_date (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_set_seq (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_encr_chat_delete (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_encr_chat_new (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_encr_chat_exchange_new (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_user_delete (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_user_new (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_chat_new (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_chat_add_participant (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_chat_del_participant (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_set_msg_id (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_message_delete (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_message_new (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_message_encr_new (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_msg_update (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_binlog_reset_authorization (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_constructor_contacts_blocked (struct tl_ds_contacts_blocked *DS, struct paramed_type *T);
-int print_ds_constructor_contacts_blocked_slice (struct tl_ds_contacts_blocked *DS, struct paramed_type *T);
-int print_ds_constructor_contacts_contacts_not_modified (struct tl_ds_contacts_contacts *DS, struct paramed_type *T);
-int print_ds_constructor_contacts_contacts (struct tl_ds_contacts_contacts *DS, struct paramed_type *T);
-int print_ds_constructor_contacts_found (struct tl_ds_contacts_found *DS, struct paramed_type *T);
-int print_ds_constructor_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *DS, struct paramed_type *T);
-int print_ds_constructor_contacts_link (struct tl_ds_contacts_link *DS, struct paramed_type *T);
-int print_ds_constructor_contacts_suggested (struct tl_ds_contacts_suggested *DS, struct paramed_type *T);
-int print_ds_constructor_geochats_located (struct tl_ds_geochats_located *DS, struct paramed_type *T);
-int print_ds_constructor_geochats_messages (struct tl_ds_geochats_messages *DS, struct paramed_type *T);
-int print_ds_constructor_geochats_messages_slice (struct tl_ds_geochats_messages *DS, struct paramed_type *T);
-int print_ds_constructor_geochats_stated_message (struct tl_ds_geochats_stated_message *DS, struct paramed_type *T);
-int print_ds_constructor_help_app_update (struct tl_ds_help_app_update *DS, struct paramed_type *T);
-int print_ds_constructor_help_no_app_update (struct tl_ds_help_app_update *DS, struct paramed_type *T);
-int print_ds_constructor_help_invite_text (struct tl_ds_help_invite_text *DS, struct paramed_type *T);
-int print_ds_constructor_help_support (struct tl_ds_help_support *DS, struct paramed_type *T);
-int print_ds_constructor_messages_affected_history (struct tl_ds_messages_affected_history *DS, struct paramed_type *T);
-int print_ds_constructor_messages_affected_messages (struct tl_ds_messages_affected_messages *DS, struct paramed_type *T);
-int print_ds_constructor_messages_all_stickers_not_modified (struct tl_ds_messages_all_stickers *DS, struct paramed_type *T);
-int print_ds_constructor_messages_all_stickers (struct tl_ds_messages_all_stickers *DS, struct paramed_type *T);
-int print_ds_constructor_messages_chat_full (struct tl_ds_messages_chat_full *DS, struct paramed_type *T);
-int print_ds_constructor_messages_chats (struct tl_ds_messages_chats *DS, struct paramed_type *T);
-int print_ds_constructor_messages_dh_config_not_modified (struct tl_ds_messages_dh_config *DS, struct paramed_type *T);
-int print_ds_constructor_messages_dh_config (struct tl_ds_messages_dh_config *DS, struct paramed_type *T);
-int print_ds_constructor_messages_dialogs (struct tl_ds_messages_dialogs *DS, struct paramed_type *T);
-int print_ds_constructor_messages_dialogs_slice (struct tl_ds_messages_dialogs *DS, struct paramed_type *T);
-int print_ds_constructor_messages_message_empty (struct tl_ds_messages_message *DS, struct paramed_type *T);
-int print_ds_constructor_messages_messages (struct tl_ds_messages_messages *DS, struct paramed_type *T);
-int print_ds_constructor_messages_messages_slice (struct tl_ds_messages_messages *DS, struct paramed_type *T);
-int print_ds_constructor_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *DS, struct paramed_type *T);
-int print_ds_constructor_messages_sent_encrypted_file (struct tl_ds_messages_sent_encrypted_message *DS, struct paramed_type *T);
-int print_ds_constructor_messages_sent_message (struct tl_ds_messages_sent_message *DS, struct paramed_type *T);
-int print_ds_constructor_messages_sent_message_link (struct tl_ds_messages_sent_message *DS, struct paramed_type *T);
-int print_ds_constructor_messages_sticker_set (struct tl_ds_messages_sticker_set *DS, struct paramed_type *T);
-int print_ds_constructor_messages_stickers_not_modified (struct tl_ds_messages_stickers *DS, struct paramed_type *T);
-int print_ds_constructor_messages_stickers (struct tl_ds_messages_stickers *DS, struct paramed_type *T);
-int print_ds_constructor_photos_photo (struct tl_ds_photos_photo *DS, struct paramed_type *T);
-int print_ds_constructor_photos_photos (struct tl_ds_photos_photos *DS, struct paramed_type *T);
-int print_ds_constructor_photos_photos_slice (struct tl_ds_photos_photos *DS, struct paramed_type *T);
-int print_ds_constructor_storage_file_unknown (struct tl_ds_storage_file_type *DS, struct paramed_type *T);
-int print_ds_constructor_storage_file_jpeg (struct tl_ds_storage_file_type *DS, struct paramed_type *T);
-int print_ds_constructor_storage_file_gif (struct tl_ds_storage_file_type *DS, struct paramed_type *T);
-int print_ds_constructor_storage_file_png (struct tl_ds_storage_file_type *DS, struct paramed_type *T);
-int print_ds_constructor_storage_file_pdf (struct tl_ds_storage_file_type *DS, struct paramed_type *T);
-int print_ds_constructor_storage_file_mp3 (struct tl_ds_storage_file_type *DS, struct paramed_type *T);
-int print_ds_constructor_storage_file_mov (struct tl_ds_storage_file_type *DS, struct paramed_type *T);
-int print_ds_constructor_storage_file_partial (struct tl_ds_storage_file_type *DS, struct paramed_type *T);
-int print_ds_constructor_storage_file_mp4 (struct tl_ds_storage_file_type *DS, struct paramed_type *T);
-int print_ds_constructor_storage_file_webp (struct tl_ds_storage_file_type *DS, struct paramed_type *T);
-int print_ds_constructor_updates_difference_empty (struct tl_ds_updates_difference *DS, struct paramed_type *T);
-int print_ds_constructor_updates_difference (struct tl_ds_updates_difference *DS, struct paramed_type *T);
-int print_ds_constructor_updates_difference_slice (struct tl_ds_updates_difference *DS, struct paramed_type *T);
-int print_ds_constructor_updates_state (struct tl_ds_updates_state *DS, struct paramed_type *T);
-int print_ds_constructor_upload_file (struct tl_ds_upload_file *DS, struct paramed_type *T);
-int print_ds_type_account_days_t_t_l (struct tl_ds_account_days_t_t_l *DS, struct paramed_type *T);
-int print_ds_type_bare_account_days_t_t_l (struct tl_ds_account_days_t_t_l *DS, struct paramed_type *T);
-int print_ds_type_audio (struct tl_ds_audio *DS, struct paramed_type *T);
-int print_ds_type_bare_audio (struct tl_ds_audio *DS, struct paramed_type *T);
-int print_ds_type_authorization (struct tl_ds_authorization *DS, struct paramed_type *T);
-int print_ds_type_bare_authorization (struct tl_ds_authorization *DS, struct paramed_type *T);
-int print_ds_type_bool (struct tl_ds_bool *DS, struct paramed_type *T);
-int print_ds_type_bare_bool (struct tl_ds_bool *DS, struct paramed_type *T);
-int print_ds_type_bot_command (struct tl_ds_bot_command *DS, struct paramed_type *T);
-int print_ds_type_bare_bot_command (struct tl_ds_bot_command *DS, struct paramed_type *T);
-int print_ds_type_bot_info (struct tl_ds_bot_info *DS, struct paramed_type *T);
-int print_ds_type_bare_bot_info (struct tl_ds_bot_info *DS, struct paramed_type *T);
-int print_ds_type_bytes (struct tl_ds_string *DS, struct paramed_type *T);
-int print_ds_type_bare_bytes (struct tl_ds_string *DS, struct paramed_type *T);
-int print_ds_type_chat (struct tl_ds_chat *DS, struct paramed_type *T);
-int print_ds_type_bare_chat (struct tl_ds_chat *DS, struct paramed_type *T);
-int print_ds_type_chat_full (struct tl_ds_chat_full *DS, struct paramed_type *T);
-int print_ds_type_bare_chat_full (struct tl_ds_chat_full *DS, struct paramed_type *T);
-int print_ds_type_chat_invite (struct tl_ds_chat_invite *DS, struct paramed_type *T);
-int print_ds_type_bare_chat_invite (struct tl_ds_chat_invite *DS, struct paramed_type *T);
-int print_ds_type_chat_located (struct tl_ds_chat_located *DS, struct paramed_type *T);
-int print_ds_type_bare_chat_located (struct tl_ds_chat_located *DS, struct paramed_type *T);
-int print_ds_type_chat_participant (struct tl_ds_chat_participant *DS, struct paramed_type *T);
-int print_ds_type_bare_chat_participant (struct tl_ds_chat_participant *DS, struct paramed_type *T);
-int print_ds_type_chat_participants (struct tl_ds_chat_participants *DS, struct paramed_type *T);
-int print_ds_type_bare_chat_participants (struct tl_ds_chat_participants *DS, struct paramed_type *T);
-int print_ds_type_chat_photo (struct tl_ds_chat_photo *DS, struct paramed_type *T);
-int print_ds_type_bare_chat_photo (struct tl_ds_chat_photo *DS, struct paramed_type *T);
-int print_ds_type_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *DS, struct paramed_type *T);
-int print_ds_type_bare_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *DS, struct paramed_type *T);
-int print_ds_type_config (struct tl_ds_config *DS, struct paramed_type *T);
-int print_ds_type_bare_config (struct tl_ds_config *DS, struct paramed_type *T);
-int print_ds_type_contact (struct tl_ds_contact *DS, struct paramed_type *T);
-int print_ds_type_bare_contact (struct tl_ds_contact *DS, struct paramed_type *T);
-int print_ds_type_contact_blocked (struct tl_ds_contact_blocked *DS, struct paramed_type *T);
-int print_ds_type_bare_contact_blocked (struct tl_ds_contact_blocked *DS, struct paramed_type *T);
-int print_ds_type_contact_found (struct tl_ds_contact_found *DS, struct paramed_type *T);
-int print_ds_type_bare_contact_found (struct tl_ds_contact_found *DS, struct paramed_type *T);
-int print_ds_type_contact_link (struct tl_ds_contact_link *DS, struct paramed_type *T);
-int print_ds_type_bare_contact_link (struct tl_ds_contact_link *DS, struct paramed_type *T);
-int print_ds_type_contact_status (struct tl_ds_contact_status *DS, struct paramed_type *T);
-int print_ds_type_bare_contact_status (struct tl_ds_contact_status *DS, struct paramed_type *T);
-int print_ds_type_contact_suggested (struct tl_ds_contact_suggested *DS, struct paramed_type *T);
-int print_ds_type_bare_contact_suggested (struct tl_ds_contact_suggested *DS, struct paramed_type *T);
-int print_ds_type_dc_option (struct tl_ds_dc_option *DS, struct paramed_type *T);
-int print_ds_type_bare_dc_option (struct tl_ds_dc_option *DS, struct paramed_type *T);
-int print_ds_type_decrypted_message (struct tl_ds_decrypted_message *DS, struct paramed_type *T);
-int print_ds_type_bare_decrypted_message (struct tl_ds_decrypted_message *DS, struct paramed_type *T);
-int print_ds_type_decrypted_message_action (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_type_bare_decrypted_message_action (struct tl_ds_decrypted_message_action *DS, struct paramed_type *T);
-int print_ds_type_decrypted_message_layer (struct tl_ds_decrypted_message_layer *DS, struct paramed_type *T);
-int print_ds_type_bare_decrypted_message_layer (struct tl_ds_decrypted_message_layer *DS, struct paramed_type *T);
-int print_ds_type_decrypted_message_media (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T);
-int print_ds_type_bare_decrypted_message_media (struct tl_ds_decrypted_message_media *DS, struct paramed_type *T);
-int print_ds_type_dialog (struct tl_ds_dialog *DS, struct paramed_type *T);
-int print_ds_type_bare_dialog (struct tl_ds_dialog *DS, struct paramed_type *T);
-int print_ds_type_disabled_feature (struct tl_ds_disabled_feature *DS, struct paramed_type *T);
-int print_ds_type_bare_disabled_feature (struct tl_ds_disabled_feature *DS, struct paramed_type *T);
-int print_ds_type_document (struct tl_ds_document *DS, struct paramed_type *T);
-int print_ds_type_bare_document (struct tl_ds_document *DS, struct paramed_type *T);
-int print_ds_type_document_attribute (struct tl_ds_document_attribute *DS, struct paramed_type *T);
-int print_ds_type_bare_document_attribute (struct tl_ds_document_attribute *DS, struct paramed_type *T);
-int print_ds_type_double (double *DS, struct paramed_type *T);
-int print_ds_type_bare_double (double *DS, struct paramed_type *T);
-int print_ds_type_encrypted_chat (struct tl_ds_encrypted_chat *DS, struct paramed_type *T);
-int print_ds_type_bare_encrypted_chat (struct tl_ds_encrypted_chat *DS, struct paramed_type *T);
-int print_ds_type_encrypted_file (struct tl_ds_encrypted_file *DS, struct paramed_type *T);
-int print_ds_type_bare_encrypted_file (struct tl_ds_encrypted_file *DS, struct paramed_type *T);
-int print_ds_type_encrypted_message (struct tl_ds_encrypted_message *DS, struct paramed_type *T);
-int print_ds_type_bare_encrypted_message (struct tl_ds_encrypted_message *DS, struct paramed_type *T);
-int print_ds_type_error (struct tl_ds_error *DS, struct paramed_type *T);
-int print_ds_type_bare_error (struct tl_ds_error *DS, struct paramed_type *T);
-int print_ds_type_exported_chat_invite (struct tl_ds_exported_chat_invite *DS, struct paramed_type *T);
-int print_ds_type_bare_exported_chat_invite (struct tl_ds_exported_chat_invite *DS, struct paramed_type *T);
-int print_ds_type_file_location (struct tl_ds_file_location *DS, struct paramed_type *T);
-int print_ds_type_bare_file_location (struct tl_ds_file_location *DS, struct paramed_type *T);
-int print_ds_type_geo_chat_message (struct tl_ds_geo_chat_message *DS, struct paramed_type *T);
-int print_ds_type_bare_geo_chat_message (struct tl_ds_geo_chat_message *DS, struct paramed_type *T);
-int print_ds_type_geo_point (struct tl_ds_geo_point *DS, struct paramed_type *T);
-int print_ds_type_bare_geo_point (struct tl_ds_geo_point *DS, struct paramed_type *T);
-int print_ds_type_imported_contact (struct tl_ds_imported_contact *DS, struct paramed_type *T);
-int print_ds_type_bare_imported_contact (struct tl_ds_imported_contact *DS, struct paramed_type *T);
-int print_ds_type_input_app_event (struct tl_ds_input_app_event *DS, struct paramed_type *T);
-int print_ds_type_bare_input_app_event (struct tl_ds_input_app_event *DS, struct paramed_type *T);
-int print_ds_type_input_audio (struct tl_ds_input_audio *DS, struct paramed_type *T);
-int print_ds_type_bare_input_audio (struct tl_ds_input_audio *DS, struct paramed_type *T);
-int print_ds_type_input_chat_photo (struct tl_ds_input_chat_photo *DS, struct paramed_type *T);
-int print_ds_type_bare_input_chat_photo (struct tl_ds_input_chat_photo *DS, struct paramed_type *T);
-int print_ds_type_input_contact (struct tl_ds_input_contact *DS, struct paramed_type *T);
-int print_ds_type_bare_input_contact (struct tl_ds_input_contact *DS, struct paramed_type *T);
-int print_ds_type_input_document (struct tl_ds_input_document *DS, struct paramed_type *T);
-int print_ds_type_bare_input_document (struct tl_ds_input_document *DS, struct paramed_type *T);
-int print_ds_type_input_encrypted_chat (struct tl_ds_input_encrypted_chat *DS, struct paramed_type *T);
-int print_ds_type_bare_input_encrypted_chat (struct tl_ds_input_encrypted_chat *DS, struct paramed_type *T);
-int print_ds_type_input_encrypted_file (struct tl_ds_input_encrypted_file *DS, struct paramed_type *T);
-int print_ds_type_bare_input_encrypted_file (struct tl_ds_input_encrypted_file *DS, struct paramed_type *T);
-int print_ds_type_input_file (struct tl_ds_input_file *DS, struct paramed_type *T);
-int print_ds_type_bare_input_file (struct tl_ds_input_file *DS, struct paramed_type *T);
-int print_ds_type_input_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T);
-int print_ds_type_bare_input_file_location (struct tl_ds_input_file_location *DS, struct paramed_type *T);
-int print_ds_type_input_geo_chat (struct tl_ds_input_geo_chat *DS, struct paramed_type *T);
-int print_ds_type_bare_input_geo_chat (struct tl_ds_input_geo_chat *DS, struct paramed_type *T);
-int print_ds_type_input_geo_point (struct tl_ds_input_geo_point *DS, struct paramed_type *T);
-int print_ds_type_bare_input_geo_point (struct tl_ds_input_geo_point *DS, struct paramed_type *T);
-int print_ds_type_input_media (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_type_bare_input_media (struct tl_ds_input_media *DS, struct paramed_type *T);
-int print_ds_type_input_notify_peer (struct tl_ds_input_notify_peer *DS, struct paramed_type *T);
-int print_ds_type_bare_input_notify_peer (struct tl_ds_input_notify_peer *DS, struct paramed_type *T);
-int print_ds_type_input_peer (struct tl_ds_input_peer *DS, struct paramed_type *T);
-int print_ds_type_bare_input_peer (struct tl_ds_input_peer *DS, struct paramed_type *T);
-int print_ds_type_input_peer_notify_events (struct tl_ds_input_peer_notify_events *DS, struct paramed_type *T);
-int print_ds_type_bare_input_peer_notify_events (struct tl_ds_input_peer_notify_events *DS, struct paramed_type *T);
-int print_ds_type_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *DS, struct paramed_type *T);
-int print_ds_type_bare_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *DS, struct paramed_type *T);
-int print_ds_type_input_photo (struct tl_ds_input_photo *DS, struct paramed_type *T);
-int print_ds_type_bare_input_photo (struct tl_ds_input_photo *DS, struct paramed_type *T);
-int print_ds_type_input_photo_crop (struct tl_ds_input_photo_crop *DS, struct paramed_type *T);
-int print_ds_type_bare_input_photo_crop (struct tl_ds_input_photo_crop *DS, struct paramed_type *T);
-int print_ds_type_input_privacy_key (struct tl_ds_input_privacy_key *DS, struct paramed_type *T);
-int print_ds_type_bare_input_privacy_key (struct tl_ds_input_privacy_key *DS, struct paramed_type *T);
-int print_ds_type_input_privacy_rule (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T);
-int print_ds_type_bare_input_privacy_rule (struct tl_ds_input_privacy_rule *DS, struct paramed_type *T);
-int print_ds_type_input_sticker_set (struct tl_ds_input_sticker_set *DS, struct paramed_type *T);
-int print_ds_type_bare_input_sticker_set (struct tl_ds_input_sticker_set *DS, struct paramed_type *T);
-int print_ds_type_input_user (struct tl_ds_input_user *DS, struct paramed_type *T);
-int print_ds_type_bare_input_user (struct tl_ds_input_user *DS, struct paramed_type *T);
-int print_ds_type_input_video (struct tl_ds_input_video *DS, struct paramed_type *T);
-int print_ds_type_bare_input_video (struct tl_ds_input_video *DS, struct paramed_type *T);
-int print_ds_type_int (int *DS, struct paramed_type *T);
-int print_ds_type_bare_int (int *DS, struct paramed_type *T);
-int print_ds_type_int128 (struct tl_ds_int128 *DS, struct paramed_type *T);
-int print_ds_type_bare_int128 (struct tl_ds_int128 *DS, struct paramed_type *T);
-int print_ds_type_int256 (struct tl_ds_int256 *DS, struct paramed_type *T);
-int print_ds_type_bare_int256 (struct tl_ds_int256 *DS, struct paramed_type *T);
-int print_ds_type_keyboard_button (struct tl_ds_keyboard_button *DS, struct paramed_type *T);
-int print_ds_type_bare_keyboard_button (struct tl_ds_keyboard_button *DS, struct paramed_type *T);
-int print_ds_type_keyboard_button_row (struct tl_ds_keyboard_button_row *DS, struct paramed_type *T);
-int print_ds_type_bare_keyboard_button_row (struct tl_ds_keyboard_button_row *DS, struct paramed_type *T);
-int print_ds_type_long (long long *DS, struct paramed_type *T);
-int print_ds_type_bare_long (long long *DS, struct paramed_type *T);
-int print_ds_type_message (struct tl_ds_message *DS, struct paramed_type *T);
-int print_ds_type_bare_message (struct tl_ds_message *DS, struct paramed_type *T);
-int print_ds_type_message_action (struct tl_ds_message_action *DS, struct paramed_type *T);
-int print_ds_type_bare_message_action (struct tl_ds_message_action *DS, struct paramed_type *T);
-int print_ds_type_message_media (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_type_bare_message_media (struct tl_ds_message_media *DS, struct paramed_type *T);
-int print_ds_type_messages_filter (struct tl_ds_messages_filter *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_filter (struct tl_ds_messages_filter *DS, struct paramed_type *T);
-int print_ds_type_nearest_dc (struct tl_ds_nearest_dc *DS, struct paramed_type *T);
-int print_ds_type_bare_nearest_dc (struct tl_ds_nearest_dc *DS, struct paramed_type *T);
-int print_ds_type_notify_peer (struct tl_ds_notify_peer *DS, struct paramed_type *T);
-int print_ds_type_bare_notify_peer (struct tl_ds_notify_peer *DS, struct paramed_type *T);
-int print_ds_type_null (struct tl_ds_null *DS, struct paramed_type *T);
-int print_ds_type_bare_null (struct tl_ds_null *DS, struct paramed_type *T);
-int print_ds_type_p_q_inner_data (struct tl_ds_p_q_inner_data *DS, struct paramed_type *T);
-int print_ds_type_bare_p_q_inner_data (struct tl_ds_p_q_inner_data *DS, struct paramed_type *T);
-int print_ds_type_peer (struct tl_ds_peer *DS, struct paramed_type *T);
-int print_ds_type_bare_peer (struct tl_ds_peer *DS, struct paramed_type *T);
-int print_ds_type_peer_notify_events (struct tl_ds_peer_notify_events *DS, struct paramed_type *T);
-int print_ds_type_bare_peer_notify_events (struct tl_ds_peer_notify_events *DS, struct paramed_type *T);
-int print_ds_type_peer_notify_settings (struct tl_ds_peer_notify_settings *DS, struct paramed_type *T);
-int print_ds_type_bare_peer_notify_settings (struct tl_ds_peer_notify_settings *DS, struct paramed_type *T);
-int print_ds_type_photo (struct tl_ds_photo *DS, struct paramed_type *T);
-int print_ds_type_bare_photo (struct tl_ds_photo *DS, struct paramed_type *T);
-int print_ds_type_photo_size (struct tl_ds_photo_size *DS, struct paramed_type *T);
-int print_ds_type_bare_photo_size (struct tl_ds_photo_size *DS, struct paramed_type *T);
-int print_ds_type_privacy_key (struct tl_ds_privacy_key *DS, struct paramed_type *T);
-int print_ds_type_bare_privacy_key (struct tl_ds_privacy_key *DS, struct paramed_type *T);
-int print_ds_type_privacy_rule (struct tl_ds_privacy_rule *DS, struct paramed_type *T);
-int print_ds_type_bare_privacy_rule (struct tl_ds_privacy_rule *DS, struct paramed_type *T);
-int print_ds_type_received_notify_message (struct tl_ds_received_notify_message *DS, struct paramed_type *T);
-int print_ds_type_bare_received_notify_message (struct tl_ds_received_notify_message *DS, struct paramed_type *T);
-int print_ds_type_reply_markup (struct tl_ds_reply_markup *DS, struct paramed_type *T);
-int print_ds_type_bare_reply_markup (struct tl_ds_reply_markup *DS, struct paramed_type *T);
-int print_ds_type_res_p_q (struct tl_ds_res_p_q *DS, struct paramed_type *T);
-int print_ds_type_bare_res_p_q (struct tl_ds_res_p_q *DS, struct paramed_type *T);
-int print_ds_type_send_message_action (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_type_bare_send_message_action (struct tl_ds_send_message_action *DS, struct paramed_type *T);
-int print_ds_type_server_d_h_params (struct tl_ds_server_d_h_params *DS, struct paramed_type *T);
-int print_ds_type_bare_server_d_h_params (struct tl_ds_server_d_h_params *DS, struct paramed_type *T);
-int print_ds_type_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *DS, struct paramed_type *T);
-int print_ds_type_bare_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *DS, struct paramed_type *T);
-int print_ds_type_set_client_d_h_params_answer (struct tl_ds_set_client_d_h_params_answer *DS, struct paramed_type *T);
-int print_ds_type_bare_set_client_d_h_params_answer (struct tl_ds_set_client_d_h_params_answer *DS, struct paramed_type *T);
-int print_ds_type_sticker_pack (struct tl_ds_sticker_pack *DS, struct paramed_type *T);
-int print_ds_type_bare_sticker_pack (struct tl_ds_sticker_pack *DS, struct paramed_type *T);
-int print_ds_type_sticker_set (struct tl_ds_sticker_set *DS, struct paramed_type *T);
-int print_ds_type_bare_sticker_set (struct tl_ds_sticker_set *DS, struct paramed_type *T);
-int print_ds_type_string (struct tl_ds_string *DS, struct paramed_type *T);
-int print_ds_type_bare_string (struct tl_ds_string *DS, struct paramed_type *T);
-int print_ds_type_update (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_type_bare_update (struct tl_ds_update *DS, struct paramed_type *T);
-int print_ds_type_updates (struct tl_ds_updates *DS, struct paramed_type *T);
-int print_ds_type_bare_updates (struct tl_ds_updates *DS, struct paramed_type *T);
-int print_ds_type_user (struct tl_ds_user *DS, struct paramed_type *T);
-int print_ds_type_bare_user (struct tl_ds_user *DS, struct paramed_type *T);
-int print_ds_type_user_full (struct tl_ds_user_full *DS, struct paramed_type *T);
-int print_ds_type_bare_user_full (struct tl_ds_user_full *DS, struct paramed_type *T);
-int print_ds_type_user_profile_photo (struct tl_ds_user_profile_photo *DS, struct paramed_type *T);
-int print_ds_type_bare_user_profile_photo (struct tl_ds_user_profile_photo *DS, struct paramed_type *T);
-int print_ds_type_user_status (struct tl_ds_user_status *DS, struct paramed_type *T);
-int print_ds_type_bare_user_status (struct tl_ds_user_status *DS, struct paramed_type *T);
-int print_ds_type_vector (struct tl_ds_vector *DS, struct paramed_type *T);
-int print_ds_type_bare_vector (struct tl_ds_vector *DS, struct paramed_type *T);
-int print_ds_type_video (struct tl_ds_video *DS, struct paramed_type *T);
-int print_ds_type_bare_video (struct tl_ds_video *DS, struct paramed_type *T);
-int print_ds_type_wall_paper (struct tl_ds_wall_paper *DS, struct paramed_type *T);
-int print_ds_type_bare_wall_paper (struct tl_ds_wall_paper *DS, struct paramed_type *T);
-int print_ds_type_web_page (struct tl_ds_web_page *DS, struct paramed_type *T);
-int print_ds_type_bare_web_page (struct tl_ds_web_page *DS, struct paramed_type *T);
-int print_ds_type_account_authorizations (struct tl_ds_account_authorizations *DS, struct paramed_type *T);
-int print_ds_type_bare_account_authorizations (struct tl_ds_account_authorizations *DS, struct paramed_type *T);
-int print_ds_type_account_password (struct tl_ds_account_password *DS, struct paramed_type *T);
-int print_ds_type_bare_account_password (struct tl_ds_account_password *DS, struct paramed_type *T);
-int print_ds_type_account_password_input_settings (struct tl_ds_account_password_input_settings *DS, struct paramed_type *T);
-int print_ds_type_bare_account_password_input_settings (struct tl_ds_account_password_input_settings *DS, struct paramed_type *T);
-int print_ds_type_account_password_settings (struct tl_ds_account_password_settings *DS, struct paramed_type *T);
-int print_ds_type_bare_account_password_settings (struct tl_ds_account_password_settings *DS, struct paramed_type *T);
-int print_ds_type_account_privacy_rules (struct tl_ds_account_privacy_rules *DS, struct paramed_type *T);
-int print_ds_type_bare_account_privacy_rules (struct tl_ds_account_privacy_rules *DS, struct paramed_type *T);
-int print_ds_type_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *DS, struct paramed_type *T);
-int print_ds_type_bare_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *DS, struct paramed_type *T);
-int print_ds_type_auth_authorization (struct tl_ds_auth_authorization *DS, struct paramed_type *T);
-int print_ds_type_bare_auth_authorization (struct tl_ds_auth_authorization *DS, struct paramed_type *T);
-int print_ds_type_auth_checked_phone (struct tl_ds_auth_checked_phone *DS, struct paramed_type *T);
-int print_ds_type_bare_auth_checked_phone (struct tl_ds_auth_checked_phone *DS, struct paramed_type *T);
-int print_ds_type_auth_exported_authorization (struct tl_ds_auth_exported_authorization *DS, struct paramed_type *T);
-int print_ds_type_bare_auth_exported_authorization (struct tl_ds_auth_exported_authorization *DS, struct paramed_type *T);
-int print_ds_type_auth_password_recovery (struct tl_ds_auth_password_recovery *DS, struct paramed_type *T);
-int print_ds_type_bare_auth_password_recovery (struct tl_ds_auth_password_recovery *DS, struct paramed_type *T);
-int print_ds_type_auth_sent_code (struct tl_ds_auth_sent_code *DS, struct paramed_type *T);
-int print_ds_type_bare_auth_sent_code (struct tl_ds_auth_sent_code *DS, struct paramed_type *T);
-int print_ds_type_binlog_encr_key (struct tl_ds_binlog_encr_key *DS, struct paramed_type *T);
-int print_ds_type_bare_binlog_encr_key (struct tl_ds_binlog_encr_key *DS, struct paramed_type *T);
-int print_ds_type_binlog_update (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_type_bare_binlog_update (struct tl_ds_binlog_update *DS, struct paramed_type *T);
-int print_ds_type_contacts_blocked (struct tl_ds_contacts_blocked *DS, struct paramed_type *T);
-int print_ds_type_bare_contacts_blocked (struct tl_ds_contacts_blocked *DS, struct paramed_type *T);
-int print_ds_type_contacts_contacts (struct tl_ds_contacts_contacts *DS, struct paramed_type *T);
-int print_ds_type_bare_contacts_contacts (struct tl_ds_contacts_contacts *DS, struct paramed_type *T);
-int print_ds_type_contacts_found (struct tl_ds_contacts_found *DS, struct paramed_type *T);
-int print_ds_type_bare_contacts_found (struct tl_ds_contacts_found *DS, struct paramed_type *T);
-int print_ds_type_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *DS, struct paramed_type *T);
-int print_ds_type_bare_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *DS, struct paramed_type *T);
-int print_ds_type_contacts_link (struct tl_ds_contacts_link *DS, struct paramed_type *T);
-int print_ds_type_bare_contacts_link (struct tl_ds_contacts_link *DS, struct paramed_type *T);
-int print_ds_type_contacts_suggested (struct tl_ds_contacts_suggested *DS, struct paramed_type *T);
-int print_ds_type_bare_contacts_suggested (struct tl_ds_contacts_suggested *DS, struct paramed_type *T);
-int print_ds_type_geochats_located (struct tl_ds_geochats_located *DS, struct paramed_type *T);
-int print_ds_type_bare_geochats_located (struct tl_ds_geochats_located *DS, struct paramed_type *T);
-int print_ds_type_geochats_messages (struct tl_ds_geochats_messages *DS, struct paramed_type *T);
-int print_ds_type_bare_geochats_messages (struct tl_ds_geochats_messages *DS, struct paramed_type *T);
-int print_ds_type_geochats_stated_message (struct tl_ds_geochats_stated_message *DS, struct paramed_type *T);
-int print_ds_type_bare_geochats_stated_message (struct tl_ds_geochats_stated_message *DS, struct paramed_type *T);
-int print_ds_type_help_app_update (struct tl_ds_help_app_update *DS, struct paramed_type *T);
-int print_ds_type_bare_help_app_update (struct tl_ds_help_app_update *DS, struct paramed_type *T);
-int print_ds_type_help_invite_text (struct tl_ds_help_invite_text *DS, struct paramed_type *T);
-int print_ds_type_bare_help_invite_text (struct tl_ds_help_invite_text *DS, struct paramed_type *T);
-int print_ds_type_help_support (struct tl_ds_help_support *DS, struct paramed_type *T);
-int print_ds_type_bare_help_support (struct tl_ds_help_support *DS, struct paramed_type *T);
-int print_ds_type_messages_affected_history (struct tl_ds_messages_affected_history *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_affected_history (struct tl_ds_messages_affected_history *DS, struct paramed_type *T);
-int print_ds_type_messages_affected_messages (struct tl_ds_messages_affected_messages *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_affected_messages (struct tl_ds_messages_affected_messages *DS, struct paramed_type *T);
-int print_ds_type_messages_all_stickers (struct tl_ds_messages_all_stickers *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_all_stickers (struct tl_ds_messages_all_stickers *DS, struct paramed_type *T);
-int print_ds_type_messages_chat_full (struct tl_ds_messages_chat_full *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_chat_full (struct tl_ds_messages_chat_full *DS, struct paramed_type *T);
-int print_ds_type_messages_chats (struct tl_ds_messages_chats *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_chats (struct tl_ds_messages_chats *DS, struct paramed_type *T);
-int print_ds_type_messages_dh_config (struct tl_ds_messages_dh_config *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_dh_config (struct tl_ds_messages_dh_config *DS, struct paramed_type *T);
-int print_ds_type_messages_dialogs (struct tl_ds_messages_dialogs *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_dialogs (struct tl_ds_messages_dialogs *DS, struct paramed_type *T);
-int print_ds_type_messages_message (struct tl_ds_messages_message *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_message (struct tl_ds_messages_message *DS, struct paramed_type *T);
-int print_ds_type_messages_messages (struct tl_ds_messages_messages *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_messages (struct tl_ds_messages_messages *DS, struct paramed_type *T);
-int print_ds_type_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *DS, struct paramed_type *T);
-int print_ds_type_messages_sent_message (struct tl_ds_messages_sent_message *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_sent_message (struct tl_ds_messages_sent_message *DS, struct paramed_type *T);
-int print_ds_type_messages_sticker_set (struct tl_ds_messages_sticker_set *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_sticker_set (struct tl_ds_messages_sticker_set *DS, struct paramed_type *T);
-int print_ds_type_messages_stickers (struct tl_ds_messages_stickers *DS, struct paramed_type *T);
-int print_ds_type_bare_messages_stickers (struct tl_ds_messages_stickers *DS, struct paramed_type *T);
-int print_ds_type_photos_photo (struct tl_ds_photos_photo *DS, struct paramed_type *T);
-int print_ds_type_bare_photos_photo (struct tl_ds_photos_photo *DS, struct paramed_type *T);
-int print_ds_type_photos_photos (struct tl_ds_photos_photos *DS, struct paramed_type *T);
-int print_ds_type_bare_photos_photos (struct tl_ds_photos_photos *DS, struct paramed_type *T);
-int print_ds_type_storage_file_type (struct tl_ds_storage_file_type *DS, struct paramed_type *T);
-int print_ds_type_bare_storage_file_type (struct tl_ds_storage_file_type *DS, struct paramed_type *T);
-int print_ds_type_updates_difference (struct tl_ds_updates_difference *DS, struct paramed_type *T);
-int print_ds_type_bare_updates_difference (struct tl_ds_updates_difference *DS, struct paramed_type *T);
-int print_ds_type_updates_state (struct tl_ds_updates_state *DS, struct paramed_type *T);
-int print_ds_type_bare_updates_state (struct tl_ds_updates_state *DS, struct paramed_type *T);
-int print_ds_type_upload_file (struct tl_ds_upload_file *DS, struct paramed_type *T);
-int print_ds_type_bare_upload_file (struct tl_ds_upload_file *DS, struct paramed_type *T);
-int print_ds_type_any (void *DS, struct paramed_type *T);
diff --git a/protocols/Telegram/src/tgl/auto/auto-skip.c b/protocols/Telegram/src/tgl/auto/auto-skip.c
deleted file mode 100644
index fe91ddde00..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-skip.c
+++ /dev/null
@@ -1,11301 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#include "auto-skip.h"
-#include "..\mtproto-common.h"
-#else
-#include "auto.h"
-#include "auto/auto-skip.h"
-#include "auto-static-skip.c"
-#include "mtproto-common.h"
-#endif
-#include <assert.h>
-int skip_constructor_account_days_t_t_l (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb8d0afdf && T->type->name != 0x472f5020)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_audio_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field8) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bf2e6f6 && T->type->name != 0x840d1909)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field8) < 0) { return -1;}
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field9) < 0) { return -1;}
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field10) < 0) { return -1;}
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field11) < 0) { return -1;}
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field12) < 0) { return -1;}
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field13) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_bool_false (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return -1; }
- return 0;
-}
-int skip_constructor_bool_true (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return -1; }
- return 0;
-}
-int skip_constructor_bot_command (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_bot_command_old (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_bot_info_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return -1; }
- return 0;
-}
-int skip_constructor_bot_info (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x75e7ea6c, .id = "BotCommand", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_bytes (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0ee1379f && T->type->name != 0xf11ec860)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_chat_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_chat_photo (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_chat_forbidden (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_geo_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_geo_point (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_chat_photo (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field8) < 0) { return -1;}
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field9) < 0) { return -1;}
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field10) < 0) { return -1;}
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field11) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_chat_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02a614 && T->type->name != 0xd1fd59eb)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_chat_participants (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_peer_notify_settings (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f132d5, .id = "ExportedChatInvite", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_exported_chat_invite (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field6) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_chat_invite_already (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_chat (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_chat_invite (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_chat_located (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3631cf4c && T->type->name != 0xc9ce30b3)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_chat_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc8d7493e && T->type->name != 0x3728b6c1)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_chat_participants_forbidden (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_chat_participants (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_chat_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return -1; }
- return 0;
-}
-int skip_constructor_chat_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_file_location (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_file_location (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_client_d_h_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6643b654 && T->type->name != 0x99bc49ab)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_config (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e32b894 && T->type->name != 0xb1cd476b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field8) < 0) { return -1;}
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field9) < 0) { return -1;}
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field10) < 0) { return -1;}
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field11) < 0) { return -1;}
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field12) < 0) { return -1;}
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field13) < 0) { return -1;}
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field14) < 0) { return -1;}
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field15) < 0) { return -1;}
- struct paramed_type *field16 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field16) < 0) { return -1;}
- struct paramed_type *field17 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field17) < 0) { return -1;}
- struct paramed_type *field18 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae636f24, .id = "DisabledFeature", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field18) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf911c994 && T->type->name != 0x06ee366b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_contact_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x561bc879 && T->type->name != 0xa9e43786)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_contact_found (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xea879f95 && T->type->name != 0x1578606a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_contact_link_unknown (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- return 0;
-}
-int skip_constructor_contact_link_none (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- return 0;
-}
-int skip_constructor_contact_link_has_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- return 0;
-}
-int skip_constructor_contact_link_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- return 0;
-}
-int skip_constructor_contact_status (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd3680c61 && T->type->name != 0x2c97f39e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_user_status (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_contact_suggested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3de191a1 && T->type->name != 0xc21e6e5e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_dc_option_l28 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_dc_option (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_decrypted_message_media (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_decrypted_message_action (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_action_set_message_t_t_l (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_action_read_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_action_delete_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_action_screenshot_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_action_flush_history (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- return 0;
-}
-int skip_constructor_decrypted_message_action_resend (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_action_notify_layer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_action_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_send_message_action (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_action_request_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_action_accept_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_action_abort_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_action_commit_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_action_noop (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- return 0;
-}
-int skip_constructor_decrypted_message_layer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1be31789 && T->type->name != 0xe41ce876)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x535b7918, .id = "DecryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_decrypted_message (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- return 0;
-}
-int skip_constructor_decrypted_message_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field8) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_media_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_double (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_double (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field8) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field8) < 0) { return -1;}
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field9) < 0) { return -1;}
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field10) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_media_external_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo_size (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field8) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_media_video_l12 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field8) < 0) { return -1;}
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field9) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_decrypted_message_media_audio_l12 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_dialog (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc1dd804a && T->type->name != 0x3e227fb5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_peer (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_peer_notify_settings (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_disabled_feature (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae636f24 && T->type->name != 0x519c90db)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_document_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo_size (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field8) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_document_l19 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo_size (field8) < 0) { return -1;}
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field9) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_document_attribute_image_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_document_attribute_animated (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- return 0;
-}
-int skip_constructor_document_attribute_sticker_l28 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_document_attribute_sticker (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_sticker_set (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_document_attribute_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_document_attribute_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_document_attribute_filename (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_double (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2210c154 && T->type->name != 0xddef3eab)) { return -1; }
- if (in_remaining () < 8) { return -1;}
- fetch_double ();
- return 0;
-}
-int skip_constructor_encrypted_chat_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_encrypted_chat_waiting (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_encrypted_chat_requested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field6) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_encrypted_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field7) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_encrypted_chat_discarded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_encrypted_file_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return -1; }
- return 0;
-}
-int skip_constructor_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_encrypted_file (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_encrypted_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_error (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc4b9f9bb && T->type->name != 0x3b460644)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_chat_invite_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return -1; }
- return 0;
-}
-int skip_constructor_chat_invite_exported (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_file_location_unavailable (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_geo_chat_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_geo_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_message_media (field6) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_geo_chat_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_message_action (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_geo_point_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return -1; }
- return 0;
-}
-int skip_constructor_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_double (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_double (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_imported_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd0028438 && T->type->name != 0x2ffd7bc7)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_app_event (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x770656a8 && T->type->name != 0x88f9a957)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_double (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_audio_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return -1; }
- return 0;
-}
-int skip_constructor_input_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_chat_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- return 0;
-}
-int skip_constructor_input_chat_uploaded_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_file (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_photo_crop (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_chat_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_photo (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_photo_crop (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_phone_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf392b7f4 && T->type->name != 0x0c6d480b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_document_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return -1; }
- return 0;
-}
-int skip_constructor_input_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_encrypted_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf141b5e1 && T->type->name != 0x0ebe4a1e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_encrypted_file_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- return 0;
-}
-int skip_constructor_input_encrypted_file_uploaded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_encrypted_file_big_uploaded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_file_big (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_video_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_encrypted_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_audio_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_document_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_geo_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x74d456fa && T->type->name != 0x8b2ba905)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_geo_point_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return -1; }
- return 0;
-}
-int skip_constructor_input_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_double (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_double (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- return 0;
-}
-int skip_constructor_input_media_uploaded_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_file (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_photo (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_geo_point (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_uploaded_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_file (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_uploaded_thumb_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_file (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_file (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field6) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbb5f7a27, .id = "InputVideo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_video (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_uploaded_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_file (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae8e9c7b, .id = "InputAudio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_audio (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_uploaded_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_file (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_uploaded_thumb_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_file (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_file (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6a8963fc, .id = "InputDocument", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_document (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_media_venue (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_geo_point (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_notify_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_peer (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_notify_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- return 0;
-}
-int skip_constructor_input_notify_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- return 0;
-}
-int skip_constructor_input_notify_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- return 0;
-}
-int skip_constructor_input_notify_geo_chat_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_input_geo_chat (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_peer_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- return 0;
-}
-int skip_constructor_input_peer_self (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- return 0;
-}
-int skip_constructor_input_peer_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_peer_foreign (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_peer_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_peer_notify_events_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return -1; }
- return 0;
-}
-int skip_constructor_input_peer_notify_events_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return -1; }
- return 0;
-}
-int skip_constructor_input_peer_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x46a2ce98 && T->type->name != 0xb95d3167)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return -1; }
- return 0;
-}
-int skip_constructor_input_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_photo_crop_auto (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return -1; }
- return 0;
-}
-int skip_constructor_input_photo_crop (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_double (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_double (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_double (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_privacy_key_status_timestamp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4f96cb18 && T->type->name != 0xb06934e7)) { return -1; }
- return 0;
-}
-int skip_constructor_input_privacy_value_allow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- return 0;
-}
-int skip_constructor_input_privacy_value_allow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- return 0;
-}
-int skip_constructor_input_privacy_value_allow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_privacy_value_disallow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- return 0;
-}
-int skip_constructor_input_privacy_value_disallow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- return 0;
-}
-int skip_constructor_input_privacy_value_disallow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_sticker_set_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- return 0;
-}
-int skip_constructor_input_sticker_set_i_d (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_sticker_set_short_name (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_user_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- return 0;
-}
-int skip_constructor_input_user_self (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- return 0;
-}
-int skip_constructor_input_user_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_user_foreign (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_video_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return -1; }
- return 0;
-}
-int skip_constructor_input_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_int (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8509bda && T->type->name != 0x57af6425)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- fetch_int ();
- return 0;
-}
-int skip_constructor_int128 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7d36c439 && T->type->name != 0x82c93bc6)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_int256 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf2c798b3 && T->type->name != 0x0d38674c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_keyboard_button (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa2fa4880 && T->type->name != 0x5d05b77f)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_keyboard_button_row (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77608b83 && T->type->name != 0x889f747c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa2fa4880, .id = "KeyboardButton", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_long (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22076cba && T->type->name != 0xddf89345)) { return -1; }
- if (in_remaining () < 8) { return -1;}
- fetch_long ();
- return 0;
-}
-int skip_constructor_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_peer (field4) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field8) < 0) { return -1;}
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field9) < 0) { return -1;}
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_message_media (field10) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_reply_markup (field11) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_peer (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_message_action (field6) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_action_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- return 0;
-}
-int skip_constructor_message_action_chat_create (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_action_chat_edit_title (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_action_chat_edit_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_action_chat_delete_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- return 0;
-}
-int skip_constructor_message_action_chat_add_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_action_chat_delete_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_action_geo_chat_create (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_action_geo_chat_checkin (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- return 0;
-}
-int skip_constructor_message_action_chat_joined_by_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- return 0;
-}
-int skip_constructor_message_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_video (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_media_geo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_geo_point (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_media_unsupported (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- return 0;
-}
-int skip_constructor_message_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_document (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fc5ec4e, .id = "Audio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_audio (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_media_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_web_page (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_media_venue (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_geo_point (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_media_photo_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_message_media_video_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_video (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_input_messages_filter_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int skip_constructor_input_messages_filter_photos (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int skip_constructor_input_messages_filter_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int skip_constructor_input_messages_filter_photo_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int skip_constructor_input_messages_filter_photo_video_documents (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int skip_constructor_input_messages_filter_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int skip_constructor_input_messages_filter_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int skip_constructor_nearest_dc (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8e1a1775 && T->type->name != 0x71e5e88a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_notify_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_peer (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_notify_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- return 0;
-}
-int skip_constructor_notify_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- return 0;
-}
-int skip_constructor_notify_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- return 0;
-}
-int skip_constructor_null (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56730bcc && T->type->name != 0xa98cf433)) { return -1; }
- return 0;
-}
-int skip_constructor_p_q_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int256 (field6) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_p_q_inner_data_temp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int256 (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_peer_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_peer_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_peer_notify_events_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return -1; }
- return 0;
-}
-int skip_constructor_peer_notify_events_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return -1; }
- return 0;
-}
-int skip_constructor_peer_notify_settings_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return -1; }
- return 0;
-}
-int skip_constructor_peer_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_geo_point (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field6) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_photo_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_geo_point (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field7) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_photo_size_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_photo_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_file_location (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_photo_cached_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_file_location (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_privacy_key_status_timestamp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbc2eab30 && T->type->name != 0x43d154cf)) { return -1; }
- return 0;
-}
-int skip_constructor_privacy_value_allow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- return 0;
-}
-int skip_constructor_privacy_value_allow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- return 0;
-}
-int skip_constructor_privacy_value_allow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_privacy_value_disallow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- return 0;
-}
-int skip_constructor_privacy_value_disallow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- return 0;
-}
-int skip_constructor_privacy_value_disallow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_received_notify_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa384b779 && T->type->name != 0x5c7b4886)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_reply_keyboard_hide (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_reply_keyboard_force_reply (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_reply_keyboard_markup (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77608b83, .id = "KeyboardButtonRow", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_res_p_q (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x05162463 && T->type->name != 0xfae9db9c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_send_message_typing_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int skip_constructor_send_message_cancel_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int skip_constructor_send_message_record_video_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int skip_constructor_send_message_upload_video_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int skip_constructor_send_message_upload_video_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_send_message_record_audio_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int skip_constructor_send_message_upload_audio_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int skip_constructor_send_message_upload_audio_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_send_message_upload_photo_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_send_message_upload_document_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int skip_constructor_send_message_upload_document_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_send_message_geo_location_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int skip_constructor_send_message_choose_contact_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int skip_constructor_server_d_h_params_fail (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_server_d_h_params_ok (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_server_d_h_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5890dba && T->type->name != 0x4a76f245)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_dh_gen_ok (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_dh_gen_retry (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_dh_gen_fail (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int128 (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_sticker_pack (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x12b299d4 && T->type->name != 0xed4d662b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_sticker_set (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa7a43b17 && T->type->name != 0x585bc4e8)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_string (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5286e24 && T->type->name != 0x4ad791db)) { return -1; }
- int l = prefetch_strlen ();
- if (l < 0) { return -1;}
- fetch_str (l);
- return 0;
-}
-int skip_constructor_update_new_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_message (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_message_i_d (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_delete_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_user_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_send_message_action (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_chat_user_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_send_message_action (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_chat_participants (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_chat_participants (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_user_status (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_user_status (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_user_name (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_user_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_user_profile_photo (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_contact_registered (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_contact_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_contact_link (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_contact_link (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_new_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_new_geo_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_geo_chat_message (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_new_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_encrypted_message (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_encrypted_chat_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_encryption (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb1718213, .id = "EncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_encrypted_chat (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_encrypted_messages_read (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_chat_participant_add (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_chat_participant_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_dc_options (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_user_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fcb8237, .id = "NotifyPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_notify_peer (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_peer_notify_settings (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_service_notification (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_message_media (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_privacy (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbc2eab30, .id = "PrivacyKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_privacy_key (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_user_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_read_history_inbox (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_peer (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_read_history_outbox (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_peer (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_web_page (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_read_messages_contents (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_update_msg_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_updates_too_long (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- return 0;
-}
-int skip_constructor_update_short_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field10) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_update_short_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field8) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field11) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_update_short (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_update (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_updates_combined (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_updates (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_user_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 1)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 4)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 5)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_user_profile_photo (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_user_status (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 14)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field10) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_user_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5a89ac5b && T->type->name != 0xa57653a4)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_user (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_contacts_link (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_peer_notify_settings (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bot_info (field6) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_user_profile_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return -1; }
- return 0;
-}
-int skip_constructor_user_profile_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_file_location (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_file_location (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_user_status_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- return 0;
-}
-int skip_constructor_user_status_online (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_user_status_offline (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_user_status_recently (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- return 0;
-}
-int skip_constructor_user_status_last_week (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- return 0;
-}
-int skip_constructor_user_status_last_month (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- return 0;
-}
-int skip_constructor_vector (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1cb5c415 && T->type->name != 0xe34a3bea)) { return -1; }
- if (ODDP(T->params[0])) { return -1; }
- struct paramed_type *var0 = T->params[0]; assert (var0);
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var1 = INT2PTR (fetch_int ());
- int multiplicity3 = PTR2INT (
- ((void *)var1) + 0 );
- struct paramed_type *field3 =
- var0;
- while (multiplicity3 -- > 0) {
- if (skip_type_any (field3) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_video_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo_size (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field8) < 0) { return -1;}
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field9) < 0) { return -1;}
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field10) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_video_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field7) < 0) { return -1;}
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field8) < 0) { return -1;}
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo_size (field9) < 0) { return -1;}
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field10) < 0) { return -1;}
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field11) < 0) { return -1;}
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field12) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_wall_paper (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_wall_paper_solid (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_web_page_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_web_page_pending (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 1)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 4)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 5)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 5)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field12) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field13) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 7)) {
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field14) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 8)) {
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field15) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_account_authorizations (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1250abde && T->type->name != 0xedaf5421)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bf2e6f6, .id = "Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_account_no_password (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_account_password (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_account_password_input_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbcfc532c && T->type->name != 0x4303acd3)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field2) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 1)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_account_password_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb7b72ab3 && T->type->name != 0x4848d54c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_account_privacy_rules (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x554abb6f && T->type->name != 0xaab54490)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_account_sent_change_phone_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa4f58c4c && T->type->name != 0x5b0a73b3)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_auth_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xff036af1 && T->type->name != 0x00fc950e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_user (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_auth_checked_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x811ea28e && T->type->name != 0x7ee15d71)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_auth_exported_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdf969c2d && T->type->name != 0x206963d2)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_auth_password_recovery (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x137948a5 && T->type->name != 0xec86b75a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_auth_sent_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_auth_sent_app_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_encr_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0377168f && T->type->name != 0xfc88e970)) { return -1; }
- int multiplicity1 = PTR2INT (
- INT2PTR (64) );
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- while (multiplicity1 -- > 0) {
- if (skip_type_any (field1) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_binlog_start (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- return 0;
-}
-int skip_constructor_binlog_dc_option (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_dc_option_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_auth_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_binlog_encr_key (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_default_dc (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_dc_signed (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_our_id (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_set_dh_params (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_binlog_encr_key (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_set_pts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_set_qts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_set_date (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_set_seq (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_encr_chat_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_encr_chat_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_binlog_encr_key (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_binlog_encr_key (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 25)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field12) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field13) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field14) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 27)) {
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field15) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_binlog_encr_chat_exchange_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_binlog_encr_key (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_binlog_user_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_user_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_user_profile_photo (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field12) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 25)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field13) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bot_info (field14) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_binlog_chat_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_chat_photo (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 25)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field12) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_binlog_chat_add_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_chat_del_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_set_msg_id (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_message_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_message_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_message_media (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_message_action (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field12) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_reply_markup (field13) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_binlog_message_encr_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (in_remaining () < 4) { return -1;}
- struct paramed_type *var0 = INT2PTR (fetch_int ());
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_decrypted_message_media (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_decrypted_message_action (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_encrypted_file (field10) < 0) { return -1;}
- }
- return 0;
-}
-int skip_constructor_binlog_msg_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_binlog_reset_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- return 0;
-}
-int skip_constructor_contacts_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_contacts_blocked_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_contacts_contacts_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return -1; }
- return 0;
-}
-int skip_constructor_contacts_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf911c994, .id = "Contact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_contacts_found (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0566000e && T->type->name != 0xfa99fff1)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xea879f95, .id = "ContactFound", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_contacts_imported_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xad524315 && T->type->name != 0x52adbcea)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xd0028438, .id = "ImportedContact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_contacts_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3ace484c && T->type->name != 0xc531b7b3)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_contact_link (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_contact_link (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_user (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_contacts_suggested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5649dcc5 && T->type->name != 0xa9b6233a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3de191a1, .id = "ContactSuggested", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_geochats_located (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x48feb267 && T->type->name != 0xb7014d98)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3631cf4c, .id = "ChatLocated", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_geochats_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_geochats_messages_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_geochats_stated_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17b1578b && T->type->name != 0xe84ea874)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_geo_chat_message (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_help_app_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bool (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_help_no_app_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return -1; }
- return 0;
-}
-int skip_constructor_help_invite_text (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x18cb9f78 && T->type->name != 0xe7346087)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_help_support (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17c6b5f6 && T->type->name != 0xe8394a09)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_user (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_affected_history (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb45c69d1 && T->type->name != 0x4ba3962e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_affected_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x84d19185 && T->type->name != 0x7b2e6e7a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_all_stickers_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return -1; }
- return 0;
-}
-int skip_constructor_messages_all_stickers (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_chat_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe5d7d19c && T->type->name != 0x1a282e63)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02a614, .id = "ChatFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_chat_full (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x64ff9fd5 && T->type->name != 0x9b00602a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_dh_config_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_dh_config (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_dialogs (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_dialogs_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3f4e0648 && T->type->name != 0xc0b1f9b7)) { return -1; }
- return 0;
-}
-int skip_constructor_messages_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_messages_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_sent_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_sent_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_encrypted_file (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_sent_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_message_media (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_sent_message_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_message_media (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field6) < 0) { return -1;}
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field7) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_sticker_set (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb60a24a6 && T->type->name != 0x49f5db59)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_sticker_set (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_messages_stickers_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return -1; }
- return 0;
-}
-int skip_constructor_messages_stickers (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_string (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_photos_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x20212ca8 && T->type->name != 0xdfded357)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_photo (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_photos_photos (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_photos_photos_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_storage_file_unknown (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int skip_constructor_storage_file_jpeg (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int skip_constructor_storage_file_gif (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int skip_constructor_storage_file_png (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int skip_constructor_storage_file_pdf (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int skip_constructor_storage_file_mp3 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int skip_constructor_storage_file_mov (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int skip_constructor_storage_file_partial (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int skip_constructor_storage_file_mp4 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int skip_constructor_storage_file_webp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int skip_constructor_updates_difference_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_updates_difference (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_updates_state (field6) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_updates_difference_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (skip_type_vector (field5) < 0) { return -1;}
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_updates_state (field6) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_updates_state (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa56c2a3e && T->type->name != 0x5a93d5c1)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field4) < 0) { return -1;}
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int skip_constructor_upload_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x096a18d5 && T->type->name != 0xf695e72a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3e2838a8, .id = "storage.FileType", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_storage_file_type (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_int (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (skip_type_bare_bytes (field3) < 0) { return -1;}
- return 0;
-}
-int skip_type_account_days_t_t_l (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xb8d0afdf: return skip_constructor_account_days_t_t_l (T);
- default: return -1;
- }
-}
-int skip_type_bare_account_days_t_t_l (struct paramed_type *T) {
- if (skip_constructor_account_days_t_t_l (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_audio (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x586988d8: return skip_constructor_audio_empty (T);
- case 0xc7ac6496: return skip_constructor_audio (T);
- default: return -1;
- }
-}
-int skip_type_bare_audio (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_audio_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_audio (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_authorization (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x7bf2e6f6: return skip_constructor_authorization (T);
- default: return -1;
- }
-}
-int skip_type_bare_authorization (struct paramed_type *T) {
- if (skip_constructor_authorization (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_bool (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xbc799737: return skip_constructor_bool_false (T);
- case 0x997275b5: return skip_constructor_bool_true (T);
- default: return -1;
- }
-}
-int skip_type_bare_bool (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_bool_false (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_bool_true (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_bot_command (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xc27ac8c7: return skip_constructor_bot_command (T);
- case 0xb79d22ab: return skip_constructor_bot_command_old (T);
- default: return -1;
- }
-}
-int skip_type_bare_bot_command (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_bot_command (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_bot_command_old (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_bot_info (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xbb2e37ce: return skip_constructor_bot_info_empty (T);
- case 0x09cf585d: return skip_constructor_bot_info (T);
- default: return -1;
- }
-}
-int skip_type_bare_bot_info (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_bot_info_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_bot_info (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_bytes (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x0ee1379f: return skip_constructor_bytes (T);
- default: return -1;
- }
-}
-int skip_type_bare_bytes (struct paramed_type *T) {
- if (skip_constructor_bytes (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_chat (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x9ba2d800: return skip_constructor_chat_empty (T);
- case 0x6e9c9bc7: return skip_constructor_chat (T);
- case 0xfb0ccc41: return skip_constructor_chat_forbidden (T);
- case 0x75eaea5a: return skip_constructor_geo_chat (T);
- default: return -1;
- }
-}
-int skip_type_bare_chat (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_chat_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_chat (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_chat_forbidden (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_geo_chat (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_chat_full (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x2e02a614: return skip_constructor_chat_full (T);
- default: return -1;
- }
-}
-int skip_type_bare_chat_full (struct paramed_type *T) {
- if (skip_constructor_chat_full (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_chat_invite (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x5a686d7c: return skip_constructor_chat_invite_already (T);
- case 0xce917dcd: return skip_constructor_chat_invite (T);
- default: return -1;
- }
-}
-int skip_type_bare_chat_invite (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_chat_invite_already (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_chat_invite (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_chat_located (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x3631cf4c: return skip_constructor_chat_located (T);
- default: return -1;
- }
-}
-int skip_type_bare_chat_located (struct paramed_type *T) {
- if (skip_constructor_chat_located (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_chat_participant (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xc8d7493e: return skip_constructor_chat_participant (T);
- default: return -1;
- }
-}
-int skip_type_bare_chat_participant (struct paramed_type *T) {
- if (skip_constructor_chat_participant (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_chat_participants (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x0fd2bb8a: return skip_constructor_chat_participants_forbidden (T);
- case 0x7841b415: return skip_constructor_chat_participants (T);
- default: return -1;
- }
-}
-int skip_type_bare_chat_participants (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_chat_participants_forbidden (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_chat_participants (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_chat_photo (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x37c1011c: return skip_constructor_chat_photo_empty (T);
- case 0x6153276a: return skip_constructor_chat_photo (T);
- default: return -1;
- }
-}
-int skip_type_bare_chat_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_chat_photo_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_chat_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_client_d_h_inner_data (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x6643b654: return skip_constructor_client_d_h_inner_data (T);
- default: return -1;
- }
-}
-int skip_type_bare_client_d_h_inner_data (struct paramed_type *T) {
- if (skip_constructor_client_d_h_inner_data (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_config (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x4e32b894: return skip_constructor_config (T);
- default: return -1;
- }
-}
-int skip_type_bare_config (struct paramed_type *T) {
- if (skip_constructor_config (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_contact (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xf911c994: return skip_constructor_contact (T);
- default: return -1;
- }
-}
-int skip_type_bare_contact (struct paramed_type *T) {
- if (skip_constructor_contact (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_contact_blocked (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x561bc879: return skip_constructor_contact_blocked (T);
- default: return -1;
- }
-}
-int skip_type_bare_contact_blocked (struct paramed_type *T) {
- if (skip_constructor_contact_blocked (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_contact_found (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xea879f95: return skip_constructor_contact_found (T);
- default: return -1;
- }
-}
-int skip_type_bare_contact_found (struct paramed_type *T) {
- if (skip_constructor_contact_found (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_contact_link (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x5f4f9247: return skip_constructor_contact_link_unknown (T);
- case 0xfeedd3ad: return skip_constructor_contact_link_none (T);
- case 0x268f3f59: return skip_constructor_contact_link_has_phone (T);
- case 0xd502c2d0: return skip_constructor_contact_link_contact (T);
- default: return -1;
- }
-}
-int skip_type_bare_contact_link (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_contact_link_unknown (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_contact_link_none (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_contact_link_has_phone (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_contact_link_contact (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_contact_status (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xd3680c61: return skip_constructor_contact_status (T);
- default: return -1;
- }
-}
-int skip_type_bare_contact_status (struct paramed_type *T) {
- if (skip_constructor_contact_status (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_contact_suggested (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x3de191a1: return skip_constructor_contact_suggested (T);
- default: return -1;
- }
-}
-int skip_type_bare_contact_suggested (struct paramed_type *T) {
- if (skip_constructor_contact_suggested (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_dc_option (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x2ec2a43c: return skip_constructor_dc_option_l28 (T);
- case 0x05d8c6cc: return skip_constructor_dc_option (T);
- default: return -1;
- }
-}
-int skip_type_bare_dc_option (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_dc_option_l28 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_dc_option (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_decrypted_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x204d3878: return skip_constructor_decrypted_message (T);
- case 0x73164160: return skip_constructor_decrypted_message_service (T);
- default: return -1;
- }
-}
-int skip_type_bare_decrypted_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_decrypted_message (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_service (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_decrypted_message_action (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xa1733aec: return skip_constructor_decrypted_message_action_set_message_t_t_l (T);
- case 0x0c4f40be: return skip_constructor_decrypted_message_action_read_messages (T);
- case 0x65614304: return skip_constructor_decrypted_message_action_delete_messages (T);
- case 0x8ac1f475: return skip_constructor_decrypted_message_action_screenshot_messages (T);
- case 0x6719e45c: return skip_constructor_decrypted_message_action_flush_history (T);
- case 0x511110b0: return skip_constructor_decrypted_message_action_resend (T);
- case 0xf3048883: return skip_constructor_decrypted_message_action_notify_layer (T);
- case 0xccb27641: return skip_constructor_decrypted_message_action_typing (T);
- case 0xf3c9611b: return skip_constructor_decrypted_message_action_request_key (T);
- case 0x6fe1735b: return skip_constructor_decrypted_message_action_accept_key (T);
- case 0xdd05ec6b: return skip_constructor_decrypted_message_action_abort_key (T);
- case 0xec2e0b9b: return skip_constructor_decrypted_message_action_commit_key (T);
- case 0xa82fdd63: return skip_constructor_decrypted_message_action_noop (T);
- default: return -1;
- }
-}
-int skip_type_bare_decrypted_message_action (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_decrypted_message_action_set_message_t_t_l (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_read_messages (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_delete_messages (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_screenshot_messages (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_flush_history (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_resend (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_notify_layer (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_typing (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_request_key (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_accept_key (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_abort_key (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_commit_key (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_action_noop (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_decrypted_message_layer (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x1be31789: return skip_constructor_decrypted_message_layer (T);
- default: return -1;
- }
-}
-int skip_type_bare_decrypted_message_layer (struct paramed_type *T) {
- if (skip_constructor_decrypted_message_layer (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_decrypted_message_media (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x089f5c4a: return skip_constructor_decrypted_message_media_empty (T);
- case 0x32798a8c: return skip_constructor_decrypted_message_media_photo (T);
- case 0x35480a59: return skip_constructor_decrypted_message_media_geo_point (T);
- case 0x588a0a97: return skip_constructor_decrypted_message_media_contact (T);
- case 0xb095434b: return skip_constructor_decrypted_message_media_document (T);
- case 0x524a415d: return skip_constructor_decrypted_message_media_video (T);
- case 0x57e0a9cb: return skip_constructor_decrypted_message_media_audio (T);
- case 0xfa95b0dd: return skip_constructor_decrypted_message_media_external_document (T);
- case 0x4cee6ef3: return skip_constructor_decrypted_message_media_video_l12 (T);
- case 0x6080758f: return skip_constructor_decrypted_message_media_audio_l12 (T);
- default: return -1;
- }
-}
-int skip_type_bare_decrypted_message_media (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_decrypted_message_media_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_geo_point (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_contact (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_document (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_video (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_audio (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_external_document (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_video_l12 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_decrypted_message_media_audio_l12 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_dialog (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xc1dd804a: return skip_constructor_dialog (T);
- default: return -1;
- }
-}
-int skip_type_bare_dialog (struct paramed_type *T) {
- if (skip_constructor_dialog (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_disabled_feature (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xae636f24: return skip_constructor_disabled_feature (T);
- default: return -1;
- }
-}
-int skip_type_bare_disabled_feature (struct paramed_type *T) {
- if (skip_constructor_disabled_feature (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_document (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x36f8c871: return skip_constructor_document_empty (T);
- case 0xf9a39f4f: return skip_constructor_document (T);
- case 0x9efc6326: return skip_constructor_document_l19 (T);
- default: return -1;
- }
-}
-int skip_type_bare_document (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_document_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_l19 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_document_attribute (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x6c37c15c: return skip_constructor_document_attribute_image_size (T);
- case 0x11b58939: return skip_constructor_document_attribute_animated (T);
- case 0x994c9882: return skip_constructor_document_attribute_sticker_l28 (T);
- case 0x3a556302: return skip_constructor_document_attribute_sticker (T);
- case 0x5910cccb: return skip_constructor_document_attribute_video (T);
- case 0x051448e5: return skip_constructor_document_attribute_audio (T);
- case 0x15590068: return skip_constructor_document_attribute_filename (T);
- default: return -1;
- }
-}
-int skip_type_bare_document_attribute (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_document_attribute_image_size (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_attribute_animated (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_attribute_sticker_l28 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_attribute_sticker (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_attribute_video (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_attribute_audio (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_document_attribute_filename (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_double (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x2210c154: return skip_constructor_double (T);
- default: return -1;
- }
-}
-int skip_type_bare_double (struct paramed_type *T) {
- if (skip_constructor_double (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_encrypted_chat (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xab7ec0a0: return skip_constructor_encrypted_chat_empty (T);
- case 0x3bf703dc: return skip_constructor_encrypted_chat_waiting (T);
- case 0xc878527e: return skip_constructor_encrypted_chat_requested (T);
- case 0xfa56ce36: return skip_constructor_encrypted_chat (T);
- case 0x13d6dd27: return skip_constructor_encrypted_chat_discarded (T);
- default: return -1;
- }
-}
-int skip_type_bare_encrypted_chat (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_encrypted_chat_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_encrypted_chat_waiting (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_encrypted_chat_requested (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_encrypted_chat (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_encrypted_chat_discarded (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_encrypted_file (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xc21f497e: return skip_constructor_encrypted_file_empty (T);
- case 0x4a70994c: return skip_constructor_encrypted_file (T);
- default: return -1;
- }
-}
-int skip_type_bare_encrypted_file (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_encrypted_file_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_encrypted_file (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_encrypted_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xed18c118: return skip_constructor_encrypted_message (T);
- case 0x23734b06: return skip_constructor_encrypted_message_service (T);
- default: return -1;
- }
-}
-int skip_type_bare_encrypted_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_encrypted_message (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_encrypted_message_service (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_error (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xc4b9f9bb: return skip_constructor_error (T);
- default: return -1;
- }
-}
-int skip_type_bare_error (struct paramed_type *T) {
- if (skip_constructor_error (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_exported_chat_invite (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x69df3769: return skip_constructor_chat_invite_empty (T);
- case 0xfc2e05bc: return skip_constructor_chat_invite_exported (T);
- default: return -1;
- }
-}
-int skip_type_bare_exported_chat_invite (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_chat_invite_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_chat_invite_exported (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_file_location (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x7c596b46: return skip_constructor_file_location_unavailable (T);
- case 0x53d69076: return skip_constructor_file_location (T);
- default: return -1;
- }
-}
-int skip_type_bare_file_location (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_file_location_unavailable (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_file_location (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_geo_chat_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x60311a9b: return skip_constructor_geo_chat_message_empty (T);
- case 0x4505f8e1: return skip_constructor_geo_chat_message (T);
- case 0xd34fa24e: return skip_constructor_geo_chat_message_service (T);
- default: return -1;
- }
-}
-int skip_type_bare_geo_chat_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_geo_chat_message_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_geo_chat_message (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_geo_chat_message_service (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_geo_point (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x1117dd5f: return skip_constructor_geo_point_empty (T);
- case 0x2049d70c: return skip_constructor_geo_point (T);
- default: return -1;
- }
-}
-int skip_type_bare_geo_point (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_geo_point_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_geo_point (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_imported_contact (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xd0028438: return skip_constructor_imported_contact (T);
- default: return -1;
- }
-}
-int skip_type_bare_imported_contact (struct paramed_type *T) {
- if (skip_constructor_imported_contact (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_input_app_event (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x770656a8: return skip_constructor_input_app_event (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_app_event (struct paramed_type *T) {
- if (skip_constructor_input_app_event (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_input_audio (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xd95adc84: return skip_constructor_input_audio_empty (T);
- case 0x77d440ff: return skip_constructor_input_audio (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_audio (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_audio_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_audio (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_chat_photo (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x1ca48f57: return skip_constructor_input_chat_photo_empty (T);
- case 0x94254732: return skip_constructor_input_chat_uploaded_photo (T);
- case 0xb2e1bf08: return skip_constructor_input_chat_photo (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_chat_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_chat_photo_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_chat_uploaded_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_chat_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_contact (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xf392b7f4: return skip_constructor_input_phone_contact (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_contact (struct paramed_type *T) {
- if (skip_constructor_input_phone_contact (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_input_document (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x72f0eaae: return skip_constructor_input_document_empty (T);
- case 0x18798952: return skip_constructor_input_document (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_document (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_document_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_document (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_encrypted_chat (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xf141b5e1: return skip_constructor_input_encrypted_chat (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_encrypted_chat (struct paramed_type *T) {
- if (skip_constructor_input_encrypted_chat (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_input_encrypted_file (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x1837c364: return skip_constructor_input_encrypted_file_empty (T);
- case 0x64bd0306: return skip_constructor_input_encrypted_file_uploaded (T);
- case 0x5a17b5e5: return skip_constructor_input_encrypted_file (T);
- case 0x2dc173c8: return skip_constructor_input_encrypted_file_big_uploaded (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_encrypted_file (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_encrypted_file_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_encrypted_file_uploaded (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_encrypted_file (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_encrypted_file_big_uploaded (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_file (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xf52ff27f: return skip_constructor_input_file (T);
- case 0xfa4f0bb5: return skip_constructor_input_file_big (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_file (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_file (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_file_big (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_file_location (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x14637196: return skip_constructor_input_file_location (T);
- case 0x3d0364ec: return skip_constructor_input_video_file_location (T);
- case 0xf5235d55: return skip_constructor_input_encrypted_file_location (T);
- case 0x74dc404d: return skip_constructor_input_audio_file_location (T);
- case 0x4e45abe9: return skip_constructor_input_document_file_location (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_file_location (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_file_location (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_video_file_location (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_encrypted_file_location (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_audio_file_location (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_document_file_location (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_geo_chat (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x74d456fa: return skip_constructor_input_geo_chat (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_geo_chat (struct paramed_type *T) {
- if (skip_constructor_input_geo_chat (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_input_geo_point (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xe4c123d6: return skip_constructor_input_geo_point_empty (T);
- case 0xf3b7acc9: return skip_constructor_input_geo_point (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_geo_point (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_geo_point_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_geo_point (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_media (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x9664f57f: return skip_constructor_input_media_empty (T);
- case 0xf7aff1c0: return skip_constructor_input_media_uploaded_photo (T);
- case 0xe9bfb4f3: return skip_constructor_input_media_photo (T);
- case 0xf9c44144: return skip_constructor_input_media_geo_point (T);
- case 0xa6e45987: return skip_constructor_input_media_contact (T);
- case 0xe13fd4bc: return skip_constructor_input_media_uploaded_video (T);
- case 0x96fb97dc: return skip_constructor_input_media_uploaded_thumb_video (T);
- case 0x936a4ebd: return skip_constructor_input_media_video (T);
- case 0x4e498cab: return skip_constructor_input_media_uploaded_audio (T);
- case 0x89938781: return skip_constructor_input_media_audio (T);
- case 0xffe76b78: return skip_constructor_input_media_uploaded_document (T);
- case 0x41481486: return skip_constructor_input_media_uploaded_thumb_document (T);
- case 0xd184e841: return skip_constructor_input_media_document (T);
- case 0x2827a81a: return skip_constructor_input_media_venue (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_media (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_media_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_uploaded_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_geo_point (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_contact (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_uploaded_video (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_uploaded_thumb_video (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_video (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_uploaded_audio (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_audio (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_uploaded_document (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_uploaded_thumb_document (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_document (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_media_venue (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_notify_peer (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xb8bc5b0c: return skip_constructor_input_notify_peer (T);
- case 0x193b4417: return skip_constructor_input_notify_users (T);
- case 0x4a95e84e: return skip_constructor_input_notify_chats (T);
- case 0xa429b886: return skip_constructor_input_notify_all (T);
- case 0x4d8ddec8: return skip_constructor_input_notify_geo_chat_peer (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_notify_peer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_notify_peer (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_notify_users (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_notify_chats (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_notify_all (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_notify_geo_chat_peer (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_peer (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x7f3b18ea: return skip_constructor_input_peer_empty (T);
- case 0x7da07ec9: return skip_constructor_input_peer_self (T);
- case 0x1023dbe8: return skip_constructor_input_peer_contact (T);
- case 0x9b447325: return skip_constructor_input_peer_foreign (T);
- case 0x179be863: return skip_constructor_input_peer_chat (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_peer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_peer_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_peer_self (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_peer_contact (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_peer_foreign (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_peer_chat (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_peer_notify_events (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xf03064d8: return skip_constructor_input_peer_notify_events_empty (T);
- case 0xe86a2c74: return skip_constructor_input_peer_notify_events_all (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_peer_notify_events (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_peer_notify_events_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_peer_notify_events_all (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_peer_notify_settings (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x46a2ce98: return skip_constructor_input_peer_notify_settings (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_peer_notify_settings (struct paramed_type *T) {
- if (skip_constructor_input_peer_notify_settings (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_input_photo (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x1cd7bf0d: return skip_constructor_input_photo_empty (T);
- case 0xfb95c6c4: return skip_constructor_input_photo (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_photo_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_photo_crop (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xade6b004: return skip_constructor_input_photo_crop_auto (T);
- case 0xd9915325: return skip_constructor_input_photo_crop (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_photo_crop (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_photo_crop_auto (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_photo_crop (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_privacy_key (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x4f96cb18: return skip_constructor_input_privacy_key_status_timestamp (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_privacy_key (struct paramed_type *T) {
- if (skip_constructor_input_privacy_key_status_timestamp (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_input_privacy_rule (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x0d09e07b: return skip_constructor_input_privacy_value_allow_contacts (T);
- case 0x184b35ce: return skip_constructor_input_privacy_value_allow_all (T);
- case 0x131cc67f: return skip_constructor_input_privacy_value_allow_users (T);
- case 0x0ba52007: return skip_constructor_input_privacy_value_disallow_contacts (T);
- case 0xd66b66c9: return skip_constructor_input_privacy_value_disallow_all (T);
- case 0x90110467: return skip_constructor_input_privacy_value_disallow_users (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_privacy_rule (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_privacy_value_allow_contacts (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_privacy_value_allow_all (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_privacy_value_allow_users (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_privacy_value_disallow_contacts (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_privacy_value_disallow_all (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_privacy_value_disallow_users (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_sticker_set (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xffb62b95: return skip_constructor_input_sticker_set_empty (T);
- case 0x9de7a269: return skip_constructor_input_sticker_set_i_d (T);
- case 0x861cc8a0: return skip_constructor_input_sticker_set_short_name (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_sticker_set (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_sticker_set_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_sticker_set_i_d (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_sticker_set_short_name (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_user (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xb98886cf: return skip_constructor_input_user_empty (T);
- case 0xf7c1b13f: return skip_constructor_input_user_self (T);
- case 0x86e94f65: return skip_constructor_input_user_contact (T);
- case 0x655e74ff: return skip_constructor_input_user_foreign (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_user (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_user_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_user_self (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_user_contact (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_user_foreign (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_input_video (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x5508ec75: return skip_constructor_input_video_empty (T);
- case 0xee579652: return skip_constructor_input_video (T);
- default: return -1;
- }
-}
-int skip_type_bare_input_video (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_video_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_video (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_int (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xa8509bda: return skip_constructor_int (T);
- default: return -1;
- }
-}
-int skip_type_bare_int (struct paramed_type *T) {
- if (skip_constructor_int (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_int128 (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x7d36c439: return skip_constructor_int128 (T);
- default: return -1;
- }
-}
-int skip_type_bare_int128 (struct paramed_type *T) {
- if (skip_constructor_int128 (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_int256 (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xf2c798b3: return skip_constructor_int256 (T);
- default: return -1;
- }
-}
-int skip_type_bare_int256 (struct paramed_type *T) {
- if (skip_constructor_int256 (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_keyboard_button (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xa2fa4880: return skip_constructor_keyboard_button (T);
- default: return -1;
- }
-}
-int skip_type_bare_keyboard_button (struct paramed_type *T) {
- if (skip_constructor_keyboard_button (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_keyboard_button_row (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x77608b83: return skip_constructor_keyboard_button_row (T);
- default: return -1;
- }
-}
-int skip_type_bare_keyboard_button_row (struct paramed_type *T) {
- if (skip_constructor_keyboard_button_row (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_long (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x22076cba: return skip_constructor_long (T);
- default: return -1;
- }
-}
-int skip_type_bare_long (struct paramed_type *T) {
- if (skip_constructor_long (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x83e5de54: return skip_constructor_message_empty (T);
- case 0xc3060325: return skip_constructor_message (T);
- case 0x1d86f70e: return skip_constructor_message_service (T);
- default: return -1;
- }
-}
-int skip_type_bare_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_message_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_service (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_message_action (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xb6aef7b0: return skip_constructor_message_action_empty (T);
- case 0xa6638b9a: return skip_constructor_message_action_chat_create (T);
- case 0xb5a1ce5a: return skip_constructor_message_action_chat_edit_title (T);
- case 0x7fcb13a8: return skip_constructor_message_action_chat_edit_photo (T);
- case 0x95e3fbef: return skip_constructor_message_action_chat_delete_photo (T);
- case 0x5e3cfc4b: return skip_constructor_message_action_chat_add_user (T);
- case 0xb2ae9b0c: return skip_constructor_message_action_chat_delete_user (T);
- case 0x6f038ebc: return skip_constructor_message_action_geo_chat_create (T);
- case 0x0c7d53de: return skip_constructor_message_action_geo_chat_checkin (T);
- case 0xf89cf5e8: return skip_constructor_message_action_chat_joined_by_link (T);
- default: return -1;
- }
-}
-int skip_type_bare_message_action (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_message_action_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_create (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_edit_title (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_edit_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_delete_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_add_user (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_delete_user (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_geo_chat_create (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_geo_chat_checkin (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_action_chat_joined_by_link (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_message_media (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x3ded6320: return skip_constructor_message_media_empty (T);
- case 0x3d8ce53d: return skip_constructor_message_media_photo (T);
- case 0x5bcf1675: return skip_constructor_message_media_video (T);
- case 0x56e0d474: return skip_constructor_message_media_geo (T);
- case 0x5e7d2f39: return skip_constructor_message_media_contact (T);
- case 0x9f84f49e: return skip_constructor_message_media_unsupported (T);
- case 0x2fda2204: return skip_constructor_message_media_document (T);
- case 0xc6b68300: return skip_constructor_message_media_audio (T);
- case 0xa32dd600: return skip_constructor_message_media_web_page (T);
- case 0x7912b71f: return skip_constructor_message_media_venue (T);
- case 0xc8c45a2a: return skip_constructor_message_media_photo_l27 (T);
- case 0xa2d24290: return skip_constructor_message_media_video_l27 (T);
- default: return -1;
- }
-}
-int skip_type_bare_message_media (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_message_media_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_video (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_geo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_contact (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_unsupported (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_document (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_audio (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_web_page (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_venue (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_photo_l27 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_message_media_video_l27 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_messages_filter (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x57e2f66c: return skip_constructor_input_messages_filter_empty (T);
- case 0x9609a51c: return skip_constructor_input_messages_filter_photos (T);
- case 0x9fc00e65: return skip_constructor_input_messages_filter_video (T);
- case 0x56e9f0e4: return skip_constructor_input_messages_filter_photo_video (T);
- case 0xd95e73bb: return skip_constructor_input_messages_filter_photo_video_documents (T);
- case 0x9eddf188: return skip_constructor_input_messages_filter_document (T);
- case 0xcfc87522: return skip_constructor_input_messages_filter_audio (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_filter (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_input_messages_filter_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_messages_filter_photos (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_messages_filter_video (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_messages_filter_photo_video (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_messages_filter_photo_video_documents (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_messages_filter_document (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_input_messages_filter_audio (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_nearest_dc (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x8e1a1775: return skip_constructor_nearest_dc (T);
- default: return -1;
- }
-}
-int skip_type_bare_nearest_dc (struct paramed_type *T) {
- if (skip_constructor_nearest_dc (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_notify_peer (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x9fd40bd8: return skip_constructor_notify_peer (T);
- case 0xb4c83b4c: return skip_constructor_notify_users (T);
- case 0xc007cec3: return skip_constructor_notify_chats (T);
- case 0x74d07c60: return skip_constructor_notify_all (T);
- default: return -1;
- }
-}
-int skip_type_bare_notify_peer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_notify_peer (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_notify_users (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_notify_chats (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_notify_all (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_null (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x56730bcc: return skip_constructor_null (T);
- default: return -1;
- }
-}
-int skip_type_bare_null (struct paramed_type *T) {
- if (skip_constructor_null (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_p_q_inner_data (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x83c95aec: return skip_constructor_p_q_inner_data (T);
- case 0x3c6a84d4: return skip_constructor_p_q_inner_data_temp (T);
- default: return -1;
- }
-}
-int skip_type_bare_p_q_inner_data (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_p_q_inner_data (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_p_q_inner_data_temp (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_peer (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x9db1bc6d: return skip_constructor_peer_user (T);
- case 0xbad0e5bb: return skip_constructor_peer_chat (T);
- default: return -1;
- }
-}
-int skip_type_bare_peer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_peer_user (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_peer_chat (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_peer_notify_events (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xadd53cb3: return skip_constructor_peer_notify_events_empty (T);
- case 0x6d1ded88: return skip_constructor_peer_notify_events_all (T);
- default: return -1;
- }
-}
-int skip_type_bare_peer_notify_events (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_peer_notify_events_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_peer_notify_events_all (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_peer_notify_settings (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x70a68512: return skip_constructor_peer_notify_settings_empty (T);
- case 0x8d5e11ee: return skip_constructor_peer_notify_settings (T);
- default: return -1;
- }
-}
-int skip_type_bare_peer_notify_settings (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_peer_notify_settings_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_peer_notify_settings (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_photo (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x2331b22d: return skip_constructor_photo_empty (T);
- case 0xc3838076: return skip_constructor_photo (T);
- case 0x22b56751: return skip_constructor_photo_l27 (T);
- default: return -1;
- }
-}
-int skip_type_bare_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_photo_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_photo_l27 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_photo_size (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x0e17e23c: return skip_constructor_photo_size_empty (T);
- case 0x77bfb61b: return skip_constructor_photo_size (T);
- case 0xe9a734fa: return skip_constructor_photo_cached_size (T);
- default: return -1;
- }
-}
-int skip_type_bare_photo_size (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_photo_size_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_photo_size (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_photo_cached_size (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_privacy_key (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xbc2eab30: return skip_constructor_privacy_key_status_timestamp (T);
- default: return -1;
- }
-}
-int skip_type_bare_privacy_key (struct paramed_type *T) {
- if (skip_constructor_privacy_key_status_timestamp (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_privacy_rule (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xfffe1bac: return skip_constructor_privacy_value_allow_contacts (T);
- case 0x65427b82: return skip_constructor_privacy_value_allow_all (T);
- case 0x4d5bbe0c: return skip_constructor_privacy_value_allow_users (T);
- case 0xf888fa1a: return skip_constructor_privacy_value_disallow_contacts (T);
- case 0x8b73e763: return skip_constructor_privacy_value_disallow_all (T);
- case 0x0c7f49b7: return skip_constructor_privacy_value_disallow_users (T);
- default: return -1;
- }
-}
-int skip_type_bare_privacy_rule (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_privacy_value_allow_contacts (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_privacy_value_allow_all (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_privacy_value_allow_users (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_privacy_value_disallow_contacts (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_privacy_value_disallow_all (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_privacy_value_disallow_users (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_received_notify_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xa384b779: return skip_constructor_received_notify_message (T);
- default: return -1;
- }
-}
-int skip_type_bare_received_notify_message (struct paramed_type *T) {
- if (skip_constructor_received_notify_message (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_reply_markup (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xa03e5b85: return skip_constructor_reply_keyboard_hide (T);
- case 0xf4108aa0: return skip_constructor_reply_keyboard_force_reply (T);
- case 0x3502758c: return skip_constructor_reply_keyboard_markup (T);
- default: return -1;
- }
-}
-int skip_type_bare_reply_markup (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_reply_keyboard_hide (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_reply_keyboard_force_reply (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_reply_keyboard_markup (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_res_p_q (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x05162463: return skip_constructor_res_p_q (T);
- default: return -1;
- }
-}
-int skip_type_bare_res_p_q (struct paramed_type *T) {
- if (skip_constructor_res_p_q (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_send_message_action (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x16bf744e: return skip_constructor_send_message_typing_action (T);
- case 0xfd5ec8f5: return skip_constructor_send_message_cancel_action (T);
- case 0xa187d66f: return skip_constructor_send_message_record_video_action (T);
- case 0x92042ff7: return skip_constructor_send_message_upload_video_action_l27 (T);
- case 0xe9763aec: return skip_constructor_send_message_upload_video_action (T);
- case 0xd52f73f7: return skip_constructor_send_message_record_audio_action (T);
- case 0xe6ac8a6f: return skip_constructor_send_message_upload_audio_action_l27 (T);
- case 0xf351d7ab: return skip_constructor_send_message_upload_audio_action (T);
- case 0xd1d34a26: return skip_constructor_send_message_upload_photo_action (T);
- case 0x8faee98e: return skip_constructor_send_message_upload_document_action_l27 (T);
- case 0xaa0cd9e4: return skip_constructor_send_message_upload_document_action (T);
- case 0x176f8ba1: return skip_constructor_send_message_geo_location_action (T);
- case 0x628cbc6f: return skip_constructor_send_message_choose_contact_action (T);
- default: return -1;
- }
-}
-int skip_type_bare_send_message_action (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_send_message_typing_action (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_cancel_action (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_record_video_action (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_video_action_l27 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_video_action (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_record_audio_action (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_audio_action_l27 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_audio_action (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_photo_action (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_document_action_l27 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_upload_document_action (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_geo_location_action (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_send_message_choose_contact_action (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_server_d_h_params (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x79cb045d: return skip_constructor_server_d_h_params_fail (T);
- case 0xd0e8075c: return skip_constructor_server_d_h_params_ok (T);
- default: return -1;
- }
-}
-int skip_type_bare_server_d_h_params (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_server_d_h_params_fail (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_server_d_h_params_ok (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_server_d_h_inner_data (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xb5890dba: return skip_constructor_server_d_h_inner_data (T);
- default: return -1;
- }
-}
-int skip_type_bare_server_d_h_inner_data (struct paramed_type *T) {
- if (skip_constructor_server_d_h_inner_data (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_set_client_d_h_params_answer (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x3bcbf734: return skip_constructor_dh_gen_ok (T);
- case 0x46dc1fb9: return skip_constructor_dh_gen_retry (T);
- case 0xa69dae02: return skip_constructor_dh_gen_fail (T);
- default: return -1;
- }
-}
-int skip_type_bare_set_client_d_h_params_answer (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_dh_gen_ok (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_dh_gen_retry (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_dh_gen_fail (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_sticker_pack (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x12b299d4: return skip_constructor_sticker_pack (T);
- default: return -1;
- }
-}
-int skip_type_bare_sticker_pack (struct paramed_type *T) {
- if (skip_constructor_sticker_pack (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_sticker_set (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xa7a43b17: return skip_constructor_sticker_set (T);
- default: return -1;
- }
-}
-int skip_type_bare_sticker_set (struct paramed_type *T) {
- if (skip_constructor_sticker_set (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_string (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xb5286e24: return skip_constructor_string (T);
- default: return -1;
- }
-}
-int skip_type_bare_string (struct paramed_type *T) {
- if (skip_constructor_string (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_update (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x1f2b0afd: return skip_constructor_update_new_message (T);
- case 0x4e90bfd6: return skip_constructor_update_message_i_d (T);
- case 0xa20db0e5: return skip_constructor_update_delete_messages (T);
- case 0x5c486927: return skip_constructor_update_user_typing (T);
- case 0x9a65ea1f: return skip_constructor_update_chat_user_typing (T);
- case 0x07761198: return skip_constructor_update_chat_participants (T);
- case 0x1bfbd823: return skip_constructor_update_user_status (T);
- case 0xa7332b73: return skip_constructor_update_user_name (T);
- case 0x95313b0c: return skip_constructor_update_user_photo (T);
- case 0x2575bbb9: return skip_constructor_update_contact_registered (T);
- case 0x9d2e67c5: return skip_constructor_update_contact_link (T);
- case 0x8f06529a: return skip_constructor_update_new_authorization (T);
- case 0x5a68e3f7: return skip_constructor_update_new_geo_chat_message (T);
- case 0x12bcbd9a: return skip_constructor_update_new_encrypted_message (T);
- case 0x1710f156: return skip_constructor_update_encrypted_chat_typing (T);
- case 0xb4a2e88d: return skip_constructor_update_encryption (T);
- case 0x38fe25b7: return skip_constructor_update_encrypted_messages_read (T);
- case 0x3a0eeb22: return skip_constructor_update_chat_participant_add (T);
- case 0x6e5f8c22: return skip_constructor_update_chat_participant_delete (T);
- case 0x8e5e9873: return skip_constructor_update_dc_options (T);
- case 0x80ece81a: return skip_constructor_update_user_blocked (T);
- case 0xbec268ef: return skip_constructor_update_notify_settings (T);
- case 0x382dd3e4: return skip_constructor_update_service_notification (T);
- case 0xee3b272a: return skip_constructor_update_privacy (T);
- case 0x12b9417b: return skip_constructor_update_user_phone (T);
- case 0x9961fd5c: return skip_constructor_update_read_history_inbox (T);
- case 0x2f2f21bf: return skip_constructor_update_read_history_outbox (T);
- case 0x2cc36971: return skip_constructor_update_web_page (T);
- case 0x68c13933: return skip_constructor_update_read_messages_contents (T);
- case 0x03114739: return skip_constructor_update_msg_update (T);
- default: return -1;
- }
-}
-int skip_type_bare_update (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_update_new_message (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_message_i_d (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_delete_messages (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_user_typing (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_chat_user_typing (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_chat_participants (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_user_status (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_user_name (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_user_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_contact_registered (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_contact_link (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_new_authorization (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_new_geo_chat_message (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_new_encrypted_message (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_encrypted_chat_typing (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_encryption (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_encrypted_messages_read (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_chat_participant_add (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_chat_participant_delete (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_dc_options (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_user_blocked (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_notify_settings (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_service_notification (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_privacy (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_user_phone (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_read_history_inbox (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_read_history_outbox (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_web_page (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_read_messages_contents (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_msg_update (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_updates (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xe317af7e: return skip_constructor_updates_too_long (T);
- case 0xed5c2127: return skip_constructor_update_short_message (T);
- case 0x52238b3c: return skip_constructor_update_short_chat_message (T);
- case 0x78d4dec1: return skip_constructor_update_short (T);
- case 0x725b04c3: return skip_constructor_updates_combined (T);
- case 0x74ae4240: return skip_constructor_updates (T);
- default: return -1;
- }
-}
-int skip_type_bare_updates (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_updates_too_long (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_short_message (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_short_chat_message (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_update_short (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_updates_combined (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_updates (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_user (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x200250ba: return skip_constructor_user_empty (T);
- case 0x22e49072: return skip_constructor_user (T);
- default: return -1;
- }
-}
-int skip_type_bare_user (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_user_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_user_full (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x5a89ac5b: return skip_constructor_user_full (T);
- default: return -1;
- }
-}
-int skip_type_bare_user_full (struct paramed_type *T) {
- if (skip_constructor_user_full (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_user_profile_photo (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x4f11bae1: return skip_constructor_user_profile_photo_empty (T);
- case 0xd559d8c8: return skip_constructor_user_profile_photo (T);
- default: return -1;
- }
-}
-int skip_type_bare_user_profile_photo (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_user_profile_photo_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user_profile_photo (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_user_status (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x09d05049: return skip_constructor_user_status_empty (T);
- case 0xedb93949: return skip_constructor_user_status_online (T);
- case 0x008c703f: return skip_constructor_user_status_offline (T);
- case 0xe26f42f1: return skip_constructor_user_status_recently (T);
- case 0x07bf09fc: return skip_constructor_user_status_last_week (T);
- case 0x77ebc742: return skip_constructor_user_status_last_month (T);
- default: return -1;
- }
-}
-int skip_type_bare_user_status (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_user_status_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user_status_online (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user_status_offline (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user_status_recently (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user_status_last_week (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_user_status_last_month (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_vector (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x1cb5c415: return skip_constructor_vector (T);
- default: return -1;
- }
-}
-int skip_type_bare_vector (struct paramed_type *T) {
- if (skip_constructor_vector (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_video (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xc10658a8: return skip_constructor_video_empty (T);
- case 0xee9f4a4d: return skip_constructor_video (T);
- case 0x388fa391: return skip_constructor_video_l27 (T);
- default: return -1;
- }
-}
-int skip_type_bare_video (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_video_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_video (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_video_l27 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_wall_paper (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xccb03657: return skip_constructor_wall_paper (T);
- case 0x63117f24: return skip_constructor_wall_paper_solid (T);
- default: return -1;
- }
-}
-int skip_type_bare_wall_paper (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_wall_paper (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_wall_paper_solid (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_web_page (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xeb1477e8: return skip_constructor_web_page_empty (T);
- case 0xc586da1c: return skip_constructor_web_page_pending (T);
- case 0xa31ea0b5: return skip_constructor_web_page (T);
- default: return -1;
- }
-}
-int skip_type_bare_web_page (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_web_page_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_web_page_pending (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_web_page (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_account_authorizations (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x1250abde: return skip_constructor_account_authorizations (T);
- default: return -1;
- }
-}
-int skip_type_bare_account_authorizations (struct paramed_type *T) {
- if (skip_constructor_account_authorizations (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_account_password (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x96dabc18: return skip_constructor_account_no_password (T);
- case 0x7c18141c: return skip_constructor_account_password (T);
- default: return -1;
- }
-}
-int skip_type_bare_account_password (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_account_no_password (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_account_password (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_account_password_input_settings (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xbcfc532c: return skip_constructor_account_password_input_settings (T);
- default: return -1;
- }
-}
-int skip_type_bare_account_password_input_settings (struct paramed_type *T) {
- if (skip_constructor_account_password_input_settings (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_account_password_settings (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xb7b72ab3: return skip_constructor_account_password_settings (T);
- default: return -1;
- }
-}
-int skip_type_bare_account_password_settings (struct paramed_type *T) {
- if (skip_constructor_account_password_settings (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_account_privacy_rules (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x554abb6f: return skip_constructor_account_privacy_rules (T);
- default: return -1;
- }
-}
-int skip_type_bare_account_privacy_rules (struct paramed_type *T) {
- if (skip_constructor_account_privacy_rules (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_account_sent_change_phone_code (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xa4f58c4c: return skip_constructor_account_sent_change_phone_code (T);
- default: return -1;
- }
-}
-int skip_type_bare_account_sent_change_phone_code (struct paramed_type *T) {
- if (skip_constructor_account_sent_change_phone_code (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_auth_authorization (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xff036af1: return skip_constructor_auth_authorization (T);
- default: return -1;
- }
-}
-int skip_type_bare_auth_authorization (struct paramed_type *T) {
- if (skip_constructor_auth_authorization (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_auth_checked_phone (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x811ea28e: return skip_constructor_auth_checked_phone (T);
- default: return -1;
- }
-}
-int skip_type_bare_auth_checked_phone (struct paramed_type *T) {
- if (skip_constructor_auth_checked_phone (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_auth_exported_authorization (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xdf969c2d: return skip_constructor_auth_exported_authorization (T);
- default: return -1;
- }
-}
-int skip_type_bare_auth_exported_authorization (struct paramed_type *T) {
- if (skip_constructor_auth_exported_authorization (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_auth_password_recovery (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x137948a5: return skip_constructor_auth_password_recovery (T);
- default: return -1;
- }
-}
-int skip_type_bare_auth_password_recovery (struct paramed_type *T) {
- if (skip_constructor_auth_password_recovery (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_auth_sent_code (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xefed51d9: return skip_constructor_auth_sent_code (T);
- case 0xe325edcf: return skip_constructor_auth_sent_app_code (T);
- default: return -1;
- }
-}
-int skip_type_bare_auth_sent_code (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_auth_sent_code (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_auth_sent_app_code (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_binlog_encr_key (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x0377168f: return skip_constructor_binlog_encr_key (T);
- default: return -1;
- }
-}
-int skip_type_bare_binlog_encr_key (struct paramed_type *T) {
- if (skip_constructor_binlog_encr_key (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_binlog_update (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x3b06de69: return skip_constructor_binlog_start (T);
- case 0xf96feb32: return skip_constructor_binlog_dc_option (T);
- case 0x7c0d22d8: return skip_constructor_binlog_dc_option_new (T);
- case 0x71e8c156: return skip_constructor_binlog_auth_key (T);
- case 0x9e83dbdc: return skip_constructor_binlog_default_dc (T);
- case 0x26451bb5: return skip_constructor_binlog_dc_signed (T);
- case 0x68a870e8: return skip_constructor_binlog_our_id (T);
- case 0xeaeb7826: return skip_constructor_binlog_set_dh_params (T);
- case 0x2ca8c939: return skip_constructor_binlog_set_pts (T);
- case 0xd95738ac: return skip_constructor_binlog_set_qts (T);
- case 0x1d0f4b52: return skip_constructor_binlog_set_date (T);
- case 0x6eeb2989: return skip_constructor_binlog_set_seq (T);
- case 0xee1b38e8: return skip_constructor_binlog_encr_chat_delete (T);
- case 0x84977251: return skip_constructor_binlog_encr_chat_new (T);
- case 0x9d49488d: return skip_constructor_binlog_encr_chat_exchange_new (T);
- case 0xac55d447: return skip_constructor_binlog_user_delete (T);
- case 0x127cf2f9: return skip_constructor_binlog_user_new (T);
- case 0x0a10aa92: return skip_constructor_binlog_chat_new (T);
- case 0x535475ea: return skip_constructor_binlog_chat_add_participant (T);
- case 0x7dd1a1a2: return skip_constructor_binlog_chat_del_participant (T);
- case 0x3c873416: return skip_constructor_binlog_set_msg_id (T);
- case 0x847e77b1: return skip_constructor_binlog_message_delete (T);
- case 0x427cfcdb: return skip_constructor_binlog_message_new (T);
- case 0x6cf7cabc: return skip_constructor_binlog_message_encr_new (T);
- case 0x6dd4d85f: return skip_constructor_binlog_msg_update (T);
- case 0x83327955: return skip_constructor_binlog_reset_authorization (T);
- default: return -1;
- }
-}
-int skip_type_bare_binlog_update (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_binlog_start (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_dc_option (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_dc_option_new (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_auth_key (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_default_dc (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_dc_signed (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_our_id (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_set_dh_params (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_set_pts (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_set_qts (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_set_date (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_set_seq (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_encr_chat_delete (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_encr_chat_new (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_encr_chat_exchange_new (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_user_delete (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_user_new (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_chat_new (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_chat_add_participant (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_chat_del_participant (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_set_msg_id (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_message_delete (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_message_new (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_message_encr_new (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_msg_update (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_binlog_reset_authorization (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_contacts_blocked (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x1c138d15: return skip_constructor_contacts_blocked (T);
- case 0x900802a1: return skip_constructor_contacts_blocked_slice (T);
- default: return -1;
- }
-}
-int skip_type_bare_contacts_blocked (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_contacts_blocked (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_contacts_blocked_slice (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_contacts_contacts (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xb74ba9d2: return skip_constructor_contacts_contacts_not_modified (T);
- case 0x6f8b8cb2: return skip_constructor_contacts_contacts (T);
- default: return -1;
- }
-}
-int skip_type_bare_contacts_contacts (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_contacts_contacts_not_modified (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_contacts_contacts (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_contacts_found (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x0566000e: return skip_constructor_contacts_found (T);
- default: return -1;
- }
-}
-int skip_type_bare_contacts_found (struct paramed_type *T) {
- if (skip_constructor_contacts_found (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_contacts_imported_contacts (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xad524315: return skip_constructor_contacts_imported_contacts (T);
- default: return -1;
- }
-}
-int skip_type_bare_contacts_imported_contacts (struct paramed_type *T) {
- if (skip_constructor_contacts_imported_contacts (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_contacts_link (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x3ace484c: return skip_constructor_contacts_link (T);
- default: return -1;
- }
-}
-int skip_type_bare_contacts_link (struct paramed_type *T) {
- if (skip_constructor_contacts_link (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_contacts_suggested (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x5649dcc5: return skip_constructor_contacts_suggested (T);
- default: return -1;
- }
-}
-int skip_type_bare_contacts_suggested (struct paramed_type *T) {
- if (skip_constructor_contacts_suggested (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_geochats_located (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x48feb267: return skip_constructor_geochats_located (T);
- default: return -1;
- }
-}
-int skip_type_bare_geochats_located (struct paramed_type *T) {
- if (skip_constructor_geochats_located (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_geochats_messages (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xd1526db1: return skip_constructor_geochats_messages (T);
- case 0xbc5863e8: return skip_constructor_geochats_messages_slice (T);
- default: return -1;
- }
-}
-int skip_type_bare_geochats_messages (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_geochats_messages (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_geochats_messages_slice (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_geochats_stated_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x17b1578b: return skip_constructor_geochats_stated_message (T);
- default: return -1;
- }
-}
-int skip_type_bare_geochats_stated_message (struct paramed_type *T) {
- if (skip_constructor_geochats_stated_message (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_help_app_update (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x8987f311: return skip_constructor_help_app_update (T);
- case 0xc45a6536: return skip_constructor_help_no_app_update (T);
- default: return -1;
- }
-}
-int skip_type_bare_help_app_update (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_help_app_update (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_help_no_app_update (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_help_invite_text (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x18cb9f78: return skip_constructor_help_invite_text (T);
- default: return -1;
- }
-}
-int skip_type_bare_help_invite_text (struct paramed_type *T) {
- if (skip_constructor_help_invite_text (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_help_support (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x17c6b5f6: return skip_constructor_help_support (T);
- default: return -1;
- }
-}
-int skip_type_bare_help_support (struct paramed_type *T) {
- if (skip_constructor_help_support (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_messages_affected_history (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xb45c69d1: return skip_constructor_messages_affected_history (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_affected_history (struct paramed_type *T) {
- if (skip_constructor_messages_affected_history (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_messages_affected_messages (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x84d19185: return skip_constructor_messages_affected_messages (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_affected_messages (struct paramed_type *T) {
- if (skip_constructor_messages_affected_messages (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_messages_all_stickers (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xe86602c3: return skip_constructor_messages_all_stickers_not_modified (T);
- case 0x5ce352ec: return skip_constructor_messages_all_stickers (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_all_stickers (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_all_stickers_not_modified (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_all_stickers (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_messages_chat_full (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xe5d7d19c: return skip_constructor_messages_chat_full (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_chat_full (struct paramed_type *T) {
- if (skip_constructor_messages_chat_full (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_messages_chats (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x64ff9fd5: return skip_constructor_messages_chats (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_chats (struct paramed_type *T) {
- if (skip_constructor_messages_chats (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_messages_dh_config (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xc0e24635: return skip_constructor_messages_dh_config_not_modified (T);
- case 0x2c221edd: return skip_constructor_messages_dh_config (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_dh_config (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_dh_config_not_modified (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_dh_config (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_messages_dialogs (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x15ba6c40: return skip_constructor_messages_dialogs (T);
- case 0x71e094f3: return skip_constructor_messages_dialogs_slice (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_dialogs (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_dialogs (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_dialogs_slice (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_messages_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x3f4e0648: return skip_constructor_messages_message_empty (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_message (struct paramed_type *T) {
- if (skip_constructor_messages_message_empty (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_messages_messages (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x8c718e87: return skip_constructor_messages_messages (T);
- case 0x0b446ae3: return skip_constructor_messages_messages_slice (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_messages (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_messages (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_messages_slice (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_messages_sent_encrypted_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x560f8935: return skip_constructor_messages_sent_encrypted_message (T);
- case 0x9493ff32: return skip_constructor_messages_sent_encrypted_file (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_sent_encrypted_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_sent_encrypted_message (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_sent_encrypted_file (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_messages_sent_message (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x4c3d47f3: return skip_constructor_messages_sent_message (T);
- case 0x35a1a663: return skip_constructor_messages_sent_message_link (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_sent_message (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_sent_message (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_sent_message_link (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_messages_sticker_set (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xb60a24a6: return skip_constructor_messages_sticker_set (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_sticker_set (struct paramed_type *T) {
- if (skip_constructor_messages_sticker_set (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_messages_stickers (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xf1749a22: return skip_constructor_messages_stickers_not_modified (T);
- case 0x8a8ecd32: return skip_constructor_messages_stickers (T);
- default: return -1;
- }
-}
-int skip_type_bare_messages_stickers (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_messages_stickers_not_modified (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_messages_stickers (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_photos_photo (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x20212ca8: return skip_constructor_photos_photo (T);
- default: return -1;
- }
-}
-int skip_type_bare_photos_photo (struct paramed_type *T) {
- if (skip_constructor_photos_photo (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_photos_photos (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x8dca6aa5: return skip_constructor_photos_photos (T);
- case 0x15051f54: return skip_constructor_photos_photos_slice (T);
- default: return -1;
- }
-}
-int skip_type_bare_photos_photos (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_photos_photos (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_photos_photos_slice (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_storage_file_type (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xaa963b05: return skip_constructor_storage_file_unknown (T);
- case 0x007efe0e: return skip_constructor_storage_file_jpeg (T);
- case 0xcae1aadf: return skip_constructor_storage_file_gif (T);
- case 0x0a4f63c0: return skip_constructor_storage_file_png (T);
- case 0xae1e508d: return skip_constructor_storage_file_pdf (T);
- case 0x528a0677: return skip_constructor_storage_file_mp3 (T);
- case 0x4b09ebbc: return skip_constructor_storage_file_mov (T);
- case 0x40bc6f52: return skip_constructor_storage_file_partial (T);
- case 0xb3cea0e4: return skip_constructor_storage_file_mp4 (T);
- case 0x1081464c: return skip_constructor_storage_file_webp (T);
- default: return -1;
- }
-}
-int skip_type_bare_storage_file_type (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_storage_file_unknown (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_jpeg (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_gif (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_png (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_pdf (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_mp3 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_mov (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_partial (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_mp4 (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_storage_file_webp (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_updates_difference (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x5d75a138: return skip_constructor_updates_difference_empty (T);
- case 0x00f49ca0: return skip_constructor_updates_difference (T);
- case 0xa8fb1981: return skip_constructor_updates_difference_slice (T);
- default: return -1;
- }
-}
-int skip_type_bare_updates_difference (struct paramed_type *T) {
- int *save_in_ptr = in_ptr;
- if (skip_constructor_updates_difference_empty (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_updates_difference (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- if (skip_constructor_updates_difference_slice (T) >= 0) { return 0; }
- in_ptr = save_in_ptr;
- return -1;
-}
-int skip_type_updates_state (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0xa56c2a3e: return skip_constructor_updates_state (T);
- default: return -1;
- }
-}
-int skip_type_bare_updates_state (struct paramed_type *T) {
- if (skip_constructor_updates_state (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_upload_file (struct paramed_type *T) {
- if (in_remaining () < 4) { return -1;}
- int magic = fetch_int ();
- switch (magic) {
- case 0x096a18d5: return skip_constructor_upload_file (T);
- default: return -1;
- }
-}
-int skip_type_bare_upload_file (struct paramed_type *T) {
- if (skip_constructor_upload_file (T) >= 0) { return 0; }
- return -1;
-}
-int skip_type_any (struct paramed_type *T) {
- switch (T->type->name) {
- case 0xb8d0afdf: return skip_type_account_days_t_t_l (T);
- case 0x472f5020: return skip_type_bare_account_days_t_t_l (T);
- case 0x9fc5ec4e: return skip_type_audio (T);
- case 0x603a13b1: return skip_type_bare_audio (T);
- case 0x7bf2e6f6: return skip_type_authorization (T);
- case 0x840d1909: return skip_type_bare_authorization (T);
- case 0x250be282: return skip_type_bool (T);
- case 0xdaf41d7d: return skip_type_bare_bool (T);
- case 0x75e7ea6c: return skip_type_bot_command (T);
- case 0x8a181593: return skip_type_bare_bot_command (T);
- case 0xb2e16f93: return skip_type_bot_info (T);
- case 0x4d1e906c: return skip_type_bare_bot_info (T);
- case 0x0ee1379f: return skip_type_bytes (T);
- case 0xf11ec860: return skip_type_bare_bytes (T);
- case 0x7bd865dc: return skip_type_chat (T);
- case 0x84279a23: return skip_type_bare_chat (T);
- case 0x2e02a614: return skip_type_chat_full (T);
- case 0xd1fd59eb: return skip_type_bare_chat_full (T);
- case 0x94f910b1: return skip_type_chat_invite (T);
- case 0x6b06ef4e: return skip_type_bare_chat_invite (T);
- case 0x3631cf4c: return skip_type_chat_located (T);
- case 0xc9ce30b3: return skip_type_bare_chat_located (T);
- case 0xc8d7493e: return skip_type_chat_participant (T);
- case 0x3728b6c1: return skip_type_bare_chat_participant (T);
- case 0x77930f9f: return skip_type_chat_participants (T);
- case 0x886cf060: return skip_type_bare_chat_participants (T);
- case 0x56922676: return skip_type_chat_photo (T);
- case 0xa96dd989: return skip_type_bare_chat_photo (T);
- case 0x6643b654: return skip_type_client_d_h_inner_data (T);
- case 0x99bc49ab: return skip_type_bare_client_d_h_inner_data (T);
- case 0x4e32b894: return skip_type_config (T);
- case 0xb1cd476b: return skip_type_bare_config (T);
- case 0xf911c994: return skip_type_contact (T);
- case 0x06ee366b: return skip_type_bare_contact (T);
- case 0x561bc879: return skip_type_contact_blocked (T);
- case 0xa9e43786: return skip_type_bare_contact_blocked (T);
- case 0xea879f95: return skip_type_contact_found (T);
- case 0x1578606a: return skip_type_bare_contact_found (T);
- case 0x522fbc63: return skip_type_contact_link (T);
- case 0xadd0439c: return skip_type_bare_contact_link (T);
- case 0xd3680c61: return skip_type_contact_status (T);
- case 0x2c97f39e: return skip_type_bare_contact_status (T);
- case 0x3de191a1: return skip_type_contact_suggested (T);
- case 0xc21e6e5e: return skip_type_bare_contact_suggested (T);
- case 0x2b1a62f0: return skip_type_dc_option (T);
- case 0xd4e59d0f: return skip_type_bare_dc_option (T);
- case 0x535b7918: return skip_type_decrypted_message (T);
- case 0xaca486e7: return skip_type_bare_decrypted_message (T);
- case 0x4e0eefde: return skip_type_decrypted_message_action (T);
- case 0xb1f11021: return skip_type_bare_decrypted_message_action (T);
- case 0x1be31789: return skip_type_decrypted_message_layer (T);
- case 0xe41ce876: return skip_type_bare_decrypted_message_layer (T);
- case 0x34e0d674: return skip_type_decrypted_message_media (T);
- case 0xcb1f298b: return skip_type_bare_decrypted_message_media (T);
- case 0xc1dd804a: return skip_type_dialog (T);
- case 0x3e227fb5: return skip_type_bare_dialog (T);
- case 0xae636f24: return skip_type_disabled_feature (T);
- case 0x519c90db: return skip_type_bare_disabled_feature (T);
- case 0x51a73418: return skip_type_document (T);
- case 0xae58cbe7: return skip_type_bare_document (T);
- case 0x97c637a3: return skip_type_document_attribute (T);
- case 0x6839c85c: return skip_type_bare_document_attribute (T);
- case 0x2210c154: return skip_type_double (T);
- case 0xddef3eab: return skip_type_bare_double (T);
- case 0xb1718213: return skip_type_encrypted_chat (T);
- case 0x4e8e7dec: return skip_type_bare_encrypted_chat (T);
- case 0x886fd032: return skip_type_encrypted_file (T);
- case 0x77902fcd: return skip_type_bare_encrypted_file (T);
- case 0xce6b8a1e: return skip_type_encrypted_message (T);
- case 0x319475e1: return skip_type_bare_encrypted_message (T);
- case 0xc4b9f9bb: return skip_type_error (T);
- case 0x3b460644: return skip_type_bare_error (T);
- case 0x95f132d5: return skip_type_exported_chat_invite (T);
- case 0x6a0ecd2a: return skip_type_bare_exported_chat_invite (T);
- case 0x2f8ffb30: return skip_type_file_location (T);
- case 0xd07004cf: return skip_type_bare_file_location (T);
- case 0xf67b4034: return skip_type_geo_chat_message (T);
- case 0x0984bfcb: return skip_type_bare_geo_chat_message (T);
- case 0x315e0a53: return skip_type_geo_point (T);
- case 0xcea1f5ac: return skip_type_bare_geo_point (T);
- case 0xd0028438: return skip_type_imported_contact (T);
- case 0x2ffd7bc7: return skip_type_bare_imported_contact (T);
- case 0x770656a8: return skip_type_input_app_event (T);
- case 0x88f9a957: return skip_type_bare_input_app_event (T);
- case 0xae8e9c7b: return skip_type_input_audio (T);
- case 0x51716384: return skip_type_bare_input_audio (T);
- case 0x3a60776d: return skip_type_input_chat_photo (T);
- case 0xc59f8892: return skip_type_bare_input_chat_photo (T);
- case 0xf392b7f4: return skip_type_input_contact (T);
- case 0x0c6d480b: return skip_type_bare_input_contact (T);
- case 0x6a8963fc: return skip_type_input_document (T);
- case 0x95769c03: return skip_type_bare_input_document (T);
- case 0xf141b5e1: return skip_type_input_encrypted_chat (T);
- case 0x0ebe4a1e: return skip_type_bare_input_encrypted_chat (T);
- case 0x0b5c064f: return skip_type_input_encrypted_file (T);
- case 0xf4a3f9b0: return skip_type_bare_input_encrypted_file (T);
- case 0x0f60f9ca: return skip_type_input_file (T);
- case 0xf09f0635: return skip_type_bare_input_file (T);
- case 0xe6daa38b: return skip_type_input_file_location (T);
- case 0x19255c74: return skip_type_bare_input_file_location (T);
- case 0x74d456fa: return skip_type_input_geo_chat (T);
- case 0x8b2ba905: return skip_type_bare_input_geo_chat (T);
- case 0x17768f1f: return skip_type_input_geo_point (T);
- case 0xe88970e0: return skip_type_bare_input_geo_point (T);
- case 0xb32c91dd: return skip_type_input_media (T);
- case 0x4cd36e22: return skip_type_bare_input_media (T);
- case 0x02b6911b: return skip_type_input_notify_peer (T);
- case 0xfd496ee4: return skip_type_bare_input_notify_peer (T);
- case 0x9e67268d: return skip_type_input_peer (T);
- case 0x6198d972: return skip_type_bare_input_peer (T);
- case 0x185a48ac: return skip_type_input_peer_notify_events (T);
- case 0xe7a5b753: return skip_type_bare_input_peer_notify_events (T);
- case 0x46a2ce98: return skip_type_input_peer_notify_settings (T);
- case 0xb95d3167: return skip_type_bare_input_peer_notify_settings (T);
- case 0xe74279c9: return skip_type_input_photo (T);
- case 0x18bd8636: return skip_type_bare_input_photo (T);
- case 0x7477e321: return skip_type_input_photo_crop (T);
- case 0x8b881cde: return skip_type_bare_input_photo_crop (T);
- case 0x4f96cb18: return skip_type_input_privacy_key (T);
- case 0xb06934e7: return skip_type_bare_input_privacy_key (T);
- case 0x4b815163: return skip_type_input_privacy_rule (T);
- case 0xb47eae9c: return skip_type_bare_input_privacy_rule (T);
- case 0xe44d415c: return skip_type_input_sticker_set (T);
- case 0x1bb2bea3: return skip_type_bare_input_sticker_set (T);
- case 0xadfe0c6a: return skip_type_input_user (T);
- case 0x5201f395: return skip_type_bare_input_user (T);
- case 0xbb5f7a27: return skip_type_input_video (T);
- case 0x44a085d8: return skip_type_bare_input_video (T);
- case 0xa8509bda: return skip_type_int (T);
- case 0x57af6425: return skip_type_bare_int (T);
- case 0x7d36c439: return skip_type_int128 (T);
- case 0x82c93bc6: return skip_type_bare_int128 (T);
- case 0xf2c798b3: return skip_type_int256 (T);
- case 0x0d38674c: return skip_type_bare_int256 (T);
- case 0xa2fa4880: return skip_type_keyboard_button (T);
- case 0x5d05b77f: return skip_type_bare_keyboard_button (T);
- case 0x77608b83: return skip_type_keyboard_button_row (T);
- case 0x889f747c: return skip_type_bare_keyboard_button_row (T);
- case 0x22076cba: return skip_type_long (T);
- case 0xddf89345: return skip_type_bare_long (T);
- case 0x5d652a7f: return skip_type_message (T);
- case 0xa29ad580: return skip_type_bare_message (T);
- case 0x383415fa: return skip_type_message_action (T);
- case 0xc7cbea05: return skip_type_bare_message_action (T);
- case 0x95f2471a: return skip_type_message_media (T);
- case 0x6a0db8e5: return skip_type_bare_message_media (T);
- case 0x80895ae0: return skip_type_messages_filter (T);
- case 0x7f76a51f: return skip_type_bare_messages_filter (T);
- case 0x8e1a1775: return skip_type_nearest_dc (T);
- case 0x71e5e88a: return skip_type_bare_nearest_dc (T);
- case 0x9fcb8237: return skip_type_notify_peer (T);
- case 0x60347dc8: return skip_type_bare_notify_peer (T);
- case 0x56730bcc: return skip_type_null (T);
- case 0xa98cf433: return skip_type_bare_null (T);
- case 0xbfa3de38: return skip_type_p_q_inner_data (T);
- case 0x405c21c7: return skip_type_bare_p_q_inner_data (T);
- case 0x276159d6: return skip_type_peer (T);
- case 0xd89ea629: return skip_type_bare_peer (T);
- case 0xc0c8d13b: return skip_type_peer_notify_events (T);
- case 0x3f372ec4: return skip_type_bare_peer_notify_events (T);
- case 0xfdf894fc: return skip_type_peer_notify_settings (T);
- case 0x02076b03: return skip_type_bare_peer_notify_settings (T);
- case 0xc207550a: return skip_type_photo (T);
- case 0x3df8aaf5: return skip_type_bare_photo (T);
- case 0x900f60dd: return skip_type_photo_size (T);
- case 0x6ff09f22: return skip_type_bare_photo_size (T);
- case 0xbc2eab30: return skip_type_privacy_key (T);
- case 0x43d154cf: return skip_type_bare_privacy_key (T);
- case 0xa8638aec: return skip_type_privacy_rule (T);
- case 0x579c7513: return skip_type_bare_privacy_rule (T);
- case 0xa384b779: return skip_type_received_notify_message (T);
- case 0x5c7b4886: return skip_type_bare_received_notify_message (T);
- case 0x612ca4a9: return skip_type_reply_markup (T);
- case 0x9ed35b56: return skip_type_bare_reply_markup (T);
- case 0x05162463: return skip_type_res_p_q (T);
- case 0xfae9db9c: return skip_type_bare_res_p_q (T);
- case 0x70541c7e: return skip_type_send_message_action (T);
- case 0x8fabe381: return skip_type_bare_send_message_action (T);
- case 0xa9230301: return skip_type_server_d_h_params (T);
- case 0x56dcfcfe: return skip_type_bare_server_d_h_params (T);
- case 0xb5890dba: return skip_type_server_d_h_inner_data (T);
- case 0x4a76f245: return skip_type_bare_server_d_h_inner_data (T);
- case 0xdb8a468f: return skip_type_set_client_d_h_params_answer (T);
- case 0x2475b970: return skip_type_bare_set_client_d_h_params_answer (T);
- case 0x12b299d4: return skip_type_sticker_pack (T);
- case 0xed4d662b: return skip_type_bare_sticker_pack (T);
- case 0xa7a43b17: return skip_type_sticker_set (T);
- case 0x585bc4e8: return skip_type_bare_sticker_set (T);
- case 0xb5286e24: return skip_type_string (T);
- case 0x4ad791db: return skip_type_bare_string (T);
- case 0x2e02b27e: return skip_type_update (T);
- case 0xd1fd4d81: return skip_type_bare_update (T);
- case 0x22499d27: return skip_type_updates (T);
- case 0xddb662d8: return skip_type_bare_updates (T);
- case 0x02e6c0c8: return skip_type_user (T);
- case 0xfd193f37: return skip_type_bare_user (T);
- case 0x5a89ac5b: return skip_type_user_full (T);
- case 0xa57653a4: return skip_type_bare_user_full (T);
- case 0x9a486229: return skip_type_user_profile_photo (T);
- case 0x65b79dd6: return skip_type_bare_user_profile_photo (T);
- case 0x76de9570: return skip_type_user_status (T);
- case 0x89216a8f: return skip_type_bare_user_status (T);
- case 0x1cb5c415: return skip_type_vector (T);
- case 0xe34a3bea: return skip_type_bare_vector (T);
- case 0x1716b174: return skip_type_video (T);
- case 0xe8e94e8b: return skip_type_bare_video (T);
- case 0xafa14973: return skip_type_wall_paper (T);
- case 0x505eb68c: return skip_type_bare_wall_paper (T);
- case 0x8d8c0d41: return skip_type_web_page (T);
- case 0x7273f2be: return skip_type_bare_web_page (T);
- case 0x1250abde: return skip_type_account_authorizations (T);
- case 0xedaf5421: return skip_type_bare_account_authorizations (T);
- case 0xeac2a804: return skip_type_account_password (T);
- case 0x153d57fb: return skip_type_bare_account_password (T);
- case 0xbcfc532c: return skip_type_account_password_input_settings (T);
- case 0x4303acd3: return skip_type_bare_account_password_input_settings (T);
- case 0xb7b72ab3: return skip_type_account_password_settings (T);
- case 0x4848d54c: return skip_type_bare_account_password_settings (T);
- case 0x554abb6f: return skip_type_account_privacy_rules (T);
- case 0xaab54490: return skip_type_bare_account_privacy_rules (T);
- case 0xa4f58c4c: return skip_type_account_sent_change_phone_code (T);
- case 0x5b0a73b3: return skip_type_bare_account_sent_change_phone_code (T);
- case 0xff036af1: return skip_type_auth_authorization (T);
- case 0x00fc950e: return skip_type_bare_auth_authorization (T);
- case 0x811ea28e: return skip_type_auth_checked_phone (T);
- case 0x7ee15d71: return skip_type_bare_auth_checked_phone (T);
- case 0xdf969c2d: return skip_type_auth_exported_authorization (T);
- case 0x206963d2: return skip_type_bare_auth_exported_authorization (T);
- case 0x137948a5: return skip_type_auth_password_recovery (T);
- case 0xec86b75a: return skip_type_bare_auth_password_recovery (T);
- case 0x0cc8bc16: return skip_type_auth_sent_code (T);
- case 0xf33743e9: return skip_type_bare_auth_sent_code (T);
- case 0x0377168f: return skip_type_binlog_encr_key (T);
- case 0xfc88e970: return skip_type_bare_binlog_encr_key (T);
- case 0x66ff03a6: return skip_type_binlog_update (T);
- case 0x9900fc59: return skip_type_bare_binlog_update (T);
- case 0x8c1b8fb4: return skip_type_contacts_blocked (T);
- case 0x73e4704b: return skip_type_bare_contacts_blocked (T);
- case 0xd8c02560: return skip_type_contacts_contacts (T);
- case 0x273fda9f: return skip_type_bare_contacts_contacts (T);
- case 0x0566000e: return skip_type_contacts_found (T);
- case 0xfa99fff1: return skip_type_bare_contacts_found (T);
- case 0xad524315: return skip_type_contacts_imported_contacts (T);
- case 0x52adbcea: return skip_type_bare_contacts_imported_contacts (T);
- case 0x3ace484c: return skip_type_contacts_link (T);
- case 0xc531b7b3: return skip_type_bare_contacts_link (T);
- case 0x5649dcc5: return skip_type_contacts_suggested (T);
- case 0xa9b6233a: return skip_type_bare_contacts_suggested (T);
- case 0x48feb267: return skip_type_geochats_located (T);
- case 0xb7014d98: return skip_type_bare_geochats_located (T);
- case 0x6d0a0e59: return skip_type_geochats_messages (T);
- case 0x92f5f1a6: return skip_type_bare_geochats_messages (T);
- case 0x17b1578b: return skip_type_geochats_stated_message (T);
- case 0xe84ea874: return skip_type_bare_geochats_stated_message (T);
- case 0x4ddd9627: return skip_type_help_app_update (T);
- case 0xb22269d8: return skip_type_bare_help_app_update (T);
- case 0x18cb9f78: return skip_type_help_invite_text (T);
- case 0xe7346087: return skip_type_bare_help_invite_text (T);
- case 0x17c6b5f6: return skip_type_help_support (T);
- case 0xe8394a09: return skip_type_bare_help_support (T);
- case 0xb45c69d1: return skip_type_messages_affected_history (T);
- case 0x4ba3962e: return skip_type_bare_messages_affected_history (T);
- case 0x84d19185: return skip_type_messages_affected_messages (T);
- case 0x7b2e6e7a: return skip_type_bare_messages_affected_messages (T);
- case 0xb485502f: return skip_type_messages_all_stickers (T);
- case 0x4b7aafd0: return skip_type_bare_messages_all_stickers (T);
- case 0xe5d7d19c: return skip_type_messages_chat_full (T);
- case 0x1a282e63: return skip_type_bare_messages_chat_full (T);
- case 0x64ff9fd5: return skip_type_messages_chats (T);
- case 0x9b00602a: return skip_type_bare_messages_chats (T);
- case 0xecc058e8: return skip_type_messages_dh_config (T);
- case 0x133fa717: return skip_type_bare_messages_dh_config (T);
- case 0x645af8b3: return skip_type_messages_dialogs (T);
- case 0x9ba5074c: return skip_type_bare_messages_dialogs (T);
- case 0x3f4e0648: return skip_type_messages_message (T);
- case 0xc0b1f9b7: return skip_type_bare_messages_message (T);
- case 0x8735e464: return skip_type_messages_messages (T);
- case 0x78ca1b9b: return skip_type_bare_messages_messages (T);
- case 0xc29c7607: return skip_type_messages_sent_encrypted_message (T);
- case 0x3d6389f8: return skip_type_bare_messages_sent_encrypted_message (T);
- case 0x799ce190: return skip_type_messages_sent_message (T);
- case 0x86631e6f: return skip_type_bare_messages_sent_message (T);
- case 0xb60a24a6: return skip_type_messages_sticker_set (T);
- case 0x49f5db59: return skip_type_bare_messages_sticker_set (T);
- case 0x7bfa5710: return skip_type_messages_stickers (T);
- case 0x8405a8ef: return skip_type_bare_messages_stickers (T);
- case 0x20212ca8: return skip_type_photos_photo (T);
- case 0xdfded357: return skip_type_bare_photos_photo (T);
- case 0x98cf75f1: return skip_type_photos_photos (T);
- case 0x67308a0e: return skip_type_bare_photos_photos (T);
- case 0x3e2838a8: return skip_type_storage_file_type (T);
- case 0xc1d7c757: return skip_type_bare_storage_file_type (T);
- case 0xf57a2419: return skip_type_updates_difference (T);
- case 0x0a85dbe6: return skip_type_bare_updates_difference (T);
- case 0xa56c2a3e: return skip_type_updates_state (T);
- case 0x5a93d5c1: return skip_type_bare_updates_state (T);
- case 0x096a18d5: return skip_type_upload_file (T);
- case 0xf695e72a: return skip_type_bare_upload_file (T);
- default: return -1; }
-}
diff --git a/protocols/Telegram/src/tgl/auto/auto-skip.h b/protocols/Telegram/src/tgl/auto/auto-skip.h
deleted file mode 100644
index f26a800b1a..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-skip.h
+++ /dev/null
@@ -1,714 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#else
-#include "auto.h"
-#endif
-#include <assert.h>
-int skip_constructor_account_days_t_t_l (struct paramed_type *T);
-int skip_constructor_audio_empty (struct paramed_type *T);
-int skip_constructor_audio (struct paramed_type *T);
-int skip_constructor_authorization (struct paramed_type *T);
-int skip_constructor_bool_false (struct paramed_type *T);
-int skip_constructor_bool_true (struct paramed_type *T);
-int skip_constructor_bot_command (struct paramed_type *T);
-int skip_constructor_bot_command_old (struct paramed_type *T);
-int skip_constructor_bot_info_empty (struct paramed_type *T);
-int skip_constructor_bot_info (struct paramed_type *T);
-int skip_constructor_bytes (struct paramed_type *T);
-int skip_constructor_chat_empty (struct paramed_type *T);
-int skip_constructor_chat (struct paramed_type *T);
-int skip_constructor_chat_forbidden (struct paramed_type *T);
-int skip_constructor_geo_chat (struct paramed_type *T);
-int skip_constructor_chat_full (struct paramed_type *T);
-int skip_constructor_chat_invite_already (struct paramed_type *T);
-int skip_constructor_chat_invite (struct paramed_type *T);
-int skip_constructor_chat_located (struct paramed_type *T);
-int skip_constructor_chat_participant (struct paramed_type *T);
-int skip_constructor_chat_participants_forbidden (struct paramed_type *T);
-int skip_constructor_chat_participants (struct paramed_type *T);
-int skip_constructor_chat_photo_empty (struct paramed_type *T);
-int skip_constructor_chat_photo (struct paramed_type *T);
-int skip_constructor_client_d_h_inner_data (struct paramed_type *T);
-int skip_constructor_config (struct paramed_type *T);
-int skip_constructor_contact (struct paramed_type *T);
-int skip_constructor_contact_blocked (struct paramed_type *T);
-int skip_constructor_contact_found (struct paramed_type *T);
-int skip_constructor_contact_link_unknown (struct paramed_type *T);
-int skip_constructor_contact_link_none (struct paramed_type *T);
-int skip_constructor_contact_link_has_phone (struct paramed_type *T);
-int skip_constructor_contact_link_contact (struct paramed_type *T);
-int skip_constructor_contact_status (struct paramed_type *T);
-int skip_constructor_contact_suggested (struct paramed_type *T);
-int skip_constructor_dc_option_l28 (struct paramed_type *T);
-int skip_constructor_dc_option (struct paramed_type *T);
-int skip_constructor_decrypted_message (struct paramed_type *T);
-int skip_constructor_decrypted_message_service (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_set_message_t_t_l (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_read_messages (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_delete_messages (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_screenshot_messages (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_flush_history (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_resend (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_notify_layer (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_typing (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_request_key (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_accept_key (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_abort_key (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_commit_key (struct paramed_type *T);
-int skip_constructor_decrypted_message_action_noop (struct paramed_type *T);
-int skip_constructor_decrypted_message_layer (struct paramed_type *T);
-int skip_constructor_decrypted_message_media_empty (struct paramed_type *T);
-int skip_constructor_decrypted_message_media_photo (struct paramed_type *T);
-int skip_constructor_decrypted_message_media_geo_point (struct paramed_type *T);
-int skip_constructor_decrypted_message_media_contact (struct paramed_type *T);
-int skip_constructor_decrypted_message_media_document (struct paramed_type *T);
-int skip_constructor_decrypted_message_media_video (struct paramed_type *T);
-int skip_constructor_decrypted_message_media_audio (struct paramed_type *T);
-int skip_constructor_decrypted_message_media_external_document (struct paramed_type *T);
-int skip_constructor_decrypted_message_media_video_l12 (struct paramed_type *T);
-int skip_constructor_decrypted_message_media_audio_l12 (struct paramed_type *T);
-int skip_constructor_dialog (struct paramed_type *T);
-int skip_constructor_disabled_feature (struct paramed_type *T);
-int skip_constructor_document_empty (struct paramed_type *T);
-int skip_constructor_document (struct paramed_type *T);
-int skip_constructor_document_l19 (struct paramed_type *T);
-int skip_constructor_document_attribute_image_size (struct paramed_type *T);
-int skip_constructor_document_attribute_animated (struct paramed_type *T);
-int skip_constructor_document_attribute_sticker_l28 (struct paramed_type *T);
-int skip_constructor_document_attribute_sticker (struct paramed_type *T);
-int skip_constructor_document_attribute_video (struct paramed_type *T);
-int skip_constructor_document_attribute_audio (struct paramed_type *T);
-int skip_constructor_document_attribute_filename (struct paramed_type *T);
-int skip_constructor_double (struct paramed_type *T);
-int skip_constructor_encrypted_chat_empty (struct paramed_type *T);
-int skip_constructor_encrypted_chat_waiting (struct paramed_type *T);
-int skip_constructor_encrypted_chat_requested (struct paramed_type *T);
-int skip_constructor_encrypted_chat (struct paramed_type *T);
-int skip_constructor_encrypted_chat_discarded (struct paramed_type *T);
-int skip_constructor_encrypted_file_empty (struct paramed_type *T);
-int skip_constructor_encrypted_file (struct paramed_type *T);
-int skip_constructor_encrypted_message (struct paramed_type *T);
-int skip_constructor_encrypted_message_service (struct paramed_type *T);
-int skip_constructor_error (struct paramed_type *T);
-int skip_constructor_chat_invite_empty (struct paramed_type *T);
-int skip_constructor_chat_invite_exported (struct paramed_type *T);
-int skip_constructor_file_location_unavailable (struct paramed_type *T);
-int skip_constructor_file_location (struct paramed_type *T);
-int skip_constructor_geo_chat_message_empty (struct paramed_type *T);
-int skip_constructor_geo_chat_message (struct paramed_type *T);
-int skip_constructor_geo_chat_message_service (struct paramed_type *T);
-int skip_constructor_geo_point_empty (struct paramed_type *T);
-int skip_constructor_geo_point (struct paramed_type *T);
-int skip_constructor_imported_contact (struct paramed_type *T);
-int skip_constructor_input_app_event (struct paramed_type *T);
-int skip_constructor_input_audio_empty (struct paramed_type *T);
-int skip_constructor_input_audio (struct paramed_type *T);
-int skip_constructor_input_chat_photo_empty (struct paramed_type *T);
-int skip_constructor_input_chat_uploaded_photo (struct paramed_type *T);
-int skip_constructor_input_chat_photo (struct paramed_type *T);
-int skip_constructor_input_phone_contact (struct paramed_type *T);
-int skip_constructor_input_document_empty (struct paramed_type *T);
-int skip_constructor_input_document (struct paramed_type *T);
-int skip_constructor_input_encrypted_chat (struct paramed_type *T);
-int skip_constructor_input_encrypted_file_empty (struct paramed_type *T);
-int skip_constructor_input_encrypted_file_uploaded (struct paramed_type *T);
-int skip_constructor_input_encrypted_file (struct paramed_type *T);
-int skip_constructor_input_encrypted_file_big_uploaded (struct paramed_type *T);
-int skip_constructor_input_file (struct paramed_type *T);
-int skip_constructor_input_file_big (struct paramed_type *T);
-int skip_constructor_input_file_location (struct paramed_type *T);
-int skip_constructor_input_video_file_location (struct paramed_type *T);
-int skip_constructor_input_encrypted_file_location (struct paramed_type *T);
-int skip_constructor_input_audio_file_location (struct paramed_type *T);
-int skip_constructor_input_document_file_location (struct paramed_type *T);
-int skip_constructor_input_geo_chat (struct paramed_type *T);
-int skip_constructor_input_geo_point_empty (struct paramed_type *T);
-int skip_constructor_input_geo_point (struct paramed_type *T);
-int skip_constructor_input_media_empty (struct paramed_type *T);
-int skip_constructor_input_media_uploaded_photo (struct paramed_type *T);
-int skip_constructor_input_media_photo (struct paramed_type *T);
-int skip_constructor_input_media_geo_point (struct paramed_type *T);
-int skip_constructor_input_media_contact (struct paramed_type *T);
-int skip_constructor_input_media_uploaded_video (struct paramed_type *T);
-int skip_constructor_input_media_uploaded_thumb_video (struct paramed_type *T);
-int skip_constructor_input_media_video (struct paramed_type *T);
-int skip_constructor_input_media_uploaded_audio (struct paramed_type *T);
-int skip_constructor_input_media_audio (struct paramed_type *T);
-int skip_constructor_input_media_uploaded_document (struct paramed_type *T);
-int skip_constructor_input_media_uploaded_thumb_document (struct paramed_type *T);
-int skip_constructor_input_media_document (struct paramed_type *T);
-int skip_constructor_input_media_venue (struct paramed_type *T);
-int skip_constructor_input_notify_peer (struct paramed_type *T);
-int skip_constructor_input_notify_users (struct paramed_type *T);
-int skip_constructor_input_notify_chats (struct paramed_type *T);
-int skip_constructor_input_notify_all (struct paramed_type *T);
-int skip_constructor_input_notify_geo_chat_peer (struct paramed_type *T);
-int skip_constructor_input_peer_empty (struct paramed_type *T);
-int skip_constructor_input_peer_self (struct paramed_type *T);
-int skip_constructor_input_peer_contact (struct paramed_type *T);
-int skip_constructor_input_peer_foreign (struct paramed_type *T);
-int skip_constructor_input_peer_chat (struct paramed_type *T);
-int skip_constructor_input_peer_notify_events_empty (struct paramed_type *T);
-int skip_constructor_input_peer_notify_events_all (struct paramed_type *T);
-int skip_constructor_input_peer_notify_settings (struct paramed_type *T);
-int skip_constructor_input_photo_empty (struct paramed_type *T);
-int skip_constructor_input_photo (struct paramed_type *T);
-int skip_constructor_input_photo_crop_auto (struct paramed_type *T);
-int skip_constructor_input_photo_crop (struct paramed_type *T);
-int skip_constructor_input_privacy_key_status_timestamp (struct paramed_type *T);
-int skip_constructor_input_privacy_value_allow_contacts (struct paramed_type *T);
-int skip_constructor_input_privacy_value_allow_all (struct paramed_type *T);
-int skip_constructor_input_privacy_value_allow_users (struct paramed_type *T);
-int skip_constructor_input_privacy_value_disallow_contacts (struct paramed_type *T);
-int skip_constructor_input_privacy_value_disallow_all (struct paramed_type *T);
-int skip_constructor_input_privacy_value_disallow_users (struct paramed_type *T);
-int skip_constructor_input_sticker_set_empty (struct paramed_type *T);
-int skip_constructor_input_sticker_set_i_d (struct paramed_type *T);
-int skip_constructor_input_sticker_set_short_name (struct paramed_type *T);
-int skip_constructor_input_user_empty (struct paramed_type *T);
-int skip_constructor_input_user_self (struct paramed_type *T);
-int skip_constructor_input_user_contact (struct paramed_type *T);
-int skip_constructor_input_user_foreign (struct paramed_type *T);
-int skip_constructor_input_video_empty (struct paramed_type *T);
-int skip_constructor_input_video (struct paramed_type *T);
-int skip_constructor_int (struct paramed_type *T);
-int skip_constructor_int128 (struct paramed_type *T);
-int skip_constructor_int256 (struct paramed_type *T);
-int skip_constructor_keyboard_button (struct paramed_type *T);
-int skip_constructor_keyboard_button_row (struct paramed_type *T);
-int skip_constructor_long (struct paramed_type *T);
-int skip_constructor_message_empty (struct paramed_type *T);
-int skip_constructor_message (struct paramed_type *T);
-int skip_constructor_message_service (struct paramed_type *T);
-int skip_constructor_message_action_empty (struct paramed_type *T);
-int skip_constructor_message_action_chat_create (struct paramed_type *T);
-int skip_constructor_message_action_chat_edit_title (struct paramed_type *T);
-int skip_constructor_message_action_chat_edit_photo (struct paramed_type *T);
-int skip_constructor_message_action_chat_delete_photo (struct paramed_type *T);
-int skip_constructor_message_action_chat_add_user (struct paramed_type *T);
-int skip_constructor_message_action_chat_delete_user (struct paramed_type *T);
-int skip_constructor_message_action_geo_chat_create (struct paramed_type *T);
-int skip_constructor_message_action_geo_chat_checkin (struct paramed_type *T);
-int skip_constructor_message_action_chat_joined_by_link (struct paramed_type *T);
-int skip_constructor_message_media_empty (struct paramed_type *T);
-int skip_constructor_message_media_photo (struct paramed_type *T);
-int skip_constructor_message_media_video (struct paramed_type *T);
-int skip_constructor_message_media_geo (struct paramed_type *T);
-int skip_constructor_message_media_contact (struct paramed_type *T);
-int skip_constructor_message_media_unsupported (struct paramed_type *T);
-int skip_constructor_message_media_document (struct paramed_type *T);
-int skip_constructor_message_media_audio (struct paramed_type *T);
-int skip_constructor_message_media_web_page (struct paramed_type *T);
-int skip_constructor_message_media_venue (struct paramed_type *T);
-int skip_constructor_message_media_photo_l27 (struct paramed_type *T);
-int skip_constructor_message_media_video_l27 (struct paramed_type *T);
-int skip_constructor_input_messages_filter_empty (struct paramed_type *T);
-int skip_constructor_input_messages_filter_photos (struct paramed_type *T);
-int skip_constructor_input_messages_filter_video (struct paramed_type *T);
-int skip_constructor_input_messages_filter_photo_video (struct paramed_type *T);
-int skip_constructor_input_messages_filter_photo_video_documents (struct paramed_type *T);
-int skip_constructor_input_messages_filter_document (struct paramed_type *T);
-int skip_constructor_input_messages_filter_audio (struct paramed_type *T);
-int skip_constructor_nearest_dc (struct paramed_type *T);
-int skip_constructor_notify_peer (struct paramed_type *T);
-int skip_constructor_notify_users (struct paramed_type *T);
-int skip_constructor_notify_chats (struct paramed_type *T);
-int skip_constructor_notify_all (struct paramed_type *T);
-int skip_constructor_null (struct paramed_type *T);
-int skip_constructor_p_q_inner_data (struct paramed_type *T);
-int skip_constructor_p_q_inner_data_temp (struct paramed_type *T);
-int skip_constructor_peer_user (struct paramed_type *T);
-int skip_constructor_peer_chat (struct paramed_type *T);
-int skip_constructor_peer_notify_events_empty (struct paramed_type *T);
-int skip_constructor_peer_notify_events_all (struct paramed_type *T);
-int skip_constructor_peer_notify_settings_empty (struct paramed_type *T);
-int skip_constructor_peer_notify_settings (struct paramed_type *T);
-int skip_constructor_photo_empty (struct paramed_type *T);
-int skip_constructor_photo (struct paramed_type *T);
-int skip_constructor_photo_l27 (struct paramed_type *T);
-int skip_constructor_photo_size_empty (struct paramed_type *T);
-int skip_constructor_photo_size (struct paramed_type *T);
-int skip_constructor_photo_cached_size (struct paramed_type *T);
-int skip_constructor_privacy_key_status_timestamp (struct paramed_type *T);
-int skip_constructor_privacy_value_allow_contacts (struct paramed_type *T);
-int skip_constructor_privacy_value_allow_all (struct paramed_type *T);
-int skip_constructor_privacy_value_allow_users (struct paramed_type *T);
-int skip_constructor_privacy_value_disallow_contacts (struct paramed_type *T);
-int skip_constructor_privacy_value_disallow_all (struct paramed_type *T);
-int skip_constructor_privacy_value_disallow_users (struct paramed_type *T);
-int skip_constructor_received_notify_message (struct paramed_type *T);
-int skip_constructor_reply_keyboard_hide (struct paramed_type *T);
-int skip_constructor_reply_keyboard_force_reply (struct paramed_type *T);
-int skip_constructor_reply_keyboard_markup (struct paramed_type *T);
-int skip_constructor_res_p_q (struct paramed_type *T);
-int skip_constructor_send_message_typing_action (struct paramed_type *T);
-int skip_constructor_send_message_cancel_action (struct paramed_type *T);
-int skip_constructor_send_message_record_video_action (struct paramed_type *T);
-int skip_constructor_send_message_upload_video_action_l27 (struct paramed_type *T);
-int skip_constructor_send_message_upload_video_action (struct paramed_type *T);
-int skip_constructor_send_message_record_audio_action (struct paramed_type *T);
-int skip_constructor_send_message_upload_audio_action_l27 (struct paramed_type *T);
-int skip_constructor_send_message_upload_audio_action (struct paramed_type *T);
-int skip_constructor_send_message_upload_photo_action (struct paramed_type *T);
-int skip_constructor_send_message_upload_document_action_l27 (struct paramed_type *T);
-int skip_constructor_send_message_upload_document_action (struct paramed_type *T);
-int skip_constructor_send_message_geo_location_action (struct paramed_type *T);
-int skip_constructor_send_message_choose_contact_action (struct paramed_type *T);
-int skip_constructor_server_d_h_params_fail (struct paramed_type *T);
-int skip_constructor_server_d_h_params_ok (struct paramed_type *T);
-int skip_constructor_server_d_h_inner_data (struct paramed_type *T);
-int skip_constructor_dh_gen_ok (struct paramed_type *T);
-int skip_constructor_dh_gen_retry (struct paramed_type *T);
-int skip_constructor_dh_gen_fail (struct paramed_type *T);
-int skip_constructor_sticker_pack (struct paramed_type *T);
-int skip_constructor_sticker_set (struct paramed_type *T);
-int skip_constructor_string (struct paramed_type *T);
-int skip_constructor_update_new_message (struct paramed_type *T);
-int skip_constructor_update_message_i_d (struct paramed_type *T);
-int skip_constructor_update_delete_messages (struct paramed_type *T);
-int skip_constructor_update_user_typing (struct paramed_type *T);
-int skip_constructor_update_chat_user_typing (struct paramed_type *T);
-int skip_constructor_update_chat_participants (struct paramed_type *T);
-int skip_constructor_update_user_status (struct paramed_type *T);
-int skip_constructor_update_user_name (struct paramed_type *T);
-int skip_constructor_update_user_photo (struct paramed_type *T);
-int skip_constructor_update_contact_registered (struct paramed_type *T);
-int skip_constructor_update_contact_link (struct paramed_type *T);
-int skip_constructor_update_new_authorization (struct paramed_type *T);
-int skip_constructor_update_new_geo_chat_message (struct paramed_type *T);
-int skip_constructor_update_new_encrypted_message (struct paramed_type *T);
-int skip_constructor_update_encrypted_chat_typing (struct paramed_type *T);
-int skip_constructor_update_encryption (struct paramed_type *T);
-int skip_constructor_update_encrypted_messages_read (struct paramed_type *T);
-int skip_constructor_update_chat_participant_add (struct paramed_type *T);
-int skip_constructor_update_chat_participant_delete (struct paramed_type *T);
-int skip_constructor_update_dc_options (struct paramed_type *T);
-int skip_constructor_update_user_blocked (struct paramed_type *T);
-int skip_constructor_update_notify_settings (struct paramed_type *T);
-int skip_constructor_update_service_notification (struct paramed_type *T);
-int skip_constructor_update_privacy (struct paramed_type *T);
-int skip_constructor_update_user_phone (struct paramed_type *T);
-int skip_constructor_update_read_history_inbox (struct paramed_type *T);
-int skip_constructor_update_read_history_outbox (struct paramed_type *T);
-int skip_constructor_update_web_page (struct paramed_type *T);
-int skip_constructor_update_read_messages_contents (struct paramed_type *T);
-int skip_constructor_update_msg_update (struct paramed_type *T);
-int skip_constructor_updates_too_long (struct paramed_type *T);
-int skip_constructor_update_short_message (struct paramed_type *T);
-int skip_constructor_update_short_chat_message (struct paramed_type *T);
-int skip_constructor_update_short (struct paramed_type *T);
-int skip_constructor_updates_combined (struct paramed_type *T);
-int skip_constructor_updates (struct paramed_type *T);
-int skip_constructor_user_empty (struct paramed_type *T);
-int skip_constructor_user (struct paramed_type *T);
-int skip_constructor_user_full (struct paramed_type *T);
-int skip_constructor_user_profile_photo_empty (struct paramed_type *T);
-int skip_constructor_user_profile_photo (struct paramed_type *T);
-int skip_constructor_user_status_empty (struct paramed_type *T);
-int skip_constructor_user_status_online (struct paramed_type *T);
-int skip_constructor_user_status_offline (struct paramed_type *T);
-int skip_constructor_user_status_recently (struct paramed_type *T);
-int skip_constructor_user_status_last_week (struct paramed_type *T);
-int skip_constructor_user_status_last_month (struct paramed_type *T);
-int skip_constructor_vector (struct paramed_type *T);
-int skip_constructor_video_empty (struct paramed_type *T);
-int skip_constructor_video (struct paramed_type *T);
-int skip_constructor_video_l27 (struct paramed_type *T);
-int skip_constructor_wall_paper (struct paramed_type *T);
-int skip_constructor_wall_paper_solid (struct paramed_type *T);
-int skip_constructor_web_page_empty (struct paramed_type *T);
-int skip_constructor_web_page_pending (struct paramed_type *T);
-int skip_constructor_web_page (struct paramed_type *T);
-int skip_constructor_account_authorizations (struct paramed_type *T);
-int skip_constructor_account_no_password (struct paramed_type *T);
-int skip_constructor_account_password (struct paramed_type *T);
-int skip_constructor_account_password_input_settings (struct paramed_type *T);
-int skip_constructor_account_password_settings (struct paramed_type *T);
-int skip_constructor_account_privacy_rules (struct paramed_type *T);
-int skip_constructor_account_sent_change_phone_code (struct paramed_type *T);
-int skip_constructor_auth_authorization (struct paramed_type *T);
-int skip_constructor_auth_checked_phone (struct paramed_type *T);
-int skip_constructor_auth_exported_authorization (struct paramed_type *T);
-int skip_constructor_auth_password_recovery (struct paramed_type *T);
-int skip_constructor_auth_sent_code (struct paramed_type *T);
-int skip_constructor_auth_sent_app_code (struct paramed_type *T);
-int skip_constructor_binlog_encr_key (struct paramed_type *T);
-int skip_constructor_binlog_start (struct paramed_type *T);
-int skip_constructor_binlog_dc_option (struct paramed_type *T);
-int skip_constructor_binlog_dc_option_new (struct paramed_type *T);
-int skip_constructor_binlog_auth_key (struct paramed_type *T);
-int skip_constructor_binlog_default_dc (struct paramed_type *T);
-int skip_constructor_binlog_dc_signed (struct paramed_type *T);
-int skip_constructor_binlog_our_id (struct paramed_type *T);
-int skip_constructor_binlog_set_dh_params (struct paramed_type *T);
-int skip_constructor_binlog_set_pts (struct paramed_type *T);
-int skip_constructor_binlog_set_qts (struct paramed_type *T);
-int skip_constructor_binlog_set_date (struct paramed_type *T);
-int skip_constructor_binlog_set_seq (struct paramed_type *T);
-int skip_constructor_binlog_encr_chat_delete (struct paramed_type *T);
-int skip_constructor_binlog_encr_chat_new (struct paramed_type *T);
-int skip_constructor_binlog_encr_chat_exchange_new (struct paramed_type *T);
-int skip_constructor_binlog_user_delete (struct paramed_type *T);
-int skip_constructor_binlog_user_new (struct paramed_type *T);
-int skip_constructor_binlog_chat_new (struct paramed_type *T);
-int skip_constructor_binlog_chat_add_participant (struct paramed_type *T);
-int skip_constructor_binlog_chat_del_participant (struct paramed_type *T);
-int skip_constructor_binlog_set_msg_id (struct paramed_type *T);
-int skip_constructor_binlog_message_delete (struct paramed_type *T);
-int skip_constructor_binlog_message_new (struct paramed_type *T);
-int skip_constructor_binlog_message_encr_new (struct paramed_type *T);
-int skip_constructor_binlog_msg_update (struct paramed_type *T);
-int skip_constructor_binlog_reset_authorization (struct paramed_type *T);
-int skip_constructor_contacts_blocked (struct paramed_type *T);
-int skip_constructor_contacts_blocked_slice (struct paramed_type *T);
-int skip_constructor_contacts_contacts_not_modified (struct paramed_type *T);
-int skip_constructor_contacts_contacts (struct paramed_type *T);
-int skip_constructor_contacts_found (struct paramed_type *T);
-int skip_constructor_contacts_imported_contacts (struct paramed_type *T);
-int skip_constructor_contacts_link (struct paramed_type *T);
-int skip_constructor_contacts_suggested (struct paramed_type *T);
-int skip_constructor_geochats_located (struct paramed_type *T);
-int skip_constructor_geochats_messages (struct paramed_type *T);
-int skip_constructor_geochats_messages_slice (struct paramed_type *T);
-int skip_constructor_geochats_stated_message (struct paramed_type *T);
-int skip_constructor_help_app_update (struct paramed_type *T);
-int skip_constructor_help_no_app_update (struct paramed_type *T);
-int skip_constructor_help_invite_text (struct paramed_type *T);
-int skip_constructor_help_support (struct paramed_type *T);
-int skip_constructor_messages_affected_history (struct paramed_type *T);
-int skip_constructor_messages_affected_messages (struct paramed_type *T);
-int skip_constructor_messages_all_stickers_not_modified (struct paramed_type *T);
-int skip_constructor_messages_all_stickers (struct paramed_type *T);
-int skip_constructor_messages_chat_full (struct paramed_type *T);
-int skip_constructor_messages_chats (struct paramed_type *T);
-int skip_constructor_messages_dh_config_not_modified (struct paramed_type *T);
-int skip_constructor_messages_dh_config (struct paramed_type *T);
-int skip_constructor_messages_dialogs (struct paramed_type *T);
-int skip_constructor_messages_dialogs_slice (struct paramed_type *T);
-int skip_constructor_messages_message_empty (struct paramed_type *T);
-int skip_constructor_messages_messages (struct paramed_type *T);
-int skip_constructor_messages_messages_slice (struct paramed_type *T);
-int skip_constructor_messages_sent_encrypted_message (struct paramed_type *T);
-int skip_constructor_messages_sent_encrypted_file (struct paramed_type *T);
-int skip_constructor_messages_sent_message (struct paramed_type *T);
-int skip_constructor_messages_sent_message_link (struct paramed_type *T);
-int skip_constructor_messages_sticker_set (struct paramed_type *T);
-int skip_constructor_messages_stickers_not_modified (struct paramed_type *T);
-int skip_constructor_messages_stickers (struct paramed_type *T);
-int skip_constructor_photos_photo (struct paramed_type *T);
-int skip_constructor_photos_photos (struct paramed_type *T);
-int skip_constructor_photos_photos_slice (struct paramed_type *T);
-int skip_constructor_storage_file_unknown (struct paramed_type *T);
-int skip_constructor_storage_file_jpeg (struct paramed_type *T);
-int skip_constructor_storage_file_gif (struct paramed_type *T);
-int skip_constructor_storage_file_png (struct paramed_type *T);
-int skip_constructor_storage_file_pdf (struct paramed_type *T);
-int skip_constructor_storage_file_mp3 (struct paramed_type *T);
-int skip_constructor_storage_file_mov (struct paramed_type *T);
-int skip_constructor_storage_file_partial (struct paramed_type *T);
-int skip_constructor_storage_file_mp4 (struct paramed_type *T);
-int skip_constructor_storage_file_webp (struct paramed_type *T);
-int skip_constructor_updates_difference_empty (struct paramed_type *T);
-int skip_constructor_updates_difference (struct paramed_type *T);
-int skip_constructor_updates_difference_slice (struct paramed_type *T);
-int skip_constructor_updates_state (struct paramed_type *T);
-int skip_constructor_upload_file (struct paramed_type *T);
-int skip_type_account_days_t_t_l (struct paramed_type *T);
-int skip_type_bare_account_days_t_t_l (struct paramed_type *T);
-int skip_type_audio (struct paramed_type *T);
-int skip_type_bare_audio (struct paramed_type *T);
-int skip_type_authorization (struct paramed_type *T);
-int skip_type_bare_authorization (struct paramed_type *T);
-int skip_type_bool (struct paramed_type *T);
-int skip_type_bare_bool (struct paramed_type *T);
-int skip_type_bot_command (struct paramed_type *T);
-int skip_type_bare_bot_command (struct paramed_type *T);
-int skip_type_bot_info (struct paramed_type *T);
-int skip_type_bare_bot_info (struct paramed_type *T);
-int skip_type_bytes (struct paramed_type *T);
-int skip_type_bare_bytes (struct paramed_type *T);
-int skip_type_chat (struct paramed_type *T);
-int skip_type_bare_chat (struct paramed_type *T);
-int skip_type_chat_full (struct paramed_type *T);
-int skip_type_bare_chat_full (struct paramed_type *T);
-int skip_type_chat_invite (struct paramed_type *T);
-int skip_type_bare_chat_invite (struct paramed_type *T);
-int skip_type_chat_located (struct paramed_type *T);
-int skip_type_bare_chat_located (struct paramed_type *T);
-int skip_type_chat_participant (struct paramed_type *T);
-int skip_type_bare_chat_participant (struct paramed_type *T);
-int skip_type_chat_participants (struct paramed_type *T);
-int skip_type_bare_chat_participants (struct paramed_type *T);
-int skip_type_chat_photo (struct paramed_type *T);
-int skip_type_bare_chat_photo (struct paramed_type *T);
-int skip_type_client_d_h_inner_data (struct paramed_type *T);
-int skip_type_bare_client_d_h_inner_data (struct paramed_type *T);
-int skip_type_config (struct paramed_type *T);
-int skip_type_bare_config (struct paramed_type *T);
-int skip_type_contact (struct paramed_type *T);
-int skip_type_bare_contact (struct paramed_type *T);
-int skip_type_contact_blocked (struct paramed_type *T);
-int skip_type_bare_contact_blocked (struct paramed_type *T);
-int skip_type_contact_found (struct paramed_type *T);
-int skip_type_bare_contact_found (struct paramed_type *T);
-int skip_type_contact_link (struct paramed_type *T);
-int skip_type_bare_contact_link (struct paramed_type *T);
-int skip_type_contact_status (struct paramed_type *T);
-int skip_type_bare_contact_status (struct paramed_type *T);
-int skip_type_contact_suggested (struct paramed_type *T);
-int skip_type_bare_contact_suggested (struct paramed_type *T);
-int skip_type_dc_option (struct paramed_type *T);
-int skip_type_bare_dc_option (struct paramed_type *T);
-int skip_type_decrypted_message (struct paramed_type *T);
-int skip_type_bare_decrypted_message (struct paramed_type *T);
-int skip_type_decrypted_message_action (struct paramed_type *T);
-int skip_type_bare_decrypted_message_action (struct paramed_type *T);
-int skip_type_decrypted_message_layer (struct paramed_type *T);
-int skip_type_bare_decrypted_message_layer (struct paramed_type *T);
-int skip_type_decrypted_message_media (struct paramed_type *T);
-int skip_type_bare_decrypted_message_media (struct paramed_type *T);
-int skip_type_dialog (struct paramed_type *T);
-int skip_type_bare_dialog (struct paramed_type *T);
-int skip_type_disabled_feature (struct paramed_type *T);
-int skip_type_bare_disabled_feature (struct paramed_type *T);
-int skip_type_document (struct paramed_type *T);
-int skip_type_bare_document (struct paramed_type *T);
-int skip_type_document_attribute (struct paramed_type *T);
-int skip_type_bare_document_attribute (struct paramed_type *T);
-int skip_type_double (struct paramed_type *T);
-int skip_type_bare_double (struct paramed_type *T);
-int skip_type_encrypted_chat (struct paramed_type *T);
-int skip_type_bare_encrypted_chat (struct paramed_type *T);
-int skip_type_encrypted_file (struct paramed_type *T);
-int skip_type_bare_encrypted_file (struct paramed_type *T);
-int skip_type_encrypted_message (struct paramed_type *T);
-int skip_type_bare_encrypted_message (struct paramed_type *T);
-int skip_type_error (struct paramed_type *T);
-int skip_type_bare_error (struct paramed_type *T);
-int skip_type_exported_chat_invite (struct paramed_type *T);
-int skip_type_bare_exported_chat_invite (struct paramed_type *T);
-int skip_type_file_location (struct paramed_type *T);
-int skip_type_bare_file_location (struct paramed_type *T);
-int skip_type_geo_chat_message (struct paramed_type *T);
-int skip_type_bare_geo_chat_message (struct paramed_type *T);
-int skip_type_geo_point (struct paramed_type *T);
-int skip_type_bare_geo_point (struct paramed_type *T);
-int skip_type_imported_contact (struct paramed_type *T);
-int skip_type_bare_imported_contact (struct paramed_type *T);
-int skip_type_input_app_event (struct paramed_type *T);
-int skip_type_bare_input_app_event (struct paramed_type *T);
-int skip_type_input_audio (struct paramed_type *T);
-int skip_type_bare_input_audio (struct paramed_type *T);
-int skip_type_input_chat_photo (struct paramed_type *T);
-int skip_type_bare_input_chat_photo (struct paramed_type *T);
-int skip_type_input_contact (struct paramed_type *T);
-int skip_type_bare_input_contact (struct paramed_type *T);
-int skip_type_input_document (struct paramed_type *T);
-int skip_type_bare_input_document (struct paramed_type *T);
-int skip_type_input_encrypted_chat (struct paramed_type *T);
-int skip_type_bare_input_encrypted_chat (struct paramed_type *T);
-int skip_type_input_encrypted_file (struct paramed_type *T);
-int skip_type_bare_input_encrypted_file (struct paramed_type *T);
-int skip_type_input_file (struct paramed_type *T);
-int skip_type_bare_input_file (struct paramed_type *T);
-int skip_type_input_file_location (struct paramed_type *T);
-int skip_type_bare_input_file_location (struct paramed_type *T);
-int skip_type_input_geo_chat (struct paramed_type *T);
-int skip_type_bare_input_geo_chat (struct paramed_type *T);
-int skip_type_input_geo_point (struct paramed_type *T);
-int skip_type_bare_input_geo_point (struct paramed_type *T);
-int skip_type_input_media (struct paramed_type *T);
-int skip_type_bare_input_media (struct paramed_type *T);
-int skip_type_input_notify_peer (struct paramed_type *T);
-int skip_type_bare_input_notify_peer (struct paramed_type *T);
-int skip_type_input_peer (struct paramed_type *T);
-int skip_type_bare_input_peer (struct paramed_type *T);
-int skip_type_input_peer_notify_events (struct paramed_type *T);
-int skip_type_bare_input_peer_notify_events (struct paramed_type *T);
-int skip_type_input_peer_notify_settings (struct paramed_type *T);
-int skip_type_bare_input_peer_notify_settings (struct paramed_type *T);
-int skip_type_input_photo (struct paramed_type *T);
-int skip_type_bare_input_photo (struct paramed_type *T);
-int skip_type_input_photo_crop (struct paramed_type *T);
-int skip_type_bare_input_photo_crop (struct paramed_type *T);
-int skip_type_input_privacy_key (struct paramed_type *T);
-int skip_type_bare_input_privacy_key (struct paramed_type *T);
-int skip_type_input_privacy_rule (struct paramed_type *T);
-int skip_type_bare_input_privacy_rule (struct paramed_type *T);
-int skip_type_input_sticker_set (struct paramed_type *T);
-int skip_type_bare_input_sticker_set (struct paramed_type *T);
-int skip_type_input_user (struct paramed_type *T);
-int skip_type_bare_input_user (struct paramed_type *T);
-int skip_type_input_video (struct paramed_type *T);
-int skip_type_bare_input_video (struct paramed_type *T);
-int skip_type_int (struct paramed_type *T);
-int skip_type_bare_int (struct paramed_type *T);
-int skip_type_int128 (struct paramed_type *T);
-int skip_type_bare_int128 (struct paramed_type *T);
-int skip_type_int256 (struct paramed_type *T);
-int skip_type_bare_int256 (struct paramed_type *T);
-int skip_type_keyboard_button (struct paramed_type *T);
-int skip_type_bare_keyboard_button (struct paramed_type *T);
-int skip_type_keyboard_button_row (struct paramed_type *T);
-int skip_type_bare_keyboard_button_row (struct paramed_type *T);
-int skip_type_long (struct paramed_type *T);
-int skip_type_bare_long (struct paramed_type *T);
-int skip_type_message (struct paramed_type *T);
-int skip_type_bare_message (struct paramed_type *T);
-int skip_type_message_action (struct paramed_type *T);
-int skip_type_bare_message_action (struct paramed_type *T);
-int skip_type_message_media (struct paramed_type *T);
-int skip_type_bare_message_media (struct paramed_type *T);
-int skip_type_messages_filter (struct paramed_type *T);
-int skip_type_bare_messages_filter (struct paramed_type *T);
-int skip_type_nearest_dc (struct paramed_type *T);
-int skip_type_bare_nearest_dc (struct paramed_type *T);
-int skip_type_notify_peer (struct paramed_type *T);
-int skip_type_bare_notify_peer (struct paramed_type *T);
-int skip_type_null (struct paramed_type *T);
-int skip_type_bare_null (struct paramed_type *T);
-int skip_type_p_q_inner_data (struct paramed_type *T);
-int skip_type_bare_p_q_inner_data (struct paramed_type *T);
-int skip_type_peer (struct paramed_type *T);
-int skip_type_bare_peer (struct paramed_type *T);
-int skip_type_peer_notify_events (struct paramed_type *T);
-int skip_type_bare_peer_notify_events (struct paramed_type *T);
-int skip_type_peer_notify_settings (struct paramed_type *T);
-int skip_type_bare_peer_notify_settings (struct paramed_type *T);
-int skip_type_photo (struct paramed_type *T);
-int skip_type_bare_photo (struct paramed_type *T);
-int skip_type_photo_size (struct paramed_type *T);
-int skip_type_bare_photo_size (struct paramed_type *T);
-int skip_type_privacy_key (struct paramed_type *T);
-int skip_type_bare_privacy_key (struct paramed_type *T);
-int skip_type_privacy_rule (struct paramed_type *T);
-int skip_type_bare_privacy_rule (struct paramed_type *T);
-int skip_type_received_notify_message (struct paramed_type *T);
-int skip_type_bare_received_notify_message (struct paramed_type *T);
-int skip_type_reply_markup (struct paramed_type *T);
-int skip_type_bare_reply_markup (struct paramed_type *T);
-int skip_type_res_p_q (struct paramed_type *T);
-int skip_type_bare_res_p_q (struct paramed_type *T);
-int skip_type_send_message_action (struct paramed_type *T);
-int skip_type_bare_send_message_action (struct paramed_type *T);
-int skip_type_server_d_h_params (struct paramed_type *T);
-int skip_type_bare_server_d_h_params (struct paramed_type *T);
-int skip_type_server_d_h_inner_data (struct paramed_type *T);
-int skip_type_bare_server_d_h_inner_data (struct paramed_type *T);
-int skip_type_set_client_d_h_params_answer (struct paramed_type *T);
-int skip_type_bare_set_client_d_h_params_answer (struct paramed_type *T);
-int skip_type_sticker_pack (struct paramed_type *T);
-int skip_type_bare_sticker_pack (struct paramed_type *T);
-int skip_type_sticker_set (struct paramed_type *T);
-int skip_type_bare_sticker_set (struct paramed_type *T);
-int skip_type_string (struct paramed_type *T);
-int skip_type_bare_string (struct paramed_type *T);
-int skip_type_update (struct paramed_type *T);
-int skip_type_bare_update (struct paramed_type *T);
-int skip_type_updates (struct paramed_type *T);
-int skip_type_bare_updates (struct paramed_type *T);
-int skip_type_user (struct paramed_type *T);
-int skip_type_bare_user (struct paramed_type *T);
-int skip_type_user_full (struct paramed_type *T);
-int skip_type_bare_user_full (struct paramed_type *T);
-int skip_type_user_profile_photo (struct paramed_type *T);
-int skip_type_bare_user_profile_photo (struct paramed_type *T);
-int skip_type_user_status (struct paramed_type *T);
-int skip_type_bare_user_status (struct paramed_type *T);
-int skip_type_vector (struct paramed_type *T);
-int skip_type_bare_vector (struct paramed_type *T);
-int skip_type_video (struct paramed_type *T);
-int skip_type_bare_video (struct paramed_type *T);
-int skip_type_wall_paper (struct paramed_type *T);
-int skip_type_bare_wall_paper (struct paramed_type *T);
-int skip_type_web_page (struct paramed_type *T);
-int skip_type_bare_web_page (struct paramed_type *T);
-int skip_type_account_authorizations (struct paramed_type *T);
-int skip_type_bare_account_authorizations (struct paramed_type *T);
-int skip_type_account_password (struct paramed_type *T);
-int skip_type_bare_account_password (struct paramed_type *T);
-int skip_type_account_password_input_settings (struct paramed_type *T);
-int skip_type_bare_account_password_input_settings (struct paramed_type *T);
-int skip_type_account_password_settings (struct paramed_type *T);
-int skip_type_bare_account_password_settings (struct paramed_type *T);
-int skip_type_account_privacy_rules (struct paramed_type *T);
-int skip_type_bare_account_privacy_rules (struct paramed_type *T);
-int skip_type_account_sent_change_phone_code (struct paramed_type *T);
-int skip_type_bare_account_sent_change_phone_code (struct paramed_type *T);
-int skip_type_auth_authorization (struct paramed_type *T);
-int skip_type_bare_auth_authorization (struct paramed_type *T);
-int skip_type_auth_checked_phone (struct paramed_type *T);
-int skip_type_bare_auth_checked_phone (struct paramed_type *T);
-int skip_type_auth_exported_authorization (struct paramed_type *T);
-int skip_type_bare_auth_exported_authorization (struct paramed_type *T);
-int skip_type_auth_password_recovery (struct paramed_type *T);
-int skip_type_bare_auth_password_recovery (struct paramed_type *T);
-int skip_type_auth_sent_code (struct paramed_type *T);
-int skip_type_bare_auth_sent_code (struct paramed_type *T);
-int skip_type_binlog_encr_key (struct paramed_type *T);
-int skip_type_bare_binlog_encr_key (struct paramed_type *T);
-int skip_type_binlog_update (struct paramed_type *T);
-int skip_type_bare_binlog_update (struct paramed_type *T);
-int skip_type_contacts_blocked (struct paramed_type *T);
-int skip_type_bare_contacts_blocked (struct paramed_type *T);
-int skip_type_contacts_contacts (struct paramed_type *T);
-int skip_type_bare_contacts_contacts (struct paramed_type *T);
-int skip_type_contacts_found (struct paramed_type *T);
-int skip_type_bare_contacts_found (struct paramed_type *T);
-int skip_type_contacts_imported_contacts (struct paramed_type *T);
-int skip_type_bare_contacts_imported_contacts (struct paramed_type *T);
-int skip_type_contacts_link (struct paramed_type *T);
-int skip_type_bare_contacts_link (struct paramed_type *T);
-int skip_type_contacts_suggested (struct paramed_type *T);
-int skip_type_bare_contacts_suggested (struct paramed_type *T);
-int skip_type_geochats_located (struct paramed_type *T);
-int skip_type_bare_geochats_located (struct paramed_type *T);
-int skip_type_geochats_messages (struct paramed_type *T);
-int skip_type_bare_geochats_messages (struct paramed_type *T);
-int skip_type_geochats_stated_message (struct paramed_type *T);
-int skip_type_bare_geochats_stated_message (struct paramed_type *T);
-int skip_type_help_app_update (struct paramed_type *T);
-int skip_type_bare_help_app_update (struct paramed_type *T);
-int skip_type_help_invite_text (struct paramed_type *T);
-int skip_type_bare_help_invite_text (struct paramed_type *T);
-int skip_type_help_support (struct paramed_type *T);
-int skip_type_bare_help_support (struct paramed_type *T);
-int skip_type_messages_affected_history (struct paramed_type *T);
-int skip_type_bare_messages_affected_history (struct paramed_type *T);
-int skip_type_messages_affected_messages (struct paramed_type *T);
-int skip_type_bare_messages_affected_messages (struct paramed_type *T);
-int skip_type_messages_all_stickers (struct paramed_type *T);
-int skip_type_bare_messages_all_stickers (struct paramed_type *T);
-int skip_type_messages_chat_full (struct paramed_type *T);
-int skip_type_bare_messages_chat_full (struct paramed_type *T);
-int skip_type_messages_chats (struct paramed_type *T);
-int skip_type_bare_messages_chats (struct paramed_type *T);
-int skip_type_messages_dh_config (struct paramed_type *T);
-int skip_type_bare_messages_dh_config (struct paramed_type *T);
-int skip_type_messages_dialogs (struct paramed_type *T);
-int skip_type_bare_messages_dialogs (struct paramed_type *T);
-int skip_type_messages_message (struct paramed_type *T);
-int skip_type_bare_messages_message (struct paramed_type *T);
-int skip_type_messages_messages (struct paramed_type *T);
-int skip_type_bare_messages_messages (struct paramed_type *T);
-int skip_type_messages_sent_encrypted_message (struct paramed_type *T);
-int skip_type_bare_messages_sent_encrypted_message (struct paramed_type *T);
-int skip_type_messages_sent_message (struct paramed_type *T);
-int skip_type_bare_messages_sent_message (struct paramed_type *T);
-int skip_type_messages_sticker_set (struct paramed_type *T);
-int skip_type_bare_messages_sticker_set (struct paramed_type *T);
-int skip_type_messages_stickers (struct paramed_type *T);
-int skip_type_bare_messages_stickers (struct paramed_type *T);
-int skip_type_photos_photo (struct paramed_type *T);
-int skip_type_bare_photos_photo (struct paramed_type *T);
-int skip_type_photos_photos (struct paramed_type *T);
-int skip_type_bare_photos_photos (struct paramed_type *T);
-int skip_type_storage_file_type (struct paramed_type *T);
-int skip_type_bare_storage_file_type (struct paramed_type *T);
-int skip_type_updates_difference (struct paramed_type *T);
-int skip_type_bare_updates_difference (struct paramed_type *T);
-int skip_type_updates_state (struct paramed_type *T);
-int skip_type_bare_updates_state (struct paramed_type *T);
-int skip_type_upload_file (struct paramed_type *T);
-int skip_type_bare_upload_file (struct paramed_type *T);
-int skip_type_any (struct paramed_type *T);
diff --git a/protocols/Telegram/src/tgl/auto/auto-store-ds.c b/protocols/Telegram/src/tgl/auto/auto-store-ds.c
deleted file mode 100644
index fcc84539db..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-store-ds.c
+++ /dev/null
@@ -1,10207 +0,0 @@
-#ifdef _MSC_VER
-#include "../auto.h"
-#include "auto-store-ds.h"
-#include "auto-skip.h"
-#include "auto-types.h"
-#include "../mtproto-common.h"
-#else
-#include "auto.h"
-#include "auto/auto-store-ds.h"
-#include "auto/auto-skip.h"
-#include "auto/auto-types.h"
-#include "auto-static-store-ds.c"
-#include "mtproto-common.h"
-#endif
-#include <assert.h>
-void store_ds_constructor_account_days_t_t_l (struct tl_ds_account_days_t_t_l *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb8d0afdf && T->type->name != 0x472f5020)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->days, field1);
-}
-void store_ds_constructor_audio_empty (struct tl_ds_audio *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
-}
-void store_ds_constructor_audio (struct tl_ds_audio *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->mime_type, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc_id, field8);
-}
-void store_ds_constructor_authorization (struct tl_ds_authorization *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bf2e6f6 && T->type->name != 0x840d1909)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->hash, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->flags, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->device_model, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->platform, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->system_version, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->api_id, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->app_name, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->app_version, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date_created, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date_active, field10);
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->ip, field11);
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->country, field12);
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->region, field13);
-}
-void store_ds_constructor_bool_false (struct tl_ds_bool *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return; }
-}
-void store_ds_constructor_bool_true (struct tl_ds_bool *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return; }
-}
-void store_ds_constructor_bot_command (struct tl_ds_bot_command *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->command, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->description, field2);
-}
-void store_ds_constructor_bot_command_old (struct tl_ds_bot_command *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->command, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->params, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->description, field3);
-}
-void store_ds_constructor_bot_info_empty (struct tl_ds_bot_info *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return; }
-}
-void store_ds_constructor_bot_info (struct tl_ds_bot_info *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->version, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->share_text, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->description, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x75e7ea6c, .id = "BotCommand", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->commands, field5);
-}
-void store_ds_constructor_bytes (struct tl_ds_string *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0ee1379f && T->type->name != 0xf11ec860)) { return; }
- out_cstring (D->data, D->len);
-}
-void store_ds_constructor_chat_empty (struct tl_ds_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
-}
-void store_ds_constructor_chat (struct tl_ds_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_chat_photo (D->photo, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->participants_count, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->left, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->version, field7);
-}
-void store_ds_constructor_chat_forbidden (struct tl_ds_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field3);
-}
-void store_ds_constructor_geo_chat (struct tl_ds_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->address, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->venue, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_geo_point (D->geo, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_chat_photo (D->photo, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->participants_count, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->checked_in, field10);
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->version, field11);
-}
-void store_ds_constructor_chat_full (struct tl_ds_chat_full *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02a614 && T->type->name != 0xd1fd59eb)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_chat_participants (D->participants, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo (D->chat_photo, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_peer_notify_settings (D->notify_settings, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f132d5, .id = "ExportedChatInvite", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_exported_chat_invite (D->exported_invite, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->bot_info, field6);
-}
-void store_ds_constructor_chat_invite_already (struct tl_ds_chat_invite *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_chat (D->chat, field1);
-}
-void store_ds_constructor_chat_invite (struct tl_ds_chat_invite *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field1);
-}
-void store_ds_constructor_chat_located (struct tl_ds_chat_located *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3631cf4c && T->type->name != 0xc9ce30b3)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->distance, field2);
-}
-void store_ds_constructor_chat_participant (struct tl_ds_chat_participant *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc8d7493e && T->type->name != 0x3728b6c1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->inviter_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field3);
-}
-void store_ds_constructor_chat_participants_forbidden (struct tl_ds_chat_participants *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
-}
-void store_ds_constructor_chat_participants (struct tl_ds_chat_participants *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->admin_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->participants, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->version, field4);
-}
-void store_ds_constructor_chat_photo_empty (struct tl_ds_chat_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return; }
-}
-void store_ds_constructor_chat_photo (struct tl_ds_chat_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_file_location (D->photo_small, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_file_location (D->photo_big, field2);
-}
-void store_ds_constructor_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6643b654 && T->type->name != 0x99bc49ab)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->retry_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->g_b, field4);
-}
-void store_ds_constructor_config (struct tl_ds_config *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e32b894 && T->type->name != 0xb1cd476b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->expires, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->test_mode, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->this_dc, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->dc_options, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_size_max, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->broadcast_size_max, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->forwarded_count_max, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->online_update_period_ms, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->offline_blur_timeout_ms, field10);
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->offline_idle_timeout_ms, field11);
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->online_cloud_timeout_ms, field12);
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->notify_cloud_delay_ms, field13);
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->notify_default_delay_ms, field14);
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_big_size, field15);
- struct paramed_type *field16 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->push_chat_period_ms, field16);
- struct paramed_type *field17 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->push_chat_limit, field17);
- struct paramed_type *field18 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae636f24, .id = "DisabledFeature", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->disabled_features, field18);
-}
-void store_ds_constructor_contact (struct tl_ds_contact *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf911c994 && T->type->name != 0x06ee366b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->mutual, field2);
-}
-void store_ds_constructor_contact_blocked (struct tl_ds_contact_blocked *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x561bc879 && T->type->name != 0xa9e43786)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field2);
-}
-void store_ds_constructor_contact_found (struct tl_ds_contact_found *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xea879f95 && T->type->name != 0x1578606a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
-}
-void store_ds_constructor_contact_link_unknown (struct tl_ds_contact_link *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return; }
-}
-void store_ds_constructor_contact_link_none (struct tl_ds_contact_link *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return; }
-}
-void store_ds_constructor_contact_link_has_phone (struct tl_ds_contact_link *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return; }
-}
-void store_ds_constructor_contact_link_contact (struct tl_ds_contact_link *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return; }
-}
-void store_ds_constructor_contact_status (struct tl_ds_contact_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd3680c61 && T->type->name != 0x2c97f39e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_user_status (D->status, field2);
-}
-void store_ds_constructor_contact_suggested (struct tl_ds_contact_suggested *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3de191a1 && T->type->name != 0xc21e6e5e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->mutual_contacts, field2);
-}
-void store_ds_constructor_dc_option_l28 (struct tl_ds_dc_option *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->hostname, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->ip_address, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->port, field4);
-}
-void store_ds_constructor_dc_option (struct tl_ds_dc_option *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->flags, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->ip_address, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->port, field4);
-}
-void store_ds_constructor_decrypted_message (struct tl_ds_decrypted_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->random_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->ttl, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->message, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_decrypted_message_media (D->media, field4);
-}
-void store_ds_constructor_decrypted_message_service (struct tl_ds_decrypted_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->random_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_decrypted_message_action (D->action, field2);
-}
-void store_ds_constructor_decrypted_message_action_set_message_t_t_l (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->ttl_seconds, field1);
-}
-void store_ds_constructor_decrypted_message_action_read_messages (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->random_ids, field1);
-}
-void store_ds_constructor_decrypted_message_action_delete_messages (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->random_ids, field1);
-}
-void store_ds_constructor_decrypted_message_action_screenshot_messages (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->random_ids, field1);
-}
-void store_ds_constructor_decrypted_message_action_flush_history (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
-}
-void store_ds_constructor_decrypted_message_action_resend (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->start_seq_no, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->end_seq_no, field2);
-}
-void store_ds_constructor_decrypted_message_action_notify_layer (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->layer, field1);
-}
-void store_ds_constructor_decrypted_message_action_typing (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_send_message_action (D->action, field1);
-}
-void store_ds_constructor_decrypted_message_action_request_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->exchange_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->g_a, field2);
-}
-void store_ds_constructor_decrypted_message_action_accept_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->exchange_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->g_b, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->key_fingerprint, field3);
-}
-void store_ds_constructor_decrypted_message_action_abort_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->exchange_id, field1);
-}
-void store_ds_constructor_decrypted_message_action_commit_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->exchange_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->key_fingerprint, field2);
-}
-void store_ds_constructor_decrypted_message_action_noop (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return; }
-}
-void store_ds_constructor_decrypted_message_layer (struct tl_ds_decrypted_message_layer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1be31789 && T->type->name != 0xe41ce876)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->random_bytes, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->layer, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->in_seq_no, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->out_seq_no, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x535b7918, .id = "DecryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_decrypted_message (D->message, field5);
-}
-void store_ds_constructor_decrypted_message_media_empty (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
-}
-void store_ds_constructor_decrypted_message_media_photo (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->str_thumb, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->thumb_w, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->thumb_h, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->w, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->h, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->key, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->iv, field8);
-}
-void store_ds_constructor_decrypted_message_media_geo_point (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_double (D->latitude, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_double (D->longitude, field2);
-}
-void store_ds_constructor_decrypted_message_media_contact (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->phone_number, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->first_name, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->last_name, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field4);
-}
-void store_ds_constructor_decrypted_message_media_document (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->str_thumb, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->thumb_w, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->thumb_h, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->file_name, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->mime_type, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->key, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->iv, field8);
-}
-void store_ds_constructor_decrypted_message_media_video (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->str_thumb, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->thumb_w, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->thumb_h, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->mime_type, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->w, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->h, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->key, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->iv, field10);
-}
-void store_ds_constructor_decrypted_message_media_audio (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->mime_type, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->key, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->iv, field5);
-}
-void store_ds_constructor_decrypted_message_media_external_document (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->mime_type, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo_size (D->thumb, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc_id, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->attributes, field8);
-}
-void store_ds_constructor_decrypted_message_media_video_l12 (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->str_thumb, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->thumb_w, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->thumb_h, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->w, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->h, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->key, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->iv, field9);
-}
-void store_ds_constructor_decrypted_message_media_audio_l12 (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->key, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->iv, field4);
-}
-void store_ds_constructor_dialog (struct tl_ds_dialog *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc1dd804a && T->type->name != 0x3e227fb5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_peer (D->peer, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->top_message, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->read_inbox_max_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->unread_count, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_peer_notify_settings (D->notify_settings, field5);
-}
-void store_ds_constructor_disabled_feature (struct tl_ds_disabled_feature *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae636f24 && T->type->name != 0x519c90db)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->feature, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->description, field2);
-}
-void store_ds_constructor_document_empty (struct tl_ds_document *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
-}
-void store_ds_constructor_document (struct tl_ds_document *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->mime_type, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo_size (D->thumb, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc_id, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->attributes, field8);
-}
-void store_ds_constructor_document_l19 (struct tl_ds_document *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->file_name, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->mime_type, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo_size (D->thumb, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc_id, field9);
-}
-void store_ds_constructor_document_attribute_image_size (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->w, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->h, field2);
-}
-void store_ds_constructor_document_attribute_animated (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
-}
-void store_ds_constructor_document_attribute_sticker_l28 (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->alt, field1);
-}
-void store_ds_constructor_document_attribute_sticker (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->alt, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_sticker_set (D->stickerset, field2);
-}
-void store_ds_constructor_document_attribute_video (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->w, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->h, field3);
-}
-void store_ds_constructor_document_attribute_audio (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field1);
-}
-void store_ds_constructor_document_attribute_filename (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->file_name, field1);
-}
-void store_ds_constructor_double (double *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2210c154 && T->type->name != 0xddef3eab)) { return; }
- out_double (*D);
-}
-void store_ds_constructor_encrypted_chat_empty (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
-}
-void store_ds_constructor_encrypted_chat_waiting (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->admin_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->participant_id, field5);
-}
-void store_ds_constructor_encrypted_chat_requested (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->admin_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->participant_id, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->g_a, field6);
-}
-void store_ds_constructor_encrypted_chat (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->admin_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->participant_id, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->g_a_or_b, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->key_fingerprint, field7);
-}
-void store_ds_constructor_encrypted_chat_discarded (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
-}
-void store_ds_constructor_encrypted_file_empty (struct tl_ds_encrypted_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return; }
-}
-void store_ds_constructor_encrypted_file (struct tl_ds_encrypted_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->key_fingerprint, field5);
-}
-void store_ds_constructor_encrypted_message (struct tl_ds_encrypted_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->random_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->bytes, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_encrypted_file (D->file, field5);
-}
-void store_ds_constructor_encrypted_message_service (struct tl_ds_encrypted_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->random_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->bytes, field4);
-}
-void store_ds_constructor_error (struct tl_ds_error *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc4b9f9bb && T->type->name != 0x3b460644)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->code, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->text, field2);
-}
-void store_ds_constructor_chat_invite_empty (struct tl_ds_exported_chat_invite *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return; }
-}
-void store_ds_constructor_chat_invite_exported (struct tl_ds_exported_chat_invite *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->link, field1);
-}
-void store_ds_constructor_file_location_unavailable (struct tl_ds_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->volume_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->local_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->secret, field3);
-}
-void store_ds_constructor_file_location (struct tl_ds_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->volume_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->local_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->secret, field4);
-}
-void store_ds_constructor_geo_chat_message_empty (struct tl_ds_geo_chat_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
-}
-void store_ds_constructor_geo_chat_message (struct tl_ds_geo_chat_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->from_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->message, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_message_media (D->media, field6);
-}
-void store_ds_constructor_geo_chat_message_service (struct tl_ds_geo_chat_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->from_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_message_action (D->action, field5);
-}
-void store_ds_constructor_geo_point_empty (struct tl_ds_geo_point *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return; }
-}
-void store_ds_constructor_geo_point (struct tl_ds_geo_point *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_double (D->longitude, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_double (D->latitude, field2);
-}
-void store_ds_constructor_imported_contact (struct tl_ds_imported_contact *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd0028438 && T->type->name != 0x2ffd7bc7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->client_id, field2);
-}
-void store_ds_constructor_input_app_event (struct tl_ds_input_app_event *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x770656a8 && T->type->name != 0x88f9a957)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_double (D->time, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->type, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->peer, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->data, field4);
-}
-void store_ds_constructor_input_audio_empty (struct tl_ds_input_audio *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return; }
-}
-void store_ds_constructor_input_audio (struct tl_ds_input_audio *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_chat_photo_empty (struct tl_ds_input_chat_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return; }
-}
-void store_ds_constructor_input_chat_uploaded_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_photo_crop (D->crop, field2);
-}
-void store_ds_constructor_input_chat_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_photo (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_photo_crop (D->crop, field2);
-}
-void store_ds_constructor_input_phone_contact (struct tl_ds_input_contact *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf392b7f4 && T->type->name != 0x0c6d480b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->client_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->phone, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->first_name, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->last_name, field4);
-}
-void store_ds_constructor_input_document_empty (struct tl_ds_input_document *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return; }
-}
-void store_ds_constructor_input_document (struct tl_ds_input_document *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_encrypted_chat (struct tl_ds_input_encrypted_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf141b5e1 && T->type->name != 0x0ebe4a1e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_encrypted_file_empty (struct tl_ds_input_encrypted_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return; }
-}
-void store_ds_constructor_input_encrypted_file_uploaded (struct tl_ds_input_encrypted_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->parts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->md5_checksum, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->key_fingerprint, field4);
-}
-void store_ds_constructor_input_encrypted_file (struct tl_ds_input_encrypted_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_encrypted_file_big_uploaded (struct tl_ds_input_encrypted_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->parts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->key_fingerprint, field3);
-}
-void store_ds_constructor_input_file (struct tl_ds_input_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->parts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->name, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->md5_checksum, field4);
-}
-void store_ds_constructor_input_file_big (struct tl_ds_input_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->parts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->name, field3);
-}
-void store_ds_constructor_input_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->volume_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->local_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->secret, field3);
-}
-void store_ds_constructor_input_video_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_encrypted_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_audio_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_document_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_geo_chat (struct tl_ds_input_geo_chat *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x74d456fa && T->type->name != 0x8b2ba905)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_geo_point_empty (struct tl_ds_input_geo_point *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return; }
-}
-void store_ds_constructor_input_geo_point (struct tl_ds_input_geo_point *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_double (D->latitude, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_double (D->longitude, field2);
-}
-void store_ds_constructor_input_media_empty (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
-}
-void store_ds_constructor_input_media_uploaded_photo (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->caption, field2);
-}
-void store_ds_constructor_input_media_photo (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_photo (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->caption, field2);
-}
-void store_ds_constructor_input_media_geo_point (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_geo_point (D->geo_point, field1);
-}
-void store_ds_constructor_input_media_contact (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->phone_number, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->first_name, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->last_name, field3);
-}
-void store_ds_constructor_input_media_uploaded_video (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->w, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->h, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->caption, field5);
-}
-void store_ds_constructor_input_media_uploaded_thumb_video (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_file (D->thumb, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->w, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->h, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->caption, field6);
-}
-void store_ds_constructor_input_media_video (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbb5f7a27, .id = "InputVideo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_video (D->video_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->caption, field2);
-}
-void store_ds_constructor_input_media_uploaded_audio (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->mime_type, field3);
-}
-void store_ds_constructor_input_media_audio (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae8e9c7b, .id = "InputAudio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_audio (D->audio_id, field1);
-}
-void store_ds_constructor_input_media_uploaded_document (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->mime_type, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->attributes, field3);
-}
-void store_ds_constructor_input_media_uploaded_thumb_document (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_file (D->file, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_file (D->thumb, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->mime_type, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->attributes, field4);
-}
-void store_ds_constructor_input_media_document (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6a8963fc, .id = "InputDocument", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_document (D->document_id, field1);
-}
-void store_ds_constructor_input_media_venue (struct tl_ds_input_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_geo_point (D->geo_point, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->address, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->provider, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->venue_id, field5);
-}
-void store_ds_constructor_input_notify_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_peer (D->peer, field1);
-}
-void store_ds_constructor_input_notify_users (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return; }
-}
-void store_ds_constructor_input_notify_chats (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return; }
-}
-void store_ds_constructor_input_notify_all (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return; }
-}
-void store_ds_constructor_input_notify_geo_chat_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_input_geo_chat (D->geo_peer, field1);
-}
-void store_ds_constructor_input_peer_empty (struct tl_ds_input_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return; }
-}
-void store_ds_constructor_input_peer_self (struct tl_ds_input_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return; }
-}
-void store_ds_constructor_input_peer_contact (struct tl_ds_input_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
-}
-void store_ds_constructor_input_peer_foreign (struct tl_ds_input_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_peer_chat (struct tl_ds_input_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
-}
-void store_ds_constructor_input_peer_notify_events_empty (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return; }
-}
-void store_ds_constructor_input_peer_notify_events_all (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return; }
-}
-void store_ds_constructor_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x46a2ce98 && T->type->name != 0xb95d3167)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->mute_until, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->sound, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->show_previews, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->events_mask, field4);
-}
-void store_ds_constructor_input_photo_empty (struct tl_ds_input_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return; }
-}
-void store_ds_constructor_input_photo (struct tl_ds_input_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_photo_crop_auto (struct tl_ds_input_photo_crop *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return; }
-}
-void store_ds_constructor_input_photo_crop (struct tl_ds_input_photo_crop *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_double (D->crop_left, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_double (D->crop_top, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_double (D->crop_width, field3);
-}
-void store_ds_constructor_input_privacy_key_status_timestamp (struct tl_ds_input_privacy_key *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4f96cb18 && T->type->name != 0xb06934e7)) { return; }
-}
-void store_ds_constructor_input_privacy_value_allow_contacts (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return; }
-}
-void store_ds_constructor_input_privacy_value_allow_all (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return; }
-}
-void store_ds_constructor_input_privacy_value_allow_users (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field1);
-}
-void store_ds_constructor_input_privacy_value_disallow_contacts (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return; }
-}
-void store_ds_constructor_input_privacy_value_disallow_all (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return; }
-}
-void store_ds_constructor_input_privacy_value_disallow_users (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field1);
-}
-void store_ds_constructor_input_sticker_set_empty (struct tl_ds_input_sticker_set *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return; }
-}
-void store_ds_constructor_input_sticker_set_i_d (struct tl_ds_input_sticker_set *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_sticker_set_short_name (struct tl_ds_input_sticker_set *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->short_name, field1);
-}
-void store_ds_constructor_input_user_empty (struct tl_ds_input_user *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return; }
-}
-void store_ds_constructor_input_user_self (struct tl_ds_input_user *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return; }
-}
-void store_ds_constructor_input_user_contact (struct tl_ds_input_user *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
-}
-void store_ds_constructor_input_user_foreign (struct tl_ds_input_user *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_input_video_empty (struct tl_ds_input_video *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return; }
-}
-void store_ds_constructor_input_video (struct tl_ds_input_video *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
-}
-void store_ds_constructor_int (int *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8509bda && T->type->name != 0x57af6425)) { return; }
- out_int (*D);
-}
-void store_ds_constructor_int128 (struct tl_ds_int128 *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7d36c439 && T->type->name != 0x82c93bc6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->f0, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->f1, field2);
-}
-void store_ds_constructor_int256 (struct tl_ds_int256 *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf2c798b3 && T->type->name != 0x0d38674c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->f0, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->f1, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->f2, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->f3, field4);
-}
-void store_ds_constructor_keyboard_button (struct tl_ds_keyboard_button *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa2fa4880 && T->type->name != 0x5d05b77f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->text, field1);
-}
-void store_ds_constructor_keyboard_button_row (struct tl_ds_keyboard_button_row *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77608b83 && T->type->name != 0x889f747c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa2fa4880, .id = "KeyboardButton", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->buttons, field1);
-}
-void store_ds_constructor_long (long long *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22076cba && T->type->name != 0xddf89345)) { return; }
- out_long (*D);
-}
-void store_ds_constructor_message_empty (struct tl_ds_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
-}
-void store_ds_constructor_message (struct tl_ds_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- out_int (PTR2INT (var0));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->from_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_peer (D->to_id, field4);
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->fwd_from_id, field5);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->fwd_date, field6);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->reply_to_msg_id, field7);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->message, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_message_media (D->media, field10);
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_reply_markup (D->reply_markup, field11);
- }
-}
-void store_ds_constructor_message_service (struct tl_ds_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->flags, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->from_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_peer (D->to_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_message_action (D->action, field6);
-}
-void store_ds_constructor_message_action_empty (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
-}
-void store_ds_constructor_message_action_chat_create (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field2);
-}
-void store_ds_constructor_message_action_chat_edit_title (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field1);
-}
-void store_ds_constructor_message_action_chat_edit_photo (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo (D->photo, field1);
-}
-void store_ds_constructor_message_action_chat_delete_photo (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
-}
-void store_ds_constructor_message_action_chat_add_user (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
-}
-void store_ds_constructor_message_action_chat_delete_user (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
-}
-void store_ds_constructor_message_action_geo_chat_create (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->address, field2);
-}
-void store_ds_constructor_message_action_geo_chat_checkin (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
-}
-void store_ds_constructor_message_action_chat_joined_by_link (struct tl_ds_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->inviter_id, field1);
-}
-void store_ds_constructor_message_media_empty (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
-}
-void store_ds_constructor_message_media_photo (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo (D->photo, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->caption, field2);
-}
-void store_ds_constructor_message_media_video (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_video (D->video, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->caption, field2);
-}
-void store_ds_constructor_message_media_geo (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_geo_point (D->geo, field1);
-}
-void store_ds_constructor_message_media_contact (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->phone_number, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->first_name, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->last_name, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field4);
-}
-void store_ds_constructor_message_media_unsupported (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
-}
-void store_ds_constructor_message_media_document (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_document (D->document, field1);
-}
-void store_ds_constructor_message_media_audio (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fc5ec4e, .id = "Audio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_audio (D->audio, field1);
-}
-void store_ds_constructor_message_media_web_page (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_web_page (D->webpage, field1);
-}
-void store_ds_constructor_message_media_venue (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_geo_point (D->geo, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->address, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->provider, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->venue_id, field5);
-}
-void store_ds_constructor_message_media_photo_l27 (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo (D->photo, field1);
-}
-void store_ds_constructor_message_media_video_l27 (struct tl_ds_message_media *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_video (D->video, field1);
-}
-void store_ds_constructor_input_messages_filter_empty (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void store_ds_constructor_input_messages_filter_photos (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void store_ds_constructor_input_messages_filter_video (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void store_ds_constructor_input_messages_filter_photo_video (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void store_ds_constructor_input_messages_filter_photo_video_documents (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void store_ds_constructor_input_messages_filter_document (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void store_ds_constructor_input_messages_filter_audio (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return; }
-}
-void store_ds_constructor_nearest_dc (struct tl_ds_nearest_dc *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8e1a1775 && T->type->name != 0x71e5e88a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->country, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->this_dc, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->nearest_dc, field3);
-}
-void store_ds_constructor_notify_peer (struct tl_ds_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_peer (D->peer, field1);
-}
-void store_ds_constructor_notify_users (struct tl_ds_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return; }
-}
-void store_ds_constructor_notify_chats (struct tl_ds_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return; }
-}
-void store_ds_constructor_notify_all (struct tl_ds_notify_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return; }
-}
-void store_ds_constructor_null (struct tl_ds_null *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56730bcc && T->type->name != 0xa98cf433)) { return; }
-}
-void store_ds_constructor_p_q_inner_data (struct tl_ds_p_q_inner_data *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->pq, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->p, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->q, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->nonce, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->server_nonce, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int256 (D->new_nonce, field6);
-}
-void store_ds_constructor_p_q_inner_data_temp (struct tl_ds_p_q_inner_data *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->pq, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->p, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->q, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->nonce, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->server_nonce, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int256 (D->new_nonce, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->expires_in, field7);
-}
-void store_ds_constructor_peer_user (struct tl_ds_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
-}
-void store_ds_constructor_peer_chat (struct tl_ds_peer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
-}
-void store_ds_constructor_peer_notify_events_empty (struct tl_ds_peer_notify_events *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return; }
-}
-void store_ds_constructor_peer_notify_events_all (struct tl_ds_peer_notify_events *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return; }
-}
-void store_ds_constructor_peer_notify_settings_empty (struct tl_ds_peer_notify_settings *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return; }
-}
-void store_ds_constructor_peer_notify_settings (struct tl_ds_peer_notify_settings *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->mute_until, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->sound, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->show_previews, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->events_mask, field4);
-}
-void store_ds_constructor_photo_empty (struct tl_ds_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
-}
-void store_ds_constructor_photo (struct tl_ds_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_geo_point (D->geo, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->sizes, field6);
-}
-void store_ds_constructor_photo_l27 (struct tl_ds_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->caption, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_geo_point (D->geo, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->sizes, field7);
-}
-void store_ds_constructor_photo_size_empty (struct tl_ds_photo_size *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->type, field1);
-}
-void store_ds_constructor_photo_size (struct tl_ds_photo_size *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->type, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_file_location (D->location, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->w, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->h, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field5);
-}
-void store_ds_constructor_photo_cached_size (struct tl_ds_photo_size *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->type, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_file_location (D->location, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->w, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->h, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->bytes, field5);
-}
-void store_ds_constructor_privacy_key_status_timestamp (struct tl_ds_privacy_key *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbc2eab30 && T->type->name != 0x43d154cf)) { return; }
-}
-void store_ds_constructor_privacy_value_allow_contacts (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return; }
-}
-void store_ds_constructor_privacy_value_allow_all (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return; }
-}
-void store_ds_constructor_privacy_value_allow_users (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field1);
-}
-void store_ds_constructor_privacy_value_disallow_contacts (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return; }
-}
-void store_ds_constructor_privacy_value_disallow_all (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return; }
-}
-void store_ds_constructor_privacy_value_disallow_users (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field1);
-}
-void store_ds_constructor_received_notify_message (struct tl_ds_received_notify_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa384b779 && T->type->name != 0x5c7b4886)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->flags, field2);
-}
-void store_ds_constructor_reply_keyboard_hide (struct tl_ds_reply_markup *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->flags, field1);
-}
-void store_ds_constructor_reply_keyboard_force_reply (struct tl_ds_reply_markup *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->flags, field1);
-}
-void store_ds_constructor_reply_keyboard_markup (struct tl_ds_reply_markup *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->flags, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77608b83, .id = "KeyboardButtonRow", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->rows, field2);
-}
-void store_ds_constructor_res_p_q (struct tl_ds_res_p_q *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x05162463 && T->type->name != 0xfae9db9c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->pq, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->server_public_key_fingerprints, field4);
-}
-void store_ds_constructor_send_message_typing_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void store_ds_constructor_send_message_cancel_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void store_ds_constructor_send_message_record_video_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void store_ds_constructor_send_message_upload_video_action_l27 (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void store_ds_constructor_send_message_upload_video_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->progress, field1);
-}
-void store_ds_constructor_send_message_record_audio_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void store_ds_constructor_send_message_upload_audio_action_l27 (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void store_ds_constructor_send_message_upload_audio_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->progress, field1);
-}
-void store_ds_constructor_send_message_upload_photo_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->progress, field1);
-}
-void store_ds_constructor_send_message_upload_document_action_l27 (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void store_ds_constructor_send_message_upload_document_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->progress, field1);
-}
-void store_ds_constructor_send_message_geo_location_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void store_ds_constructor_send_message_choose_contact_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return; }
-}
-void store_ds_constructor_server_d_h_params_fail (struct tl_ds_server_d_h_params *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->new_nonce_hash, field3);
-}
-void store_ds_constructor_server_d_h_params_ok (struct tl_ds_server_d_h_params *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->encrypted_answer, field3);
-}
-void store_ds_constructor_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5890dba && T->type->name != 0x4a76f245)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->g, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->dh_prime, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->g_a, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->server_time, field6);
-}
-void store_ds_constructor_dh_gen_ok (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->new_nonce_hash1, field3);
-}
-void store_ds_constructor_dh_gen_retry (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->new_nonce_hash2, field3);
-}
-void store_ds_constructor_dh_gen_fail (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->nonce, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->server_nonce, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int128 (D->new_nonce_hash3, field3);
-}
-void store_ds_constructor_sticker_pack (struct tl_ds_sticker_pack *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x12b299d4 && T->type->name != 0xed4d662b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->emoticon, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->documents, field2);
-}
-void store_ds_constructor_sticker_set (struct tl_ds_sticker_set *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa7a43b17 && T->type->name != 0x585bc4e8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->short_name, field4);
-}
-void store_ds_constructor_string (struct tl_ds_string *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5286e24 && T->type->name != 0x4ad791db)) { return; }
- out_cstring (D->data, D->len);
-}
-void store_ds_constructor_update_new_message (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_message (D->message, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts_count, field3);
-}
-void store_ds_constructor_update_message_i_d (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->random_id, field2);
-}
-void store_ds_constructor_update_delete_messages (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->messages, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts_count, field3);
-}
-void store_ds_constructor_update_user_typing (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_send_message_action (D->action, field2);
-}
-void store_ds_constructor_update_chat_user_typing (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_send_message_action (D->action, field3);
-}
-void store_ds_constructor_update_chat_participants (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_chat_participants (D->participants, field1);
-}
-void store_ds_constructor_update_user_status (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_user_status (D->status, field2);
-}
-void store_ds_constructor_update_user_name (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->first_name, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->last_name, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->username, field4);
-}
-void store_ds_constructor_update_user_photo (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_user_profile_photo (D->photo, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->previous, field4);
-}
-void store_ds_constructor_update_contact_registered (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field2);
-}
-void store_ds_constructor_update_contact_link (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_contact_link (D->my_link, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_contact_link (D->foreign_link, field3);
-}
-void store_ds_constructor_update_new_authorization (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->auth_key_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->device, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->location, field4);
-}
-void store_ds_constructor_update_new_geo_chat_message (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_geo_chat_message (D->geo_message, field1);
-}
-void store_ds_constructor_update_new_encrypted_message (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_encrypted_message (D->encr_message, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->qts, field2);
-}
-void store_ds_constructor_update_encrypted_chat_typing (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
-}
-void store_ds_constructor_update_encryption (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb1718213, .id = "EncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_encrypted_chat (D->encr_chat, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field2);
-}
-void store_ds_constructor_update_encrypted_messages_read (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->max_date, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field3);
-}
-void store_ds_constructor_update_chat_participant_add (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->inviter_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->version, field4);
-}
-void store_ds_constructor_update_chat_participant_delete (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->version, field3);
-}
-void store_ds_constructor_update_dc_options (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->dc_options, field1);
-}
-void store_ds_constructor_update_user_blocked (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->blocked, field2);
-}
-void store_ds_constructor_update_notify_settings (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fcb8237, .id = "NotifyPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_notify_peer (D->notify_peer, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_peer_notify_settings (D->notify_settings, field2);
-}
-void store_ds_constructor_update_service_notification (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->type, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->message_text, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_message_media (D->media, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->popup, field4);
-}
-void store_ds_constructor_update_privacy (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbc2eab30, .id = "PrivacyKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_privacy_key (D->key, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->rules, field2);
-}
-void store_ds_constructor_update_user_phone (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->phone, field2);
-}
-void store_ds_constructor_update_read_history_inbox (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_peer (D->peer, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->max_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts_count, field4);
-}
-void store_ds_constructor_update_read_history_outbox (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_peer (D->peer, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->max_id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts_count, field4);
-}
-void store_ds_constructor_update_web_page (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_web_page (D->webpage, field1);
-}
-void store_ds_constructor_update_read_messages_contents (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->messages, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts_count, field3);
-}
-void store_ds_constructor_update_msg_update (struct tl_ds_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts_count, field3);
-}
-void store_ds_constructor_updates_too_long (struct tl_ds_updates *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return; }
-}
-void store_ds_constructor_update_short_message (struct tl_ds_updates *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- out_int (PTR2INT (var0));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->message, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts_count, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field7);
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->fwd_from_id, field8);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->fwd_date, field9);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->reply_to_msg_id, field10);
- }
-}
-void store_ds_constructor_update_short_chat_message (struct tl_ds_updates *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- out_int (PTR2INT (var0));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->from_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->chat_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->message, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts_count, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field8);
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->fwd_from_id, field9);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->fwd_date, field10);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->reply_to_msg_id, field11);
- }
-}
-void store_ds_constructor_update_short (struct tl_ds_updates *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_update (D->update, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field2);
-}
-void store_ds_constructor_updates_combined (struct tl_ds_updates *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->updates, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->seq_start, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->seq, field6);
-}
-void store_ds_constructor_updates (struct tl_ds_updates *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->updates, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->seq, field5);
-}
-void store_ds_constructor_user_empty (struct tl_ds_user *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
-}
-void store_ds_constructor_user (struct tl_ds_user *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- out_int (PTR2INT (var0));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field3);
- }
- if (PTR2INT (var0) & (1 << 1)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->first_name, field4);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->last_name, field5);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->username, field6);
- }
- if (PTR2INT (var0) & (1 << 4)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->phone, field7);
- }
- if (PTR2INT (var0) & (1 << 5)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_user_profile_photo (D->photo, field8);
- }
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_user_status (D->status, field9);
- }
- if (PTR2INT (var0) & (1 << 14)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->bot_info_version, field10);
- }
-}
-void store_ds_constructor_user_full (struct tl_ds_user_full *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5a89ac5b && T->type->name != 0xa57653a4)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_user (D->user, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_contacts_link (D->link, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo (D->profile_photo, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_peer_notify_settings (D->notify_settings, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->blocked, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bot_info (D->bot_info, field6);
-}
-void store_ds_constructor_user_profile_photo_empty (struct tl_ds_user_profile_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return; }
-}
-void store_ds_constructor_user_profile_photo (struct tl_ds_user_profile_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->photo_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_file_location (D->photo_small, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_file_location (D->photo_big, field3);
-}
-void store_ds_constructor_user_status_empty (struct tl_ds_user_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return; }
-}
-void store_ds_constructor_user_status_online (struct tl_ds_user_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->expires, field1);
-}
-void store_ds_constructor_user_status_offline (struct tl_ds_user_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->was_online, field1);
-}
-void store_ds_constructor_user_status_recently (struct tl_ds_user_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return; }
-}
-void store_ds_constructor_user_status_last_week (struct tl_ds_user_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return; }
-}
-void store_ds_constructor_user_status_last_month (struct tl_ds_user_status *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return; }
-}
-void store_ds_constructor_vector (struct tl_ds_vector *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1cb5c415 && T->type->name != 0xe34a3bea)) { return; }
- if (ODDP(T->params[0])) { return; }
- struct paramed_type *var0 = T->params[0]; assert (var0);
- struct paramed_type *var1 = INT2PTR (*D->f1);
- out_int (PTR2INT (var1));
- int multiplicity3 = PTR2INT (
- ((void *)var1) + 0 );
- struct paramed_type *field3 =
- var0;
- {
- int i = 0;
- while (i < multiplicity3) {
- store_ds_type_any (D->f2[i ++], field3);
- }
- }
-}
-void store_ds_constructor_video_empty (struct tl_ds_video *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
-}
-void store_ds_constructor_video (struct tl_ds_video *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo_size (D->thumb, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc_id, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->w, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->h, field10);
-}
-void store_ds_constructor_video_l27 (struct tl_ds_video *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->caption, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->mime_type, field7);
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->size, field8);
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo_size (D->thumb, field9);
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc_id, field10);
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->w, field11);
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->h, field12);
-}
-void store_ds_constructor_wall_paper (struct tl_ds_wall_paper *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->sizes, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->color, field4);
-}
-void store_ds_constructor_wall_paper_solid (struct tl_ds_wall_paper *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->bg_color, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->color, field4);
-}
-void store_ds_constructor_web_page_empty (struct tl_ds_web_page *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
-}
-void store_ds_constructor_web_page_pending (struct tl_ds_web_page *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field2);
-}
-void store_ds_constructor_web_page (struct tl_ds_web_page *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- out_int (PTR2INT (var0));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->id, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->url, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->display_url, field4);
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->type, field5);
- }
- if (PTR2INT (var0) & (1 << 1)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->site_name, field6);
- }
- if (PTR2INT (var0) & (1 << 2)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field7);
- }
- if (PTR2INT (var0) & (1 << 3)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->description, field8);
- }
- if (PTR2INT (var0) & (1 << 4)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo (D->photo, field9);
- }
- if (PTR2INT (var0) & (1 << 5)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->embed_url, field10);
- }
- if (PTR2INT (var0) & (1 << 5)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->embed_type, field11);
- }
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->embed_width, field12);
- }
- if (PTR2INT (var0) & (1 << 6)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->embed_height, field13);
- }
- if (PTR2INT (var0) & (1 << 7)) {
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->duration, field14);
- }
- if (PTR2INT (var0) & (1 << 8)) {
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->author, field15);
- }
-}
-void store_ds_constructor_account_authorizations (struct tl_ds_account_authorizations *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1250abde && T->type->name != 0xedaf5421)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bf2e6f6, .id = "Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->authorizations, field1);
-}
-void store_ds_constructor_account_no_password (struct tl_ds_account_password *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->new_salt, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->email_unconfirmed_pattern, field2);
-}
-void store_ds_constructor_account_password (struct tl_ds_account_password *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->current_salt, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->new_salt, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->hint, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->has_recovery, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->email_unconfirmed_pattern, field5);
-}
-void store_ds_constructor_account_password_input_settings (struct tl_ds_account_password_input_settings *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbcfc532c && T->type->name != 0x4303acd3)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- out_int (PTR2INT (var0));
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->new_salt, field2);
- }
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->new_password_hash, field3);
- }
- if (PTR2INT (var0) & (1 << 0)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->hint, field4);
- }
- if (PTR2INT (var0) & (1 << 1)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->email, field5);
- }
-}
-void store_ds_constructor_account_password_settings (struct tl_ds_account_password_settings *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb7b72ab3 && T->type->name != 0x4848d54c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->email, field1);
-}
-void store_ds_constructor_account_privacy_rules (struct tl_ds_account_privacy_rules *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x554abb6f && T->type->name != 0xaab54490)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->rules, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field2);
-}
-void store_ds_constructor_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa4f58c4c && T->type->name != 0x5b0a73b3)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->phone_code_hash, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->send_call_timeout, field2);
-}
-void store_ds_constructor_auth_authorization (struct tl_ds_auth_authorization *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xff036af1 && T->type->name != 0x00fc950e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_user (D->user, field1);
-}
-void store_ds_constructor_auth_checked_phone (struct tl_ds_auth_checked_phone *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x811ea28e && T->type->name != 0x7ee15d71)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->phone_registered, field1);
-}
-void store_ds_constructor_auth_exported_authorization (struct tl_ds_auth_exported_authorization *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdf969c2d && T->type->name != 0x206963d2)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->bytes, field2);
-}
-void store_ds_constructor_auth_password_recovery (struct tl_ds_auth_password_recovery *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x137948a5 && T->type->name != 0xec86b75a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->email_pattern, field1);
-}
-void store_ds_constructor_auth_sent_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->phone_registered, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->phone_code_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->send_call_timeout, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->is_password, field4);
-}
-void store_ds_constructor_auth_sent_app_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->phone_registered, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->phone_code_hash, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->send_call_timeout, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->is_password, field4);
-}
-void store_ds_constructor_binlog_encr_key (struct tl_ds_binlog_encr_key *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0377168f && T->type->name != 0xfc88e970)) { return; }
- int multiplicity1 = PTR2INT (
- INT2PTR (64) );
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- {
- int i = 0;
- while (i < multiplicity1) {
- store_ds_type_any (D->key[i ++], field1);
- }
- }
-}
-void store_ds_constructor_binlog_start (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
-}
-void store_ds_constructor_binlog_dc_option (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->name, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->ip, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->port, field4);
-}
-void store_ds_constructor_binlog_dc_option_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->flags, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->name, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->ip, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->port, field5);
-}
-void store_ds_constructor_binlog_auth_key (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_binlog_encr_key (D->key, field2);
-}
-void store_ds_constructor_binlog_default_dc (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc, field1);
-}
-void store_ds_constructor_binlog_dc_signed (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->dc, field1);
-}
-void store_ds_constructor_binlog_our_id (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
-}
-void store_ds_constructor_binlog_set_dh_params (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->root, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_binlog_encr_key (D->prime, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->version, field3);
-}
-void store_ds_constructor_binlog_set_pts (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field1);
-}
-void store_ds_constructor_binlog_set_qts (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->qts, field1);
-}
-void store_ds_constructor_binlog_set_date (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field1);
-}
-void store_ds_constructor_binlog_set_seq (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->seq, field1);
-}
-void store_ds_constructor_binlog_encr_chat_delete (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
-}
-void store_ds_constructor_binlog_encr_chat_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- out_int (PTR2INT (var0));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field3);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field4);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->admin, field5);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field6);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_binlog_encr_key (D->key, field7);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_binlog_encr_key (D->g_key, field8);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->state, field9);
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->ttl, field10);
- }
- if (PTR2INT (var0) & (1 << 25)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->layer, field11);
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->in_seq_no, field12);
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->last_in_seq_no, field13);
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->out_seq_no, field14);
- }
- if (PTR2INT (var0) & (1 << 27)) {
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->key_fingerprint, field15);
- }
-}
-void store_ds_constructor_binlog_encr_chat_exchange_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- out_int (PTR2INT (var0));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->exchange_id, field3);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_binlog_encr_key (D->key, field4);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->state, field5);
- }
-}
-void store_ds_constructor_binlog_user_delete (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
-}
-void store_ds_constructor_binlog_user_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- out_int (PTR2INT (var0));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->access_hash, field3);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->first_name, field4);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->last_name, field5);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->phone, field6);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->username, field7);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo (D->photo, field8);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->real_first_name, field9);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->real_last_name, field10);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_user_profile_photo (D->user_photo, field11);
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->last_read_in, field12);
- }
- if (PTR2INT (var0) & (1 << 25)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->last_read_out, field13);
- }
- if (PTR2INT (var0) & (1 << 26)) {
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bot_info (D->bot_info, field14);
- }
-}
-void store_ds_constructor_binlog_chat_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- out_int (PTR2INT (var0));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->title, field3);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_num, field4);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field5);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->version, field6);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->participants, field7);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_chat_photo (D->chat_photo, field8);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo (D->photo, field9);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->admin, field10);
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->last_read_in, field11);
- }
- if (PTR2INT (var0) & (1 << 25)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->last_read_out, field12);
- }
-}
-void store_ds_constructor_binlog_chat_add_participant (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->version, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->inviter_id, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field5);
-}
-void store_ds_constructor_binlog_chat_del_participant (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->version, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->user_id, field3);
-}
-void store_ds_constructor_binlog_set_msg_id (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->old_id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->new_id, field2);
-}
-void store_ds_constructor_binlog_message_delete (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->lid, field1);
-}
-void store_ds_constructor_binlog_message_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- out_int (PTR2INT (var0));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->lid, field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->from_id, field3);
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->to_type, field4);
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->to_id, field5);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->fwd_from_id, field6);
- }
- if (PTR2INT (var0) & (1 << 18)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->fwd_date, field7);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field8);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->message, field9);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_message_media (D->media, field10);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_message_action (D->action, field11);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->reply_id, field12);
- }
- if (PTR2INT (var0) & (1 << 24)) {
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_reply_markup (D->reply_markup, field13);
- }
-}
-void store_ds_constructor_binlog_message_encr_new (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *var0 = INT2PTR (*D->flags);
- out_int (PTR2INT (var0));
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->lid, field2);
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->from_id, field3);
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->to_type, field4);
- }
- if (PTR2INT (var0) & (1 << 17)) {
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->to_id, field5);
- }
- if (PTR2INT (var0) & (1 << 19)) {
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field6);
- }
- if (PTR2INT (var0) & (1 << 20)) {
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->message, field7);
- }
- if (PTR2INT (var0) & (1 << 21)) {
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_decrypted_message_media (D->encr_media, field8);
- }
- if (PTR2INT (var0) & (1 << 22)) {
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_decrypted_message_action (D->encr_action, field9);
- }
- if (PTR2INT (var0) & (1 << 23)) {
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_encrypted_file (D->file, field10);
- }
-}
-void store_ds_constructor_binlog_msg_update (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_long (D->lid, field1);
-}
-void store_ds_constructor_binlog_reset_authorization (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return; }
-}
-void store_ds_constructor_contacts_blocked (struct tl_ds_contacts_blocked *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->blocked, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field2);
-}
-void store_ds_constructor_contacts_blocked_slice (struct tl_ds_contacts_blocked *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->count, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->blocked, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field3);
-}
-void store_ds_constructor_contacts_contacts_not_modified (struct tl_ds_contacts_contacts *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return; }
-}
-void store_ds_constructor_contacts_contacts (struct tl_ds_contacts_contacts *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf911c994, .id = "Contact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->contacts, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field2);
-}
-void store_ds_constructor_contacts_found (struct tl_ds_contacts_found *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0566000e && T->type->name != 0xfa99fff1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xea879f95, .id = "ContactFound", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->results, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field2);
-}
-void store_ds_constructor_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xad524315 && T->type->name != 0x52adbcea)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xd0028438, .id = "ImportedContact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->imported, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->retry_contacts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field3);
-}
-void store_ds_constructor_contacts_link (struct tl_ds_contacts_link *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3ace484c && T->type->name != 0xc531b7b3)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_contact_link (D->my_link, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_contact_link (D->foreign_link, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_user (D->user, field3);
-}
-void store_ds_constructor_contacts_suggested (struct tl_ds_contacts_suggested *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5649dcc5 && T->type->name != 0xa9b6233a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3de191a1, .id = "ContactSuggested", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->results, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field2);
-}
-void store_ds_constructor_geochats_located (struct tl_ds_geochats_located *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x48feb267 && T->type->name != 0xb7014d98)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3631cf4c, .id = "ChatLocated", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->results, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->messages, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field4);
-}
-void store_ds_constructor_geochats_messages (struct tl_ds_geochats_messages *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->messages, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field3);
-}
-void store_ds_constructor_geochats_messages_slice (struct tl_ds_geochats_messages *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->count, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->messages, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field4);
-}
-void store_ds_constructor_geochats_stated_message (struct tl_ds_geochats_stated_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17b1578b && T->type->name != 0xe84ea874)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_geo_chat_message (D->message, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->seq, field4);
-}
-void store_ds_constructor_help_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bool (D->critical, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->url, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->text, field4);
-}
-void store_ds_constructor_help_no_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return; }
-}
-void store_ds_constructor_help_invite_text (struct tl_ds_help_invite_text *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x18cb9f78 && T->type->name != 0xe7346087)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->message, field1);
-}
-void store_ds_constructor_help_support (struct tl_ds_help_support *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17c6b5f6 && T->type->name != 0xe8394a09)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->phone_number, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_user (D->user, field2);
-}
-void store_ds_constructor_messages_affected_history (struct tl_ds_messages_affected_history *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb45c69d1 && T->type->name != 0x4ba3962e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts_count, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->offset, field3);
-}
-void store_ds_constructor_messages_affected_messages (struct tl_ds_messages_affected_messages *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x84d19185 && T->type->name != 0x7b2e6e7a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts_count, field2);
-}
-void store_ds_constructor_messages_all_stickers_not_modified (struct tl_ds_messages_all_stickers *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return; }
-}
-void store_ds_constructor_messages_all_stickers (struct tl_ds_messages_all_stickers *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->hash, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->packs, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->sets, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->documents, field4);
-}
-void store_ds_constructor_messages_chat_full (struct tl_ds_messages_chat_full *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe5d7d19c && T->type->name != 0x1a282e63)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02a614, .id = "ChatFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_chat_full (D->full_chat, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field3);
-}
-void store_ds_constructor_messages_chats (struct tl_ds_messages_chats *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x64ff9fd5 && T->type->name != 0x9b00602a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field1);
-}
-void store_ds_constructor_messages_dh_config_not_modified (struct tl_ds_messages_dh_config *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->random, field1);
-}
-void store_ds_constructor_messages_dh_config (struct tl_ds_messages_dh_config *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->g, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->p, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->version, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->random, field4);
-}
-void store_ds_constructor_messages_dialogs (struct tl_ds_messages_dialogs *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->dialogs, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->messages, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field4);
-}
-void store_ds_constructor_messages_dialogs_slice (struct tl_ds_messages_dialogs *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->count, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->dialogs, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->messages, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field5);
-}
-void store_ds_constructor_messages_message_empty (struct tl_ds_messages_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3f4e0648 && T->type->name != 0xc0b1f9b7)) { return; }
-}
-void store_ds_constructor_messages_messages (struct tl_ds_messages_messages *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->messages, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field3);
-}
-void store_ds_constructor_messages_messages_slice (struct tl_ds_messages_messages *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->count, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->messages, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field4);
-}
-void store_ds_constructor_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field1);
-}
-void store_ds_constructor_messages_sent_encrypted_file (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_encrypted_file (D->file, field2);
-}
-void store_ds_constructor_messages_sent_message (struct tl_ds_messages_sent_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_message_media (D->media, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts_count, field5);
-}
-void store_ds_constructor_messages_sent_message_link (struct tl_ds_messages_sent_message *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->id, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_message_media (D->media, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts_count, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->links, field6);
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->seq, field7);
-}
-void store_ds_constructor_messages_sticker_set (struct tl_ds_messages_sticker_set *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb60a24a6 && T->type->name != 0x49f5db59)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_sticker_set (D->set, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->packs, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->documents, field3);
-}
-void store_ds_constructor_messages_stickers_not_modified (struct tl_ds_messages_stickers *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return; }
-}
-void store_ds_constructor_messages_stickers (struct tl_ds_messages_stickers *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_string (D->hash, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->stickers, field2);
-}
-void store_ds_constructor_photos_photo (struct tl_ds_photos_photo *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x20212ca8 && T->type->name != 0xdfded357)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_photo (D->photo, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field2);
-}
-void store_ds_constructor_photos_photos (struct tl_ds_photos_photos *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->photos, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field2);
-}
-void store_ds_constructor_photos_photos_slice (struct tl_ds_photos_photos *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->count, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->photos, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field3);
-}
-void store_ds_constructor_storage_file_unknown (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void store_ds_constructor_storage_file_jpeg (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void store_ds_constructor_storage_file_gif (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void store_ds_constructor_storage_file_png (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void store_ds_constructor_storage_file_pdf (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void store_ds_constructor_storage_file_mp3 (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void store_ds_constructor_storage_file_mov (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void store_ds_constructor_storage_file_partial (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void store_ds_constructor_storage_file_mp4 (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void store_ds_constructor_storage_file_webp (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return; }
-}
-void store_ds_constructor_updates_difference_empty (struct tl_ds_updates_difference *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->seq, field2);
-}
-void store_ds_constructor_updates_difference (struct tl_ds_updates_difference *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->new_messages, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->new_encrypted_messages, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->other_updates, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_updates_state (D->state, field6);
-}
-void store_ds_constructor_updates_difference_slice (struct tl_ds_updates_difference *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->new_messages, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->new_encrypted_messages, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->other_updates, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->chats, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- store_ds_type_vector ((void *)D->users, field5);
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_updates_state (D->intermediate_state, field6);
-}
-void store_ds_constructor_updates_state (struct tl_ds_updates_state *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa56c2a3e && T->type->name != 0x5a93d5c1)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->pts, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->qts, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->date, field3);
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->seq, field4);
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->unread_count, field5);
-}
-void store_ds_constructor_upload_file (struct tl_ds_upload_file *D, struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x096a18d5 && T->type->name != 0xf695e72a)) { return; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3e2838a8, .id = "storage.FileType", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_storage_file_type (D->type, field1);
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_int (D->mtime, field2);
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- store_ds_type_bare_bytes (D->bytes, field3);
-}
-void store_ds_type_account_days_t_t_l (struct tl_ds_account_days_t_t_l *D, struct paramed_type *T) {
- out_int (0xb8d0afdf);
- store_ds_constructor_account_days_t_t_l (D, T); return;
-}
-void store_ds_type_bare_account_days_t_t_l (struct tl_ds_account_days_t_t_l *D, struct paramed_type *T) {
- store_ds_constructor_account_days_t_t_l (D, T); return;
-}
-void store_ds_type_audio (struct tl_ds_audio *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x586988d8: store_ds_constructor_audio_empty (D, T); return;
- case 0xc7ac6496: store_ds_constructor_audio (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_audio (struct tl_ds_audio *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x586988d8: store_ds_constructor_audio_empty (D, T); return;
- case 0xc7ac6496: store_ds_constructor_audio (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_authorization (struct tl_ds_authorization *D, struct paramed_type *T) {
- out_int (0x7bf2e6f6);
- store_ds_constructor_authorization (D, T); return;
-}
-void store_ds_type_bare_authorization (struct tl_ds_authorization *D, struct paramed_type *T) {
- store_ds_constructor_authorization (D, T); return;
-}
-void store_ds_type_bool (struct tl_ds_bool *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xbc799737: store_ds_constructor_bool_false (D, T); return;
- case 0x997275b5: store_ds_constructor_bool_true (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_bool (struct tl_ds_bool *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xbc799737: store_ds_constructor_bool_false (D, T); return;
- case 0x997275b5: store_ds_constructor_bool_true (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bot_command (struct tl_ds_bot_command *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xc27ac8c7: store_ds_constructor_bot_command (D, T); return;
- case 0xb79d22ab: store_ds_constructor_bot_command_old (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_bot_command (struct tl_ds_bot_command *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xc27ac8c7: store_ds_constructor_bot_command (D, T); return;
- case 0xb79d22ab: store_ds_constructor_bot_command_old (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bot_info (struct tl_ds_bot_info *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xbb2e37ce: store_ds_constructor_bot_info_empty (D, T); return;
- case 0x09cf585d: store_ds_constructor_bot_info (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_bot_info (struct tl_ds_bot_info *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xbb2e37ce: store_ds_constructor_bot_info_empty (D, T); return;
- case 0x09cf585d: store_ds_constructor_bot_info (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bytes (struct tl_ds_string *D, struct paramed_type *T) {
- out_int (0x0ee1379f);
- store_ds_constructor_bytes (D, T); return;
-}
-void store_ds_type_bare_bytes (struct tl_ds_string *D, struct paramed_type *T) {
- store_ds_constructor_bytes (D, T); return;
-}
-void store_ds_type_chat (struct tl_ds_chat *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x9ba2d800: store_ds_constructor_chat_empty (D, T); return;
- case 0x6e9c9bc7: store_ds_constructor_chat (D, T); return;
- case 0xfb0ccc41: store_ds_constructor_chat_forbidden (D, T); return;
- case 0x75eaea5a: store_ds_constructor_geo_chat (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_chat (struct tl_ds_chat *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x9ba2d800: store_ds_constructor_chat_empty (D, T); return;
- case 0x6e9c9bc7: store_ds_constructor_chat (D, T); return;
- case 0xfb0ccc41: store_ds_constructor_chat_forbidden (D, T); return;
- case 0x75eaea5a: store_ds_constructor_geo_chat (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_chat_full (struct tl_ds_chat_full *D, struct paramed_type *T) {
- out_int (0x2e02a614);
- store_ds_constructor_chat_full (D, T); return;
-}
-void store_ds_type_bare_chat_full (struct tl_ds_chat_full *D, struct paramed_type *T) {
- store_ds_constructor_chat_full (D, T); return;
-}
-void store_ds_type_chat_invite (struct tl_ds_chat_invite *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x5a686d7c: store_ds_constructor_chat_invite_already (D, T); return;
- case 0xce917dcd: store_ds_constructor_chat_invite (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_chat_invite (struct tl_ds_chat_invite *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x5a686d7c: store_ds_constructor_chat_invite_already (D, T); return;
- case 0xce917dcd: store_ds_constructor_chat_invite (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_chat_located (struct tl_ds_chat_located *D, struct paramed_type *T) {
- out_int (0x3631cf4c);
- store_ds_constructor_chat_located (D, T); return;
-}
-void store_ds_type_bare_chat_located (struct tl_ds_chat_located *D, struct paramed_type *T) {
- store_ds_constructor_chat_located (D, T); return;
-}
-void store_ds_type_chat_participant (struct tl_ds_chat_participant *D, struct paramed_type *T) {
- out_int (0xc8d7493e);
- store_ds_constructor_chat_participant (D, T); return;
-}
-void store_ds_type_bare_chat_participant (struct tl_ds_chat_participant *D, struct paramed_type *T) {
- store_ds_constructor_chat_participant (D, T); return;
-}
-void store_ds_type_chat_participants (struct tl_ds_chat_participants *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x0fd2bb8a: store_ds_constructor_chat_participants_forbidden (D, T); return;
- case 0x7841b415: store_ds_constructor_chat_participants (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_chat_participants (struct tl_ds_chat_participants *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x0fd2bb8a: store_ds_constructor_chat_participants_forbidden (D, T); return;
- case 0x7841b415: store_ds_constructor_chat_participants (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_chat_photo (struct tl_ds_chat_photo *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x37c1011c: store_ds_constructor_chat_photo_empty (D, T); return;
- case 0x6153276a: store_ds_constructor_chat_photo (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_chat_photo (struct tl_ds_chat_photo *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x37c1011c: store_ds_constructor_chat_photo_empty (D, T); return;
- case 0x6153276a: store_ds_constructor_chat_photo (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *D, struct paramed_type *T) {
- out_int (0x6643b654);
- store_ds_constructor_client_d_h_inner_data (D, T); return;
-}
-void store_ds_type_bare_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *D, struct paramed_type *T) {
- store_ds_constructor_client_d_h_inner_data (D, T); return;
-}
-void store_ds_type_config (struct tl_ds_config *D, struct paramed_type *T) {
- out_int (0x4e32b894);
- store_ds_constructor_config (D, T); return;
-}
-void store_ds_type_bare_config (struct tl_ds_config *D, struct paramed_type *T) {
- store_ds_constructor_config (D, T); return;
-}
-void store_ds_type_contact (struct tl_ds_contact *D, struct paramed_type *T) {
- out_int (0xf911c994);
- store_ds_constructor_contact (D, T); return;
-}
-void store_ds_type_bare_contact (struct tl_ds_contact *D, struct paramed_type *T) {
- store_ds_constructor_contact (D, T); return;
-}
-void store_ds_type_contact_blocked (struct tl_ds_contact_blocked *D, struct paramed_type *T) {
- out_int (0x561bc879);
- store_ds_constructor_contact_blocked (D, T); return;
-}
-void store_ds_type_bare_contact_blocked (struct tl_ds_contact_blocked *D, struct paramed_type *T) {
- store_ds_constructor_contact_blocked (D, T); return;
-}
-void store_ds_type_contact_found (struct tl_ds_contact_found *D, struct paramed_type *T) {
- out_int (0xea879f95);
- store_ds_constructor_contact_found (D, T); return;
-}
-void store_ds_type_bare_contact_found (struct tl_ds_contact_found *D, struct paramed_type *T) {
- store_ds_constructor_contact_found (D, T); return;
-}
-void store_ds_type_contact_link (struct tl_ds_contact_link *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x5f4f9247: store_ds_constructor_contact_link_unknown (D, T); return;
- case 0xfeedd3ad: store_ds_constructor_contact_link_none (D, T); return;
- case 0x268f3f59: store_ds_constructor_contact_link_has_phone (D, T); return;
- case 0xd502c2d0: store_ds_constructor_contact_link_contact (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_contact_link (struct tl_ds_contact_link *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x5f4f9247: store_ds_constructor_contact_link_unknown (D, T); return;
- case 0xfeedd3ad: store_ds_constructor_contact_link_none (D, T); return;
- case 0x268f3f59: store_ds_constructor_contact_link_has_phone (D, T); return;
- case 0xd502c2d0: store_ds_constructor_contact_link_contact (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_contact_status (struct tl_ds_contact_status *D, struct paramed_type *T) {
- out_int (0xd3680c61);
- store_ds_constructor_contact_status (D, T); return;
-}
-void store_ds_type_bare_contact_status (struct tl_ds_contact_status *D, struct paramed_type *T) {
- store_ds_constructor_contact_status (D, T); return;
-}
-void store_ds_type_contact_suggested (struct tl_ds_contact_suggested *D, struct paramed_type *T) {
- out_int (0x3de191a1);
- store_ds_constructor_contact_suggested (D, T); return;
-}
-void store_ds_type_bare_contact_suggested (struct tl_ds_contact_suggested *D, struct paramed_type *T) {
- store_ds_constructor_contact_suggested (D, T); return;
-}
-void store_ds_type_dc_option (struct tl_ds_dc_option *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x2ec2a43c: store_ds_constructor_dc_option_l28 (D, T); return;
- case 0x05d8c6cc: store_ds_constructor_dc_option (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_dc_option (struct tl_ds_dc_option *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x2ec2a43c: store_ds_constructor_dc_option_l28 (D, T); return;
- case 0x05d8c6cc: store_ds_constructor_dc_option (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_decrypted_message (struct tl_ds_decrypted_message *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x204d3878: store_ds_constructor_decrypted_message (D, T); return;
- case 0x73164160: store_ds_constructor_decrypted_message_service (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_decrypted_message (struct tl_ds_decrypted_message *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x204d3878: store_ds_constructor_decrypted_message (D, T); return;
- case 0x73164160: store_ds_constructor_decrypted_message_service (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_decrypted_message_action (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xa1733aec: store_ds_constructor_decrypted_message_action_set_message_t_t_l (D, T); return;
- case 0x0c4f40be: store_ds_constructor_decrypted_message_action_read_messages (D, T); return;
- case 0x65614304: store_ds_constructor_decrypted_message_action_delete_messages (D, T); return;
- case 0x8ac1f475: store_ds_constructor_decrypted_message_action_screenshot_messages (D, T); return;
- case 0x6719e45c: store_ds_constructor_decrypted_message_action_flush_history (D, T); return;
- case 0x511110b0: store_ds_constructor_decrypted_message_action_resend (D, T); return;
- case 0xf3048883: store_ds_constructor_decrypted_message_action_notify_layer (D, T); return;
- case 0xccb27641: store_ds_constructor_decrypted_message_action_typing (D, T); return;
- case 0xf3c9611b: store_ds_constructor_decrypted_message_action_request_key (D, T); return;
- case 0x6fe1735b: store_ds_constructor_decrypted_message_action_accept_key (D, T); return;
- case 0xdd05ec6b: store_ds_constructor_decrypted_message_action_abort_key (D, T); return;
- case 0xec2e0b9b: store_ds_constructor_decrypted_message_action_commit_key (D, T); return;
- case 0xa82fdd63: store_ds_constructor_decrypted_message_action_noop (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_decrypted_message_action (struct tl_ds_decrypted_message_action *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xa1733aec: store_ds_constructor_decrypted_message_action_set_message_t_t_l (D, T); return;
- case 0x0c4f40be: store_ds_constructor_decrypted_message_action_read_messages (D, T); return;
- case 0x65614304: store_ds_constructor_decrypted_message_action_delete_messages (D, T); return;
- case 0x8ac1f475: store_ds_constructor_decrypted_message_action_screenshot_messages (D, T); return;
- case 0x6719e45c: store_ds_constructor_decrypted_message_action_flush_history (D, T); return;
- case 0x511110b0: store_ds_constructor_decrypted_message_action_resend (D, T); return;
- case 0xf3048883: store_ds_constructor_decrypted_message_action_notify_layer (D, T); return;
- case 0xccb27641: store_ds_constructor_decrypted_message_action_typing (D, T); return;
- case 0xf3c9611b: store_ds_constructor_decrypted_message_action_request_key (D, T); return;
- case 0x6fe1735b: store_ds_constructor_decrypted_message_action_accept_key (D, T); return;
- case 0xdd05ec6b: store_ds_constructor_decrypted_message_action_abort_key (D, T); return;
- case 0xec2e0b9b: store_ds_constructor_decrypted_message_action_commit_key (D, T); return;
- case 0xa82fdd63: store_ds_constructor_decrypted_message_action_noop (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_decrypted_message_layer (struct tl_ds_decrypted_message_layer *D, struct paramed_type *T) {
- out_int (0x1be31789);
- store_ds_constructor_decrypted_message_layer (D, T); return;
-}
-void store_ds_type_bare_decrypted_message_layer (struct tl_ds_decrypted_message_layer *D, struct paramed_type *T) {
- store_ds_constructor_decrypted_message_layer (D, T); return;
-}
-void store_ds_type_decrypted_message_media (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x089f5c4a: store_ds_constructor_decrypted_message_media_empty (D, T); return;
- case 0x32798a8c: store_ds_constructor_decrypted_message_media_photo (D, T); return;
- case 0x35480a59: store_ds_constructor_decrypted_message_media_geo_point (D, T); return;
- case 0x588a0a97: store_ds_constructor_decrypted_message_media_contact (D, T); return;
- case 0xb095434b: store_ds_constructor_decrypted_message_media_document (D, T); return;
- case 0x524a415d: store_ds_constructor_decrypted_message_media_video (D, T); return;
- case 0x57e0a9cb: store_ds_constructor_decrypted_message_media_audio (D, T); return;
- case 0xfa95b0dd: store_ds_constructor_decrypted_message_media_external_document (D, T); return;
- case 0x4cee6ef3: store_ds_constructor_decrypted_message_media_video_l12 (D, T); return;
- case 0x6080758f: store_ds_constructor_decrypted_message_media_audio_l12 (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_decrypted_message_media (struct tl_ds_decrypted_message_media *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x089f5c4a: store_ds_constructor_decrypted_message_media_empty (D, T); return;
- case 0x32798a8c: store_ds_constructor_decrypted_message_media_photo (D, T); return;
- case 0x35480a59: store_ds_constructor_decrypted_message_media_geo_point (D, T); return;
- case 0x588a0a97: store_ds_constructor_decrypted_message_media_contact (D, T); return;
- case 0xb095434b: store_ds_constructor_decrypted_message_media_document (D, T); return;
- case 0x524a415d: store_ds_constructor_decrypted_message_media_video (D, T); return;
- case 0x57e0a9cb: store_ds_constructor_decrypted_message_media_audio (D, T); return;
- case 0xfa95b0dd: store_ds_constructor_decrypted_message_media_external_document (D, T); return;
- case 0x4cee6ef3: store_ds_constructor_decrypted_message_media_video_l12 (D, T); return;
- case 0x6080758f: store_ds_constructor_decrypted_message_media_audio_l12 (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_dialog (struct tl_ds_dialog *D, struct paramed_type *T) {
- out_int (0xc1dd804a);
- store_ds_constructor_dialog (D, T); return;
-}
-void store_ds_type_bare_dialog (struct tl_ds_dialog *D, struct paramed_type *T) {
- store_ds_constructor_dialog (D, T); return;
-}
-void store_ds_type_disabled_feature (struct tl_ds_disabled_feature *D, struct paramed_type *T) {
- out_int (0xae636f24);
- store_ds_constructor_disabled_feature (D, T); return;
-}
-void store_ds_type_bare_disabled_feature (struct tl_ds_disabled_feature *D, struct paramed_type *T) {
- store_ds_constructor_disabled_feature (D, T); return;
-}
-void store_ds_type_document (struct tl_ds_document *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x36f8c871: store_ds_constructor_document_empty (D, T); return;
- case 0xf9a39f4f: store_ds_constructor_document (D, T); return;
- case 0x9efc6326: store_ds_constructor_document_l19 (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_document (struct tl_ds_document *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x36f8c871: store_ds_constructor_document_empty (D, T); return;
- case 0xf9a39f4f: store_ds_constructor_document (D, T); return;
- case 0x9efc6326: store_ds_constructor_document_l19 (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_document_attribute (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x6c37c15c: store_ds_constructor_document_attribute_image_size (D, T); return;
- case 0x11b58939: store_ds_constructor_document_attribute_animated (D, T); return;
- case 0x994c9882: store_ds_constructor_document_attribute_sticker_l28 (D, T); return;
- case 0x3a556302: store_ds_constructor_document_attribute_sticker (D, T); return;
- case 0x5910cccb: store_ds_constructor_document_attribute_video (D, T); return;
- case 0x051448e5: store_ds_constructor_document_attribute_audio (D, T); return;
- case 0x15590068: store_ds_constructor_document_attribute_filename (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_document_attribute (struct tl_ds_document_attribute *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x6c37c15c: store_ds_constructor_document_attribute_image_size (D, T); return;
- case 0x11b58939: store_ds_constructor_document_attribute_animated (D, T); return;
- case 0x994c9882: store_ds_constructor_document_attribute_sticker_l28 (D, T); return;
- case 0x3a556302: store_ds_constructor_document_attribute_sticker (D, T); return;
- case 0x5910cccb: store_ds_constructor_document_attribute_video (D, T); return;
- case 0x051448e5: store_ds_constructor_document_attribute_audio (D, T); return;
- case 0x15590068: store_ds_constructor_document_attribute_filename (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_double (double *D, struct paramed_type *T) {
- out_int (0x2210c154);
- store_ds_constructor_double (D, T); return;
-}
-void store_ds_type_bare_double (double *D, struct paramed_type *T) {
- store_ds_constructor_double (D, T); return;
-}
-void store_ds_type_encrypted_chat (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xab7ec0a0: store_ds_constructor_encrypted_chat_empty (D, T); return;
- case 0x3bf703dc: store_ds_constructor_encrypted_chat_waiting (D, T); return;
- case 0xc878527e: store_ds_constructor_encrypted_chat_requested (D, T); return;
- case 0xfa56ce36: store_ds_constructor_encrypted_chat (D, T); return;
- case 0x13d6dd27: store_ds_constructor_encrypted_chat_discarded (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_encrypted_chat (struct tl_ds_encrypted_chat *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xab7ec0a0: store_ds_constructor_encrypted_chat_empty (D, T); return;
- case 0x3bf703dc: store_ds_constructor_encrypted_chat_waiting (D, T); return;
- case 0xc878527e: store_ds_constructor_encrypted_chat_requested (D, T); return;
- case 0xfa56ce36: store_ds_constructor_encrypted_chat (D, T); return;
- case 0x13d6dd27: store_ds_constructor_encrypted_chat_discarded (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_encrypted_file (struct tl_ds_encrypted_file *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xc21f497e: store_ds_constructor_encrypted_file_empty (D, T); return;
- case 0x4a70994c: store_ds_constructor_encrypted_file (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_encrypted_file (struct tl_ds_encrypted_file *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xc21f497e: store_ds_constructor_encrypted_file_empty (D, T); return;
- case 0x4a70994c: store_ds_constructor_encrypted_file (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_encrypted_message (struct tl_ds_encrypted_message *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xed18c118: store_ds_constructor_encrypted_message (D, T); return;
- case 0x23734b06: store_ds_constructor_encrypted_message_service (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_encrypted_message (struct tl_ds_encrypted_message *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xed18c118: store_ds_constructor_encrypted_message (D, T); return;
- case 0x23734b06: store_ds_constructor_encrypted_message_service (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_error (struct tl_ds_error *D, struct paramed_type *T) {
- out_int (0xc4b9f9bb);
- store_ds_constructor_error (D, T); return;
-}
-void store_ds_type_bare_error (struct tl_ds_error *D, struct paramed_type *T) {
- store_ds_constructor_error (D, T); return;
-}
-void store_ds_type_exported_chat_invite (struct tl_ds_exported_chat_invite *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x69df3769: store_ds_constructor_chat_invite_empty (D, T); return;
- case 0xfc2e05bc: store_ds_constructor_chat_invite_exported (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_exported_chat_invite (struct tl_ds_exported_chat_invite *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x69df3769: store_ds_constructor_chat_invite_empty (D, T); return;
- case 0xfc2e05bc: store_ds_constructor_chat_invite_exported (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_file_location (struct tl_ds_file_location *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x7c596b46: store_ds_constructor_file_location_unavailable (D, T); return;
- case 0x53d69076: store_ds_constructor_file_location (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_file_location (struct tl_ds_file_location *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x7c596b46: store_ds_constructor_file_location_unavailable (D, T); return;
- case 0x53d69076: store_ds_constructor_file_location (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_geo_chat_message (struct tl_ds_geo_chat_message *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x60311a9b: store_ds_constructor_geo_chat_message_empty (D, T); return;
- case 0x4505f8e1: store_ds_constructor_geo_chat_message (D, T); return;
- case 0xd34fa24e: store_ds_constructor_geo_chat_message_service (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_geo_chat_message (struct tl_ds_geo_chat_message *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x60311a9b: store_ds_constructor_geo_chat_message_empty (D, T); return;
- case 0x4505f8e1: store_ds_constructor_geo_chat_message (D, T); return;
- case 0xd34fa24e: store_ds_constructor_geo_chat_message_service (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_geo_point (struct tl_ds_geo_point *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x1117dd5f: store_ds_constructor_geo_point_empty (D, T); return;
- case 0x2049d70c: store_ds_constructor_geo_point (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_geo_point (struct tl_ds_geo_point *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x1117dd5f: store_ds_constructor_geo_point_empty (D, T); return;
- case 0x2049d70c: store_ds_constructor_geo_point (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_imported_contact (struct tl_ds_imported_contact *D, struct paramed_type *T) {
- out_int (0xd0028438);
- store_ds_constructor_imported_contact (D, T); return;
-}
-void store_ds_type_bare_imported_contact (struct tl_ds_imported_contact *D, struct paramed_type *T) {
- store_ds_constructor_imported_contact (D, T); return;
-}
-void store_ds_type_input_app_event (struct tl_ds_input_app_event *D, struct paramed_type *T) {
- out_int (0x770656a8);
- store_ds_constructor_input_app_event (D, T); return;
-}
-void store_ds_type_bare_input_app_event (struct tl_ds_input_app_event *D, struct paramed_type *T) {
- store_ds_constructor_input_app_event (D, T); return;
-}
-void store_ds_type_input_audio (struct tl_ds_input_audio *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xd95adc84: store_ds_constructor_input_audio_empty (D, T); return;
- case 0x77d440ff: store_ds_constructor_input_audio (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_audio (struct tl_ds_input_audio *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xd95adc84: store_ds_constructor_input_audio_empty (D, T); return;
- case 0x77d440ff: store_ds_constructor_input_audio (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_chat_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x1ca48f57: store_ds_constructor_input_chat_photo_empty (D, T); return;
- case 0x94254732: store_ds_constructor_input_chat_uploaded_photo (D, T); return;
- case 0xb2e1bf08: store_ds_constructor_input_chat_photo (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_chat_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x1ca48f57: store_ds_constructor_input_chat_photo_empty (D, T); return;
- case 0x94254732: store_ds_constructor_input_chat_uploaded_photo (D, T); return;
- case 0xb2e1bf08: store_ds_constructor_input_chat_photo (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_contact (struct tl_ds_input_contact *D, struct paramed_type *T) {
- out_int (0xf392b7f4);
- store_ds_constructor_input_phone_contact (D, T); return;
-}
-void store_ds_type_bare_input_contact (struct tl_ds_input_contact *D, struct paramed_type *T) {
- store_ds_constructor_input_phone_contact (D, T); return;
-}
-void store_ds_type_input_document (struct tl_ds_input_document *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x72f0eaae: store_ds_constructor_input_document_empty (D, T); return;
- case 0x18798952: store_ds_constructor_input_document (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_document (struct tl_ds_input_document *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x72f0eaae: store_ds_constructor_input_document_empty (D, T); return;
- case 0x18798952: store_ds_constructor_input_document (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_encrypted_chat (struct tl_ds_input_encrypted_chat *D, struct paramed_type *T) {
- out_int (0xf141b5e1);
- store_ds_constructor_input_encrypted_chat (D, T); return;
-}
-void store_ds_type_bare_input_encrypted_chat (struct tl_ds_input_encrypted_chat *D, struct paramed_type *T) {
- store_ds_constructor_input_encrypted_chat (D, T); return;
-}
-void store_ds_type_input_encrypted_file (struct tl_ds_input_encrypted_file *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x1837c364: store_ds_constructor_input_encrypted_file_empty (D, T); return;
- case 0x64bd0306: store_ds_constructor_input_encrypted_file_uploaded (D, T); return;
- case 0x5a17b5e5: store_ds_constructor_input_encrypted_file (D, T); return;
- case 0x2dc173c8: store_ds_constructor_input_encrypted_file_big_uploaded (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_encrypted_file (struct tl_ds_input_encrypted_file *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x1837c364: store_ds_constructor_input_encrypted_file_empty (D, T); return;
- case 0x64bd0306: store_ds_constructor_input_encrypted_file_uploaded (D, T); return;
- case 0x5a17b5e5: store_ds_constructor_input_encrypted_file (D, T); return;
- case 0x2dc173c8: store_ds_constructor_input_encrypted_file_big_uploaded (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_file (struct tl_ds_input_file *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xf52ff27f: store_ds_constructor_input_file (D, T); return;
- case 0xfa4f0bb5: store_ds_constructor_input_file_big (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_file (struct tl_ds_input_file *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xf52ff27f: store_ds_constructor_input_file (D, T); return;
- case 0xfa4f0bb5: store_ds_constructor_input_file_big (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x14637196: store_ds_constructor_input_file_location (D, T); return;
- case 0x3d0364ec: store_ds_constructor_input_video_file_location (D, T); return;
- case 0xf5235d55: store_ds_constructor_input_encrypted_file_location (D, T); return;
- case 0x74dc404d: store_ds_constructor_input_audio_file_location (D, T); return;
- case 0x4e45abe9: store_ds_constructor_input_document_file_location (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x14637196: store_ds_constructor_input_file_location (D, T); return;
- case 0x3d0364ec: store_ds_constructor_input_video_file_location (D, T); return;
- case 0xf5235d55: store_ds_constructor_input_encrypted_file_location (D, T); return;
- case 0x74dc404d: store_ds_constructor_input_audio_file_location (D, T); return;
- case 0x4e45abe9: store_ds_constructor_input_document_file_location (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_geo_chat (struct tl_ds_input_geo_chat *D, struct paramed_type *T) {
- out_int (0x74d456fa);
- store_ds_constructor_input_geo_chat (D, T); return;
-}
-void store_ds_type_bare_input_geo_chat (struct tl_ds_input_geo_chat *D, struct paramed_type *T) {
- store_ds_constructor_input_geo_chat (D, T); return;
-}
-void store_ds_type_input_geo_point (struct tl_ds_input_geo_point *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xe4c123d6: store_ds_constructor_input_geo_point_empty (D, T); return;
- case 0xf3b7acc9: store_ds_constructor_input_geo_point (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_geo_point (struct tl_ds_input_geo_point *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xe4c123d6: store_ds_constructor_input_geo_point_empty (D, T); return;
- case 0xf3b7acc9: store_ds_constructor_input_geo_point (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_media (struct tl_ds_input_media *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x9664f57f: store_ds_constructor_input_media_empty (D, T); return;
- case 0xf7aff1c0: store_ds_constructor_input_media_uploaded_photo (D, T); return;
- case 0xe9bfb4f3: store_ds_constructor_input_media_photo (D, T); return;
- case 0xf9c44144: store_ds_constructor_input_media_geo_point (D, T); return;
- case 0xa6e45987: store_ds_constructor_input_media_contact (D, T); return;
- case 0xe13fd4bc: store_ds_constructor_input_media_uploaded_video (D, T); return;
- case 0x96fb97dc: store_ds_constructor_input_media_uploaded_thumb_video (D, T); return;
- case 0x936a4ebd: store_ds_constructor_input_media_video (D, T); return;
- case 0x4e498cab: store_ds_constructor_input_media_uploaded_audio (D, T); return;
- case 0x89938781: store_ds_constructor_input_media_audio (D, T); return;
- case 0xffe76b78: store_ds_constructor_input_media_uploaded_document (D, T); return;
- case 0x41481486: store_ds_constructor_input_media_uploaded_thumb_document (D, T); return;
- case 0xd184e841: store_ds_constructor_input_media_document (D, T); return;
- case 0x2827a81a: store_ds_constructor_input_media_venue (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_media (struct tl_ds_input_media *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x9664f57f: store_ds_constructor_input_media_empty (D, T); return;
- case 0xf7aff1c0: store_ds_constructor_input_media_uploaded_photo (D, T); return;
- case 0xe9bfb4f3: store_ds_constructor_input_media_photo (D, T); return;
- case 0xf9c44144: store_ds_constructor_input_media_geo_point (D, T); return;
- case 0xa6e45987: store_ds_constructor_input_media_contact (D, T); return;
- case 0xe13fd4bc: store_ds_constructor_input_media_uploaded_video (D, T); return;
- case 0x96fb97dc: store_ds_constructor_input_media_uploaded_thumb_video (D, T); return;
- case 0x936a4ebd: store_ds_constructor_input_media_video (D, T); return;
- case 0x4e498cab: store_ds_constructor_input_media_uploaded_audio (D, T); return;
- case 0x89938781: store_ds_constructor_input_media_audio (D, T); return;
- case 0xffe76b78: store_ds_constructor_input_media_uploaded_document (D, T); return;
- case 0x41481486: store_ds_constructor_input_media_uploaded_thumb_document (D, T); return;
- case 0xd184e841: store_ds_constructor_input_media_document (D, T); return;
- case 0x2827a81a: store_ds_constructor_input_media_venue (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_notify_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xb8bc5b0c: store_ds_constructor_input_notify_peer (D, T); return;
- case 0x193b4417: store_ds_constructor_input_notify_users (D, T); return;
- case 0x4a95e84e: store_ds_constructor_input_notify_chats (D, T); return;
- case 0xa429b886: store_ds_constructor_input_notify_all (D, T); return;
- case 0x4d8ddec8: store_ds_constructor_input_notify_geo_chat_peer (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_notify_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xb8bc5b0c: store_ds_constructor_input_notify_peer (D, T); return;
- case 0x193b4417: store_ds_constructor_input_notify_users (D, T); return;
- case 0x4a95e84e: store_ds_constructor_input_notify_chats (D, T); return;
- case 0xa429b886: store_ds_constructor_input_notify_all (D, T); return;
- case 0x4d8ddec8: store_ds_constructor_input_notify_geo_chat_peer (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_peer (struct tl_ds_input_peer *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x7f3b18ea: store_ds_constructor_input_peer_empty (D, T); return;
- case 0x7da07ec9: store_ds_constructor_input_peer_self (D, T); return;
- case 0x1023dbe8: store_ds_constructor_input_peer_contact (D, T); return;
- case 0x9b447325: store_ds_constructor_input_peer_foreign (D, T); return;
- case 0x179be863: store_ds_constructor_input_peer_chat (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_peer (struct tl_ds_input_peer *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x7f3b18ea: store_ds_constructor_input_peer_empty (D, T); return;
- case 0x7da07ec9: store_ds_constructor_input_peer_self (D, T); return;
- case 0x1023dbe8: store_ds_constructor_input_peer_contact (D, T); return;
- case 0x9b447325: store_ds_constructor_input_peer_foreign (D, T); return;
- case 0x179be863: store_ds_constructor_input_peer_chat (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_peer_notify_events (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xf03064d8: store_ds_constructor_input_peer_notify_events_empty (D, T); return;
- case 0xe86a2c74: store_ds_constructor_input_peer_notify_events_all (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_peer_notify_events (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xf03064d8: store_ds_constructor_input_peer_notify_events_empty (D, T); return;
- case 0xe86a2c74: store_ds_constructor_input_peer_notify_events_all (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *D, struct paramed_type *T) {
- out_int (0x46a2ce98);
- store_ds_constructor_input_peer_notify_settings (D, T); return;
-}
-void store_ds_type_bare_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *D, struct paramed_type *T) {
- store_ds_constructor_input_peer_notify_settings (D, T); return;
-}
-void store_ds_type_input_photo (struct tl_ds_input_photo *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x1cd7bf0d: store_ds_constructor_input_photo_empty (D, T); return;
- case 0xfb95c6c4: store_ds_constructor_input_photo (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_photo (struct tl_ds_input_photo *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x1cd7bf0d: store_ds_constructor_input_photo_empty (D, T); return;
- case 0xfb95c6c4: store_ds_constructor_input_photo (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_photo_crop (struct tl_ds_input_photo_crop *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xade6b004: store_ds_constructor_input_photo_crop_auto (D, T); return;
- case 0xd9915325: store_ds_constructor_input_photo_crop (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_photo_crop (struct tl_ds_input_photo_crop *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xade6b004: store_ds_constructor_input_photo_crop_auto (D, T); return;
- case 0xd9915325: store_ds_constructor_input_photo_crop (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_privacy_key (struct tl_ds_input_privacy_key *D, struct paramed_type *T) {
- out_int (0x4f96cb18);
- store_ds_constructor_input_privacy_key_status_timestamp (D, T); return;
-}
-void store_ds_type_bare_input_privacy_key (struct tl_ds_input_privacy_key *D, struct paramed_type *T) {
- store_ds_constructor_input_privacy_key_status_timestamp (D, T); return;
-}
-void store_ds_type_input_privacy_rule (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x0d09e07b: store_ds_constructor_input_privacy_value_allow_contacts (D, T); return;
- case 0x184b35ce: store_ds_constructor_input_privacy_value_allow_all (D, T); return;
- case 0x131cc67f: store_ds_constructor_input_privacy_value_allow_users (D, T); return;
- case 0x0ba52007: store_ds_constructor_input_privacy_value_disallow_contacts (D, T); return;
- case 0xd66b66c9: store_ds_constructor_input_privacy_value_disallow_all (D, T); return;
- case 0x90110467: store_ds_constructor_input_privacy_value_disallow_users (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_privacy_rule (struct tl_ds_input_privacy_rule *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x0d09e07b: store_ds_constructor_input_privacy_value_allow_contacts (D, T); return;
- case 0x184b35ce: store_ds_constructor_input_privacy_value_allow_all (D, T); return;
- case 0x131cc67f: store_ds_constructor_input_privacy_value_allow_users (D, T); return;
- case 0x0ba52007: store_ds_constructor_input_privacy_value_disallow_contacts (D, T); return;
- case 0xd66b66c9: store_ds_constructor_input_privacy_value_disallow_all (D, T); return;
- case 0x90110467: store_ds_constructor_input_privacy_value_disallow_users (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_sticker_set (struct tl_ds_input_sticker_set *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xffb62b95: store_ds_constructor_input_sticker_set_empty (D, T); return;
- case 0x9de7a269: store_ds_constructor_input_sticker_set_i_d (D, T); return;
- case 0x861cc8a0: store_ds_constructor_input_sticker_set_short_name (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_sticker_set (struct tl_ds_input_sticker_set *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xffb62b95: store_ds_constructor_input_sticker_set_empty (D, T); return;
- case 0x9de7a269: store_ds_constructor_input_sticker_set_i_d (D, T); return;
- case 0x861cc8a0: store_ds_constructor_input_sticker_set_short_name (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_user (struct tl_ds_input_user *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xb98886cf: store_ds_constructor_input_user_empty (D, T); return;
- case 0xf7c1b13f: store_ds_constructor_input_user_self (D, T); return;
- case 0x86e94f65: store_ds_constructor_input_user_contact (D, T); return;
- case 0x655e74ff: store_ds_constructor_input_user_foreign (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_user (struct tl_ds_input_user *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xb98886cf: store_ds_constructor_input_user_empty (D, T); return;
- case 0xf7c1b13f: store_ds_constructor_input_user_self (D, T); return;
- case 0x86e94f65: store_ds_constructor_input_user_contact (D, T); return;
- case 0x655e74ff: store_ds_constructor_input_user_foreign (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_input_video (struct tl_ds_input_video *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x5508ec75: store_ds_constructor_input_video_empty (D, T); return;
- case 0xee579652: store_ds_constructor_input_video (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_input_video (struct tl_ds_input_video *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x5508ec75: store_ds_constructor_input_video_empty (D, T); return;
- case 0xee579652: store_ds_constructor_input_video (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_int (int *D, struct paramed_type *T) {
- out_int (0xa8509bda);
- store_ds_constructor_int (D, T); return;
-}
-void store_ds_type_bare_int (int *D, struct paramed_type *T) {
- store_ds_constructor_int (D, T); return;
-}
-void store_ds_type_int128 (struct tl_ds_int128 *D, struct paramed_type *T) {
- out_int (0x7d36c439);
- store_ds_constructor_int128 (D, T); return;
-}
-void store_ds_type_bare_int128 (struct tl_ds_int128 *D, struct paramed_type *T) {
- store_ds_constructor_int128 (D, T); return;
-}
-void store_ds_type_int256 (struct tl_ds_int256 *D, struct paramed_type *T) {
- out_int (0xf2c798b3);
- store_ds_constructor_int256 (D, T); return;
-}
-void store_ds_type_bare_int256 (struct tl_ds_int256 *D, struct paramed_type *T) {
- store_ds_constructor_int256 (D, T); return;
-}
-void store_ds_type_keyboard_button (struct tl_ds_keyboard_button *D, struct paramed_type *T) {
- out_int (0xa2fa4880);
- store_ds_constructor_keyboard_button (D, T); return;
-}
-void store_ds_type_bare_keyboard_button (struct tl_ds_keyboard_button *D, struct paramed_type *T) {
- store_ds_constructor_keyboard_button (D, T); return;
-}
-void store_ds_type_keyboard_button_row (struct tl_ds_keyboard_button_row *D, struct paramed_type *T) {
- out_int (0x77608b83);
- store_ds_constructor_keyboard_button_row (D, T); return;
-}
-void store_ds_type_bare_keyboard_button_row (struct tl_ds_keyboard_button_row *D, struct paramed_type *T) {
- store_ds_constructor_keyboard_button_row (D, T); return;
-}
-void store_ds_type_long (long long *D, struct paramed_type *T) {
- out_int (0x22076cba);
- store_ds_constructor_long (D, T); return;
-}
-void store_ds_type_bare_long (long long *D, struct paramed_type *T) {
- store_ds_constructor_long (D, T); return;
-}
-void store_ds_type_message (struct tl_ds_message *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x83e5de54: store_ds_constructor_message_empty (D, T); return;
- case 0xc3060325: store_ds_constructor_message (D, T); return;
- case 0x1d86f70e: store_ds_constructor_message_service (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_message (struct tl_ds_message *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x83e5de54: store_ds_constructor_message_empty (D, T); return;
- case 0xc3060325: store_ds_constructor_message (D, T); return;
- case 0x1d86f70e: store_ds_constructor_message_service (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_message_action (struct tl_ds_message_action *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xb6aef7b0: store_ds_constructor_message_action_empty (D, T); return;
- case 0xa6638b9a: store_ds_constructor_message_action_chat_create (D, T); return;
- case 0xb5a1ce5a: store_ds_constructor_message_action_chat_edit_title (D, T); return;
- case 0x7fcb13a8: store_ds_constructor_message_action_chat_edit_photo (D, T); return;
- case 0x95e3fbef: store_ds_constructor_message_action_chat_delete_photo (D, T); return;
- case 0x5e3cfc4b: store_ds_constructor_message_action_chat_add_user (D, T); return;
- case 0xb2ae9b0c: store_ds_constructor_message_action_chat_delete_user (D, T); return;
- case 0x6f038ebc: store_ds_constructor_message_action_geo_chat_create (D, T); return;
- case 0x0c7d53de: store_ds_constructor_message_action_geo_chat_checkin (D, T); return;
- case 0xf89cf5e8: store_ds_constructor_message_action_chat_joined_by_link (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_message_action (struct tl_ds_message_action *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xb6aef7b0: store_ds_constructor_message_action_empty (D, T); return;
- case 0xa6638b9a: store_ds_constructor_message_action_chat_create (D, T); return;
- case 0xb5a1ce5a: store_ds_constructor_message_action_chat_edit_title (D, T); return;
- case 0x7fcb13a8: store_ds_constructor_message_action_chat_edit_photo (D, T); return;
- case 0x95e3fbef: store_ds_constructor_message_action_chat_delete_photo (D, T); return;
- case 0x5e3cfc4b: store_ds_constructor_message_action_chat_add_user (D, T); return;
- case 0xb2ae9b0c: store_ds_constructor_message_action_chat_delete_user (D, T); return;
- case 0x6f038ebc: store_ds_constructor_message_action_geo_chat_create (D, T); return;
- case 0x0c7d53de: store_ds_constructor_message_action_geo_chat_checkin (D, T); return;
- case 0xf89cf5e8: store_ds_constructor_message_action_chat_joined_by_link (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_message_media (struct tl_ds_message_media *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x3ded6320: store_ds_constructor_message_media_empty (D, T); return;
- case 0x3d8ce53d: store_ds_constructor_message_media_photo (D, T); return;
- case 0x5bcf1675: store_ds_constructor_message_media_video (D, T); return;
- case 0x56e0d474: store_ds_constructor_message_media_geo (D, T); return;
- case 0x5e7d2f39: store_ds_constructor_message_media_contact (D, T); return;
- case 0x9f84f49e: store_ds_constructor_message_media_unsupported (D, T); return;
- case 0x2fda2204: store_ds_constructor_message_media_document (D, T); return;
- case 0xc6b68300: store_ds_constructor_message_media_audio (D, T); return;
- case 0xa32dd600: store_ds_constructor_message_media_web_page (D, T); return;
- case 0x7912b71f: store_ds_constructor_message_media_venue (D, T); return;
- case 0xc8c45a2a: store_ds_constructor_message_media_photo_l27 (D, T); return;
- case 0xa2d24290: store_ds_constructor_message_media_video_l27 (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_message_media (struct tl_ds_message_media *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x3ded6320: store_ds_constructor_message_media_empty (D, T); return;
- case 0x3d8ce53d: store_ds_constructor_message_media_photo (D, T); return;
- case 0x5bcf1675: store_ds_constructor_message_media_video (D, T); return;
- case 0x56e0d474: store_ds_constructor_message_media_geo (D, T); return;
- case 0x5e7d2f39: store_ds_constructor_message_media_contact (D, T); return;
- case 0x9f84f49e: store_ds_constructor_message_media_unsupported (D, T); return;
- case 0x2fda2204: store_ds_constructor_message_media_document (D, T); return;
- case 0xc6b68300: store_ds_constructor_message_media_audio (D, T); return;
- case 0xa32dd600: store_ds_constructor_message_media_web_page (D, T); return;
- case 0x7912b71f: store_ds_constructor_message_media_venue (D, T); return;
- case 0xc8c45a2a: store_ds_constructor_message_media_photo_l27 (D, T); return;
- case 0xa2d24290: store_ds_constructor_message_media_video_l27 (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_messages_filter (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x57e2f66c: store_ds_constructor_input_messages_filter_empty (D, T); return;
- case 0x9609a51c: store_ds_constructor_input_messages_filter_photos (D, T); return;
- case 0x9fc00e65: store_ds_constructor_input_messages_filter_video (D, T); return;
- case 0x56e9f0e4: store_ds_constructor_input_messages_filter_photo_video (D, T); return;
- case 0xd95e73bb: store_ds_constructor_input_messages_filter_photo_video_documents (D, T); return;
- case 0x9eddf188: store_ds_constructor_input_messages_filter_document (D, T); return;
- case 0xcfc87522: store_ds_constructor_input_messages_filter_audio (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_messages_filter (struct tl_ds_messages_filter *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x57e2f66c: store_ds_constructor_input_messages_filter_empty (D, T); return;
- case 0x9609a51c: store_ds_constructor_input_messages_filter_photos (D, T); return;
- case 0x9fc00e65: store_ds_constructor_input_messages_filter_video (D, T); return;
- case 0x56e9f0e4: store_ds_constructor_input_messages_filter_photo_video (D, T); return;
- case 0xd95e73bb: store_ds_constructor_input_messages_filter_photo_video_documents (D, T); return;
- case 0x9eddf188: store_ds_constructor_input_messages_filter_document (D, T); return;
- case 0xcfc87522: store_ds_constructor_input_messages_filter_audio (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_nearest_dc (struct tl_ds_nearest_dc *D, struct paramed_type *T) {
- out_int (0x8e1a1775);
- store_ds_constructor_nearest_dc (D, T); return;
-}
-void store_ds_type_bare_nearest_dc (struct tl_ds_nearest_dc *D, struct paramed_type *T) {
- store_ds_constructor_nearest_dc (D, T); return;
-}
-void store_ds_type_notify_peer (struct tl_ds_notify_peer *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x9fd40bd8: store_ds_constructor_notify_peer (D, T); return;
- case 0xb4c83b4c: store_ds_constructor_notify_users (D, T); return;
- case 0xc007cec3: store_ds_constructor_notify_chats (D, T); return;
- case 0x74d07c60: store_ds_constructor_notify_all (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_notify_peer (struct tl_ds_notify_peer *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x9fd40bd8: store_ds_constructor_notify_peer (D, T); return;
- case 0xb4c83b4c: store_ds_constructor_notify_users (D, T); return;
- case 0xc007cec3: store_ds_constructor_notify_chats (D, T); return;
- case 0x74d07c60: store_ds_constructor_notify_all (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_null (struct tl_ds_null *D, struct paramed_type *T) {
- out_int (0x56730bcc);
- store_ds_constructor_null (D, T); return;
-}
-void store_ds_type_bare_null (struct tl_ds_null *D, struct paramed_type *T) {
- store_ds_constructor_null (D, T); return;
-}
-void store_ds_type_p_q_inner_data (struct tl_ds_p_q_inner_data *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x83c95aec: store_ds_constructor_p_q_inner_data (D, T); return;
- case 0x3c6a84d4: store_ds_constructor_p_q_inner_data_temp (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_p_q_inner_data (struct tl_ds_p_q_inner_data *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x83c95aec: store_ds_constructor_p_q_inner_data (D, T); return;
- case 0x3c6a84d4: store_ds_constructor_p_q_inner_data_temp (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_peer (struct tl_ds_peer *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x9db1bc6d: store_ds_constructor_peer_user (D, T); return;
- case 0xbad0e5bb: store_ds_constructor_peer_chat (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_peer (struct tl_ds_peer *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x9db1bc6d: store_ds_constructor_peer_user (D, T); return;
- case 0xbad0e5bb: store_ds_constructor_peer_chat (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_peer_notify_events (struct tl_ds_peer_notify_events *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xadd53cb3: store_ds_constructor_peer_notify_events_empty (D, T); return;
- case 0x6d1ded88: store_ds_constructor_peer_notify_events_all (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_peer_notify_events (struct tl_ds_peer_notify_events *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xadd53cb3: store_ds_constructor_peer_notify_events_empty (D, T); return;
- case 0x6d1ded88: store_ds_constructor_peer_notify_events_all (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_peer_notify_settings (struct tl_ds_peer_notify_settings *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x70a68512: store_ds_constructor_peer_notify_settings_empty (D, T); return;
- case 0x8d5e11ee: store_ds_constructor_peer_notify_settings (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_peer_notify_settings (struct tl_ds_peer_notify_settings *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x70a68512: store_ds_constructor_peer_notify_settings_empty (D, T); return;
- case 0x8d5e11ee: store_ds_constructor_peer_notify_settings (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_photo (struct tl_ds_photo *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x2331b22d: store_ds_constructor_photo_empty (D, T); return;
- case 0xc3838076: store_ds_constructor_photo (D, T); return;
- case 0x22b56751: store_ds_constructor_photo_l27 (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_photo (struct tl_ds_photo *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x2331b22d: store_ds_constructor_photo_empty (D, T); return;
- case 0xc3838076: store_ds_constructor_photo (D, T); return;
- case 0x22b56751: store_ds_constructor_photo_l27 (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_photo_size (struct tl_ds_photo_size *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x0e17e23c: store_ds_constructor_photo_size_empty (D, T); return;
- case 0x77bfb61b: store_ds_constructor_photo_size (D, T); return;
- case 0xe9a734fa: store_ds_constructor_photo_cached_size (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_photo_size (struct tl_ds_photo_size *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x0e17e23c: store_ds_constructor_photo_size_empty (D, T); return;
- case 0x77bfb61b: store_ds_constructor_photo_size (D, T); return;
- case 0xe9a734fa: store_ds_constructor_photo_cached_size (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_privacy_key (struct tl_ds_privacy_key *D, struct paramed_type *T) {
- out_int (0xbc2eab30);
- store_ds_constructor_privacy_key_status_timestamp (D, T); return;
-}
-void store_ds_type_bare_privacy_key (struct tl_ds_privacy_key *D, struct paramed_type *T) {
- store_ds_constructor_privacy_key_status_timestamp (D, T); return;
-}
-void store_ds_type_privacy_rule (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xfffe1bac: store_ds_constructor_privacy_value_allow_contacts (D, T); return;
- case 0x65427b82: store_ds_constructor_privacy_value_allow_all (D, T); return;
- case 0x4d5bbe0c: store_ds_constructor_privacy_value_allow_users (D, T); return;
- case 0xf888fa1a: store_ds_constructor_privacy_value_disallow_contacts (D, T); return;
- case 0x8b73e763: store_ds_constructor_privacy_value_disallow_all (D, T); return;
- case 0x0c7f49b7: store_ds_constructor_privacy_value_disallow_users (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_privacy_rule (struct tl_ds_privacy_rule *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xfffe1bac: store_ds_constructor_privacy_value_allow_contacts (D, T); return;
- case 0x65427b82: store_ds_constructor_privacy_value_allow_all (D, T); return;
- case 0x4d5bbe0c: store_ds_constructor_privacy_value_allow_users (D, T); return;
- case 0xf888fa1a: store_ds_constructor_privacy_value_disallow_contacts (D, T); return;
- case 0x8b73e763: store_ds_constructor_privacy_value_disallow_all (D, T); return;
- case 0x0c7f49b7: store_ds_constructor_privacy_value_disallow_users (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_received_notify_message (struct tl_ds_received_notify_message *D, struct paramed_type *T) {
- out_int (0xa384b779);
- store_ds_constructor_received_notify_message (D, T); return;
-}
-void store_ds_type_bare_received_notify_message (struct tl_ds_received_notify_message *D, struct paramed_type *T) {
- store_ds_constructor_received_notify_message (D, T); return;
-}
-void store_ds_type_reply_markup (struct tl_ds_reply_markup *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xa03e5b85: store_ds_constructor_reply_keyboard_hide (D, T); return;
- case 0xf4108aa0: store_ds_constructor_reply_keyboard_force_reply (D, T); return;
- case 0x3502758c: store_ds_constructor_reply_keyboard_markup (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_reply_markup (struct tl_ds_reply_markup *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xa03e5b85: store_ds_constructor_reply_keyboard_hide (D, T); return;
- case 0xf4108aa0: store_ds_constructor_reply_keyboard_force_reply (D, T); return;
- case 0x3502758c: store_ds_constructor_reply_keyboard_markup (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_res_p_q (struct tl_ds_res_p_q *D, struct paramed_type *T) {
- out_int (0x05162463);
- store_ds_constructor_res_p_q (D, T); return;
-}
-void store_ds_type_bare_res_p_q (struct tl_ds_res_p_q *D, struct paramed_type *T) {
- store_ds_constructor_res_p_q (D, T); return;
-}
-void store_ds_type_send_message_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x16bf744e: store_ds_constructor_send_message_typing_action (D, T); return;
- case 0xfd5ec8f5: store_ds_constructor_send_message_cancel_action (D, T); return;
- case 0xa187d66f: store_ds_constructor_send_message_record_video_action (D, T); return;
- case 0x92042ff7: store_ds_constructor_send_message_upload_video_action_l27 (D, T); return;
- case 0xe9763aec: store_ds_constructor_send_message_upload_video_action (D, T); return;
- case 0xd52f73f7: store_ds_constructor_send_message_record_audio_action (D, T); return;
- case 0xe6ac8a6f: store_ds_constructor_send_message_upload_audio_action_l27 (D, T); return;
- case 0xf351d7ab: store_ds_constructor_send_message_upload_audio_action (D, T); return;
- case 0xd1d34a26: store_ds_constructor_send_message_upload_photo_action (D, T); return;
- case 0x8faee98e: store_ds_constructor_send_message_upload_document_action_l27 (D, T); return;
- case 0xaa0cd9e4: store_ds_constructor_send_message_upload_document_action (D, T); return;
- case 0x176f8ba1: store_ds_constructor_send_message_geo_location_action (D, T); return;
- case 0x628cbc6f: store_ds_constructor_send_message_choose_contact_action (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_send_message_action (struct tl_ds_send_message_action *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x16bf744e: store_ds_constructor_send_message_typing_action (D, T); return;
- case 0xfd5ec8f5: store_ds_constructor_send_message_cancel_action (D, T); return;
- case 0xa187d66f: store_ds_constructor_send_message_record_video_action (D, T); return;
- case 0x92042ff7: store_ds_constructor_send_message_upload_video_action_l27 (D, T); return;
- case 0xe9763aec: store_ds_constructor_send_message_upload_video_action (D, T); return;
- case 0xd52f73f7: store_ds_constructor_send_message_record_audio_action (D, T); return;
- case 0xe6ac8a6f: store_ds_constructor_send_message_upload_audio_action_l27 (D, T); return;
- case 0xf351d7ab: store_ds_constructor_send_message_upload_audio_action (D, T); return;
- case 0xd1d34a26: store_ds_constructor_send_message_upload_photo_action (D, T); return;
- case 0x8faee98e: store_ds_constructor_send_message_upload_document_action_l27 (D, T); return;
- case 0xaa0cd9e4: store_ds_constructor_send_message_upload_document_action (D, T); return;
- case 0x176f8ba1: store_ds_constructor_send_message_geo_location_action (D, T); return;
- case 0x628cbc6f: store_ds_constructor_send_message_choose_contact_action (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_server_d_h_params (struct tl_ds_server_d_h_params *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x79cb045d: store_ds_constructor_server_d_h_params_fail (D, T); return;
- case 0xd0e8075c: store_ds_constructor_server_d_h_params_ok (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_server_d_h_params (struct tl_ds_server_d_h_params *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x79cb045d: store_ds_constructor_server_d_h_params_fail (D, T); return;
- case 0xd0e8075c: store_ds_constructor_server_d_h_params_ok (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *D, struct paramed_type *T) {
- out_int (0xb5890dba);
- store_ds_constructor_server_d_h_inner_data (D, T); return;
-}
-void store_ds_type_bare_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *D, struct paramed_type *T) {
- store_ds_constructor_server_d_h_inner_data (D, T); return;
-}
-void store_ds_type_set_client_d_h_params_answer (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x3bcbf734: store_ds_constructor_dh_gen_ok (D, T); return;
- case 0x46dc1fb9: store_ds_constructor_dh_gen_retry (D, T); return;
- case 0xa69dae02: store_ds_constructor_dh_gen_fail (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_set_client_d_h_params_answer (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x3bcbf734: store_ds_constructor_dh_gen_ok (D, T); return;
- case 0x46dc1fb9: store_ds_constructor_dh_gen_retry (D, T); return;
- case 0xa69dae02: store_ds_constructor_dh_gen_fail (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_sticker_pack (struct tl_ds_sticker_pack *D, struct paramed_type *T) {
- out_int (0x12b299d4);
- store_ds_constructor_sticker_pack (D, T); return;
-}
-void store_ds_type_bare_sticker_pack (struct tl_ds_sticker_pack *D, struct paramed_type *T) {
- store_ds_constructor_sticker_pack (D, T); return;
-}
-void store_ds_type_sticker_set (struct tl_ds_sticker_set *D, struct paramed_type *T) {
- out_int (0xa7a43b17);
- store_ds_constructor_sticker_set (D, T); return;
-}
-void store_ds_type_bare_sticker_set (struct tl_ds_sticker_set *D, struct paramed_type *T) {
- store_ds_constructor_sticker_set (D, T); return;
-}
-void store_ds_type_string (struct tl_ds_string *D, struct paramed_type *T) {
- out_int (0xb5286e24);
- store_ds_constructor_string (D, T); return;
-}
-void store_ds_type_bare_string (struct tl_ds_string *D, struct paramed_type *T) {
- store_ds_constructor_string (D, T); return;
-}
-void store_ds_type_update (struct tl_ds_update *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x1f2b0afd: store_ds_constructor_update_new_message (D, T); return;
- case 0x4e90bfd6: store_ds_constructor_update_message_i_d (D, T); return;
- case 0xa20db0e5: store_ds_constructor_update_delete_messages (D, T); return;
- case 0x5c486927: store_ds_constructor_update_user_typing (D, T); return;
- case 0x9a65ea1f: store_ds_constructor_update_chat_user_typing (D, T); return;
- case 0x07761198: store_ds_constructor_update_chat_participants (D, T); return;
- case 0x1bfbd823: store_ds_constructor_update_user_status (D, T); return;
- case 0xa7332b73: store_ds_constructor_update_user_name (D, T); return;
- case 0x95313b0c: store_ds_constructor_update_user_photo (D, T); return;
- case 0x2575bbb9: store_ds_constructor_update_contact_registered (D, T); return;
- case 0x9d2e67c5: store_ds_constructor_update_contact_link (D, T); return;
- case 0x8f06529a: store_ds_constructor_update_new_authorization (D, T); return;
- case 0x5a68e3f7: store_ds_constructor_update_new_geo_chat_message (D, T); return;
- case 0x12bcbd9a: store_ds_constructor_update_new_encrypted_message (D, T); return;
- case 0x1710f156: store_ds_constructor_update_encrypted_chat_typing (D, T); return;
- case 0xb4a2e88d: store_ds_constructor_update_encryption (D, T); return;
- case 0x38fe25b7: store_ds_constructor_update_encrypted_messages_read (D, T); return;
- case 0x3a0eeb22: store_ds_constructor_update_chat_participant_add (D, T); return;
- case 0x6e5f8c22: store_ds_constructor_update_chat_participant_delete (D, T); return;
- case 0x8e5e9873: store_ds_constructor_update_dc_options (D, T); return;
- case 0x80ece81a: store_ds_constructor_update_user_blocked (D, T); return;
- case 0xbec268ef: store_ds_constructor_update_notify_settings (D, T); return;
- case 0x382dd3e4: store_ds_constructor_update_service_notification (D, T); return;
- case 0xee3b272a: store_ds_constructor_update_privacy (D, T); return;
- case 0x12b9417b: store_ds_constructor_update_user_phone (D, T); return;
- case 0x9961fd5c: store_ds_constructor_update_read_history_inbox (D, T); return;
- case 0x2f2f21bf: store_ds_constructor_update_read_history_outbox (D, T); return;
- case 0x2cc36971: store_ds_constructor_update_web_page (D, T); return;
- case 0x68c13933: store_ds_constructor_update_read_messages_contents (D, T); return;
- case 0x03114739: store_ds_constructor_update_msg_update (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_update (struct tl_ds_update *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x1f2b0afd: store_ds_constructor_update_new_message (D, T); return;
- case 0x4e90bfd6: store_ds_constructor_update_message_i_d (D, T); return;
- case 0xa20db0e5: store_ds_constructor_update_delete_messages (D, T); return;
- case 0x5c486927: store_ds_constructor_update_user_typing (D, T); return;
- case 0x9a65ea1f: store_ds_constructor_update_chat_user_typing (D, T); return;
- case 0x07761198: store_ds_constructor_update_chat_participants (D, T); return;
- case 0x1bfbd823: store_ds_constructor_update_user_status (D, T); return;
- case 0xa7332b73: store_ds_constructor_update_user_name (D, T); return;
- case 0x95313b0c: store_ds_constructor_update_user_photo (D, T); return;
- case 0x2575bbb9: store_ds_constructor_update_contact_registered (D, T); return;
- case 0x9d2e67c5: store_ds_constructor_update_contact_link (D, T); return;
- case 0x8f06529a: store_ds_constructor_update_new_authorization (D, T); return;
- case 0x5a68e3f7: store_ds_constructor_update_new_geo_chat_message (D, T); return;
- case 0x12bcbd9a: store_ds_constructor_update_new_encrypted_message (D, T); return;
- case 0x1710f156: store_ds_constructor_update_encrypted_chat_typing (D, T); return;
- case 0xb4a2e88d: store_ds_constructor_update_encryption (D, T); return;
- case 0x38fe25b7: store_ds_constructor_update_encrypted_messages_read (D, T); return;
- case 0x3a0eeb22: store_ds_constructor_update_chat_participant_add (D, T); return;
- case 0x6e5f8c22: store_ds_constructor_update_chat_participant_delete (D, T); return;
- case 0x8e5e9873: store_ds_constructor_update_dc_options (D, T); return;
- case 0x80ece81a: store_ds_constructor_update_user_blocked (D, T); return;
- case 0xbec268ef: store_ds_constructor_update_notify_settings (D, T); return;
- case 0x382dd3e4: store_ds_constructor_update_service_notification (D, T); return;
- case 0xee3b272a: store_ds_constructor_update_privacy (D, T); return;
- case 0x12b9417b: store_ds_constructor_update_user_phone (D, T); return;
- case 0x9961fd5c: store_ds_constructor_update_read_history_inbox (D, T); return;
- case 0x2f2f21bf: store_ds_constructor_update_read_history_outbox (D, T); return;
- case 0x2cc36971: store_ds_constructor_update_web_page (D, T); return;
- case 0x68c13933: store_ds_constructor_update_read_messages_contents (D, T); return;
- case 0x03114739: store_ds_constructor_update_msg_update (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_updates (struct tl_ds_updates *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xe317af7e: store_ds_constructor_updates_too_long (D, T); return;
- case 0xed5c2127: store_ds_constructor_update_short_message (D, T); return;
- case 0x52238b3c: store_ds_constructor_update_short_chat_message (D, T); return;
- case 0x78d4dec1: store_ds_constructor_update_short (D, T); return;
- case 0x725b04c3: store_ds_constructor_updates_combined (D, T); return;
- case 0x74ae4240: store_ds_constructor_updates (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_updates (struct tl_ds_updates *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xe317af7e: store_ds_constructor_updates_too_long (D, T); return;
- case 0xed5c2127: store_ds_constructor_update_short_message (D, T); return;
- case 0x52238b3c: store_ds_constructor_update_short_chat_message (D, T); return;
- case 0x78d4dec1: store_ds_constructor_update_short (D, T); return;
- case 0x725b04c3: store_ds_constructor_updates_combined (D, T); return;
- case 0x74ae4240: store_ds_constructor_updates (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_user (struct tl_ds_user *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x200250ba: store_ds_constructor_user_empty (D, T); return;
- case 0x22e49072: store_ds_constructor_user (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_user (struct tl_ds_user *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x200250ba: store_ds_constructor_user_empty (D, T); return;
- case 0x22e49072: store_ds_constructor_user (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_user_full (struct tl_ds_user_full *D, struct paramed_type *T) {
- out_int (0x5a89ac5b);
- store_ds_constructor_user_full (D, T); return;
-}
-void store_ds_type_bare_user_full (struct tl_ds_user_full *D, struct paramed_type *T) {
- store_ds_constructor_user_full (D, T); return;
-}
-void store_ds_type_user_profile_photo (struct tl_ds_user_profile_photo *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x4f11bae1: store_ds_constructor_user_profile_photo_empty (D, T); return;
- case 0xd559d8c8: store_ds_constructor_user_profile_photo (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_user_profile_photo (struct tl_ds_user_profile_photo *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x4f11bae1: store_ds_constructor_user_profile_photo_empty (D, T); return;
- case 0xd559d8c8: store_ds_constructor_user_profile_photo (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_user_status (struct tl_ds_user_status *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x09d05049: store_ds_constructor_user_status_empty (D, T); return;
- case 0xedb93949: store_ds_constructor_user_status_online (D, T); return;
- case 0x008c703f: store_ds_constructor_user_status_offline (D, T); return;
- case 0xe26f42f1: store_ds_constructor_user_status_recently (D, T); return;
- case 0x07bf09fc: store_ds_constructor_user_status_last_week (D, T); return;
- case 0x77ebc742: store_ds_constructor_user_status_last_month (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_user_status (struct tl_ds_user_status *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x09d05049: store_ds_constructor_user_status_empty (D, T); return;
- case 0xedb93949: store_ds_constructor_user_status_online (D, T); return;
- case 0x008c703f: store_ds_constructor_user_status_offline (D, T); return;
- case 0xe26f42f1: store_ds_constructor_user_status_recently (D, T); return;
- case 0x07bf09fc: store_ds_constructor_user_status_last_week (D, T); return;
- case 0x77ebc742: store_ds_constructor_user_status_last_month (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_vector (struct tl_ds_vector *D, struct paramed_type *T) {
- out_int (0x1cb5c415);
- store_ds_constructor_vector (D, T); return;
-}
-void store_ds_type_bare_vector (struct tl_ds_vector *D, struct paramed_type *T) {
- store_ds_constructor_vector (D, T); return;
-}
-void store_ds_type_video (struct tl_ds_video *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xc10658a8: store_ds_constructor_video_empty (D, T); return;
- case 0xee9f4a4d: store_ds_constructor_video (D, T); return;
- case 0x388fa391: store_ds_constructor_video_l27 (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_video (struct tl_ds_video *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xc10658a8: store_ds_constructor_video_empty (D, T); return;
- case 0xee9f4a4d: store_ds_constructor_video (D, T); return;
- case 0x388fa391: store_ds_constructor_video_l27 (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_wall_paper (struct tl_ds_wall_paper *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xccb03657: store_ds_constructor_wall_paper (D, T); return;
- case 0x63117f24: store_ds_constructor_wall_paper_solid (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_wall_paper (struct tl_ds_wall_paper *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xccb03657: store_ds_constructor_wall_paper (D, T); return;
- case 0x63117f24: store_ds_constructor_wall_paper_solid (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_web_page (struct tl_ds_web_page *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xeb1477e8: store_ds_constructor_web_page_empty (D, T); return;
- case 0xc586da1c: store_ds_constructor_web_page_pending (D, T); return;
- case 0xa31ea0b5: store_ds_constructor_web_page (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_web_page (struct tl_ds_web_page *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xeb1477e8: store_ds_constructor_web_page_empty (D, T); return;
- case 0xc586da1c: store_ds_constructor_web_page_pending (D, T); return;
- case 0xa31ea0b5: store_ds_constructor_web_page (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_account_authorizations (struct tl_ds_account_authorizations *D, struct paramed_type *T) {
- out_int (0x1250abde);
- store_ds_constructor_account_authorizations (D, T); return;
-}
-void store_ds_type_bare_account_authorizations (struct tl_ds_account_authorizations *D, struct paramed_type *T) {
- store_ds_constructor_account_authorizations (D, T); return;
-}
-void store_ds_type_account_password (struct tl_ds_account_password *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x96dabc18: store_ds_constructor_account_no_password (D, T); return;
- case 0x7c18141c: store_ds_constructor_account_password (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_account_password (struct tl_ds_account_password *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x96dabc18: store_ds_constructor_account_no_password (D, T); return;
- case 0x7c18141c: store_ds_constructor_account_password (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_account_password_input_settings (struct tl_ds_account_password_input_settings *D, struct paramed_type *T) {
- out_int (0xbcfc532c);
- store_ds_constructor_account_password_input_settings (D, T); return;
-}
-void store_ds_type_bare_account_password_input_settings (struct tl_ds_account_password_input_settings *D, struct paramed_type *T) {
- store_ds_constructor_account_password_input_settings (D, T); return;
-}
-void store_ds_type_account_password_settings (struct tl_ds_account_password_settings *D, struct paramed_type *T) {
- out_int (0xb7b72ab3);
- store_ds_constructor_account_password_settings (D, T); return;
-}
-void store_ds_type_bare_account_password_settings (struct tl_ds_account_password_settings *D, struct paramed_type *T) {
- store_ds_constructor_account_password_settings (D, T); return;
-}
-void store_ds_type_account_privacy_rules (struct tl_ds_account_privacy_rules *D, struct paramed_type *T) {
- out_int (0x554abb6f);
- store_ds_constructor_account_privacy_rules (D, T); return;
-}
-void store_ds_type_bare_account_privacy_rules (struct tl_ds_account_privacy_rules *D, struct paramed_type *T) {
- store_ds_constructor_account_privacy_rules (D, T); return;
-}
-void store_ds_type_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *D, struct paramed_type *T) {
- out_int (0xa4f58c4c);
- store_ds_constructor_account_sent_change_phone_code (D, T); return;
-}
-void store_ds_type_bare_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *D, struct paramed_type *T) {
- store_ds_constructor_account_sent_change_phone_code (D, T); return;
-}
-void store_ds_type_auth_authorization (struct tl_ds_auth_authorization *D, struct paramed_type *T) {
- out_int (0xff036af1);
- store_ds_constructor_auth_authorization (D, T); return;
-}
-void store_ds_type_bare_auth_authorization (struct tl_ds_auth_authorization *D, struct paramed_type *T) {
- store_ds_constructor_auth_authorization (D, T); return;
-}
-void store_ds_type_auth_checked_phone (struct tl_ds_auth_checked_phone *D, struct paramed_type *T) {
- out_int (0x811ea28e);
- store_ds_constructor_auth_checked_phone (D, T); return;
-}
-void store_ds_type_bare_auth_checked_phone (struct tl_ds_auth_checked_phone *D, struct paramed_type *T) {
- store_ds_constructor_auth_checked_phone (D, T); return;
-}
-void store_ds_type_auth_exported_authorization (struct tl_ds_auth_exported_authorization *D, struct paramed_type *T) {
- out_int (0xdf969c2d);
- store_ds_constructor_auth_exported_authorization (D, T); return;
-}
-void store_ds_type_bare_auth_exported_authorization (struct tl_ds_auth_exported_authorization *D, struct paramed_type *T) {
- store_ds_constructor_auth_exported_authorization (D, T); return;
-}
-void store_ds_type_auth_password_recovery (struct tl_ds_auth_password_recovery *D, struct paramed_type *T) {
- out_int (0x137948a5);
- store_ds_constructor_auth_password_recovery (D, T); return;
-}
-void store_ds_type_bare_auth_password_recovery (struct tl_ds_auth_password_recovery *D, struct paramed_type *T) {
- store_ds_constructor_auth_password_recovery (D, T); return;
-}
-void store_ds_type_auth_sent_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xefed51d9: store_ds_constructor_auth_sent_code (D, T); return;
- case 0xe325edcf: store_ds_constructor_auth_sent_app_code (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_auth_sent_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xefed51d9: store_ds_constructor_auth_sent_code (D, T); return;
- case 0xe325edcf: store_ds_constructor_auth_sent_app_code (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_binlog_encr_key (struct tl_ds_binlog_encr_key *D, struct paramed_type *T) {
- out_int (0x0377168f);
- store_ds_constructor_binlog_encr_key (D, T); return;
-}
-void store_ds_type_bare_binlog_encr_key (struct tl_ds_binlog_encr_key *D, struct paramed_type *T) {
- store_ds_constructor_binlog_encr_key (D, T); return;
-}
-void store_ds_type_binlog_update (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x3b06de69: store_ds_constructor_binlog_start (D, T); return;
- case 0xf96feb32: store_ds_constructor_binlog_dc_option (D, T); return;
- case 0x7c0d22d8: store_ds_constructor_binlog_dc_option_new (D, T); return;
- case 0x71e8c156: store_ds_constructor_binlog_auth_key (D, T); return;
- case 0x9e83dbdc: store_ds_constructor_binlog_default_dc (D, T); return;
- case 0x26451bb5: store_ds_constructor_binlog_dc_signed (D, T); return;
- case 0x68a870e8: store_ds_constructor_binlog_our_id (D, T); return;
- case 0xeaeb7826: store_ds_constructor_binlog_set_dh_params (D, T); return;
- case 0x2ca8c939: store_ds_constructor_binlog_set_pts (D, T); return;
- case 0xd95738ac: store_ds_constructor_binlog_set_qts (D, T); return;
- case 0x1d0f4b52: store_ds_constructor_binlog_set_date (D, T); return;
- case 0x6eeb2989: store_ds_constructor_binlog_set_seq (D, T); return;
- case 0xee1b38e8: store_ds_constructor_binlog_encr_chat_delete (D, T); return;
- case 0x84977251: store_ds_constructor_binlog_encr_chat_new (D, T); return;
- case 0x9d49488d: store_ds_constructor_binlog_encr_chat_exchange_new (D, T); return;
- case 0xac55d447: store_ds_constructor_binlog_user_delete (D, T); return;
- case 0x127cf2f9: store_ds_constructor_binlog_user_new (D, T); return;
- case 0x0a10aa92: store_ds_constructor_binlog_chat_new (D, T); return;
- case 0x535475ea: store_ds_constructor_binlog_chat_add_participant (D, T); return;
- case 0x7dd1a1a2: store_ds_constructor_binlog_chat_del_participant (D, T); return;
- case 0x3c873416: store_ds_constructor_binlog_set_msg_id (D, T); return;
- case 0x847e77b1: store_ds_constructor_binlog_message_delete (D, T); return;
- case 0x427cfcdb: store_ds_constructor_binlog_message_new (D, T); return;
- case 0x6cf7cabc: store_ds_constructor_binlog_message_encr_new (D, T); return;
- case 0x6dd4d85f: store_ds_constructor_binlog_msg_update (D, T); return;
- case 0x83327955: store_ds_constructor_binlog_reset_authorization (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_binlog_update (struct tl_ds_binlog_update *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x3b06de69: store_ds_constructor_binlog_start (D, T); return;
- case 0xf96feb32: store_ds_constructor_binlog_dc_option (D, T); return;
- case 0x7c0d22d8: store_ds_constructor_binlog_dc_option_new (D, T); return;
- case 0x71e8c156: store_ds_constructor_binlog_auth_key (D, T); return;
- case 0x9e83dbdc: store_ds_constructor_binlog_default_dc (D, T); return;
- case 0x26451bb5: store_ds_constructor_binlog_dc_signed (D, T); return;
- case 0x68a870e8: store_ds_constructor_binlog_our_id (D, T); return;
- case 0xeaeb7826: store_ds_constructor_binlog_set_dh_params (D, T); return;
- case 0x2ca8c939: store_ds_constructor_binlog_set_pts (D, T); return;
- case 0xd95738ac: store_ds_constructor_binlog_set_qts (D, T); return;
- case 0x1d0f4b52: store_ds_constructor_binlog_set_date (D, T); return;
- case 0x6eeb2989: store_ds_constructor_binlog_set_seq (D, T); return;
- case 0xee1b38e8: store_ds_constructor_binlog_encr_chat_delete (D, T); return;
- case 0x84977251: store_ds_constructor_binlog_encr_chat_new (D, T); return;
- case 0x9d49488d: store_ds_constructor_binlog_encr_chat_exchange_new (D, T); return;
- case 0xac55d447: store_ds_constructor_binlog_user_delete (D, T); return;
- case 0x127cf2f9: store_ds_constructor_binlog_user_new (D, T); return;
- case 0x0a10aa92: store_ds_constructor_binlog_chat_new (D, T); return;
- case 0x535475ea: store_ds_constructor_binlog_chat_add_participant (D, T); return;
- case 0x7dd1a1a2: store_ds_constructor_binlog_chat_del_participant (D, T); return;
- case 0x3c873416: store_ds_constructor_binlog_set_msg_id (D, T); return;
- case 0x847e77b1: store_ds_constructor_binlog_message_delete (D, T); return;
- case 0x427cfcdb: store_ds_constructor_binlog_message_new (D, T); return;
- case 0x6cf7cabc: store_ds_constructor_binlog_message_encr_new (D, T); return;
- case 0x6dd4d85f: store_ds_constructor_binlog_msg_update (D, T); return;
- case 0x83327955: store_ds_constructor_binlog_reset_authorization (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_contacts_blocked (struct tl_ds_contacts_blocked *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x1c138d15: store_ds_constructor_contacts_blocked (D, T); return;
- case 0x900802a1: store_ds_constructor_contacts_blocked_slice (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_contacts_blocked (struct tl_ds_contacts_blocked *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x1c138d15: store_ds_constructor_contacts_blocked (D, T); return;
- case 0x900802a1: store_ds_constructor_contacts_blocked_slice (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_contacts_contacts (struct tl_ds_contacts_contacts *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xb74ba9d2: store_ds_constructor_contacts_contacts_not_modified (D, T); return;
- case 0x6f8b8cb2: store_ds_constructor_contacts_contacts (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_contacts_contacts (struct tl_ds_contacts_contacts *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xb74ba9d2: store_ds_constructor_contacts_contacts_not_modified (D, T); return;
- case 0x6f8b8cb2: store_ds_constructor_contacts_contacts (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_contacts_found (struct tl_ds_contacts_found *D, struct paramed_type *T) {
- out_int (0x0566000e);
- store_ds_constructor_contacts_found (D, T); return;
-}
-void store_ds_type_bare_contacts_found (struct tl_ds_contacts_found *D, struct paramed_type *T) {
- store_ds_constructor_contacts_found (D, T); return;
-}
-void store_ds_type_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *D, struct paramed_type *T) {
- out_int (0xad524315);
- store_ds_constructor_contacts_imported_contacts (D, T); return;
-}
-void store_ds_type_bare_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *D, struct paramed_type *T) {
- store_ds_constructor_contacts_imported_contacts (D, T); return;
-}
-void store_ds_type_contacts_link (struct tl_ds_contacts_link *D, struct paramed_type *T) {
- out_int (0x3ace484c);
- store_ds_constructor_contacts_link (D, T); return;
-}
-void store_ds_type_bare_contacts_link (struct tl_ds_contacts_link *D, struct paramed_type *T) {
- store_ds_constructor_contacts_link (D, T); return;
-}
-void store_ds_type_contacts_suggested (struct tl_ds_contacts_suggested *D, struct paramed_type *T) {
- out_int (0x5649dcc5);
- store_ds_constructor_contacts_suggested (D, T); return;
-}
-void store_ds_type_bare_contacts_suggested (struct tl_ds_contacts_suggested *D, struct paramed_type *T) {
- store_ds_constructor_contacts_suggested (D, T); return;
-}
-void store_ds_type_geochats_located (struct tl_ds_geochats_located *D, struct paramed_type *T) {
- out_int (0x48feb267);
- store_ds_constructor_geochats_located (D, T); return;
-}
-void store_ds_type_bare_geochats_located (struct tl_ds_geochats_located *D, struct paramed_type *T) {
- store_ds_constructor_geochats_located (D, T); return;
-}
-void store_ds_type_geochats_messages (struct tl_ds_geochats_messages *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xd1526db1: store_ds_constructor_geochats_messages (D, T); return;
- case 0xbc5863e8: store_ds_constructor_geochats_messages_slice (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_geochats_messages (struct tl_ds_geochats_messages *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xd1526db1: store_ds_constructor_geochats_messages (D, T); return;
- case 0xbc5863e8: store_ds_constructor_geochats_messages_slice (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_geochats_stated_message (struct tl_ds_geochats_stated_message *D, struct paramed_type *T) {
- out_int (0x17b1578b);
- store_ds_constructor_geochats_stated_message (D, T); return;
-}
-void store_ds_type_bare_geochats_stated_message (struct tl_ds_geochats_stated_message *D, struct paramed_type *T) {
- store_ds_constructor_geochats_stated_message (D, T); return;
-}
-void store_ds_type_help_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x8987f311: store_ds_constructor_help_app_update (D, T); return;
- case 0xc45a6536: store_ds_constructor_help_no_app_update (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_help_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x8987f311: store_ds_constructor_help_app_update (D, T); return;
- case 0xc45a6536: store_ds_constructor_help_no_app_update (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_help_invite_text (struct tl_ds_help_invite_text *D, struct paramed_type *T) {
- out_int (0x18cb9f78);
- store_ds_constructor_help_invite_text (D, T); return;
-}
-void store_ds_type_bare_help_invite_text (struct tl_ds_help_invite_text *D, struct paramed_type *T) {
- store_ds_constructor_help_invite_text (D, T); return;
-}
-void store_ds_type_help_support (struct tl_ds_help_support *D, struct paramed_type *T) {
- out_int (0x17c6b5f6);
- store_ds_constructor_help_support (D, T); return;
-}
-void store_ds_type_bare_help_support (struct tl_ds_help_support *D, struct paramed_type *T) {
- store_ds_constructor_help_support (D, T); return;
-}
-void store_ds_type_messages_affected_history (struct tl_ds_messages_affected_history *D, struct paramed_type *T) {
- out_int (0xb45c69d1);
- store_ds_constructor_messages_affected_history (D, T); return;
-}
-void store_ds_type_bare_messages_affected_history (struct tl_ds_messages_affected_history *D, struct paramed_type *T) {
- store_ds_constructor_messages_affected_history (D, T); return;
-}
-void store_ds_type_messages_affected_messages (struct tl_ds_messages_affected_messages *D, struct paramed_type *T) {
- out_int (0x84d19185);
- store_ds_constructor_messages_affected_messages (D, T); return;
-}
-void store_ds_type_bare_messages_affected_messages (struct tl_ds_messages_affected_messages *D, struct paramed_type *T) {
- store_ds_constructor_messages_affected_messages (D, T); return;
-}
-void store_ds_type_messages_all_stickers (struct tl_ds_messages_all_stickers *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xe86602c3: store_ds_constructor_messages_all_stickers_not_modified (D, T); return;
- case 0x5ce352ec: store_ds_constructor_messages_all_stickers (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_messages_all_stickers (struct tl_ds_messages_all_stickers *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xe86602c3: store_ds_constructor_messages_all_stickers_not_modified (D, T); return;
- case 0x5ce352ec: store_ds_constructor_messages_all_stickers (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_messages_chat_full (struct tl_ds_messages_chat_full *D, struct paramed_type *T) {
- out_int (0xe5d7d19c);
- store_ds_constructor_messages_chat_full (D, T); return;
-}
-void store_ds_type_bare_messages_chat_full (struct tl_ds_messages_chat_full *D, struct paramed_type *T) {
- store_ds_constructor_messages_chat_full (D, T); return;
-}
-void store_ds_type_messages_chats (struct tl_ds_messages_chats *D, struct paramed_type *T) {
- out_int (0x64ff9fd5);
- store_ds_constructor_messages_chats (D, T); return;
-}
-void store_ds_type_bare_messages_chats (struct tl_ds_messages_chats *D, struct paramed_type *T) {
- store_ds_constructor_messages_chats (D, T); return;
-}
-void store_ds_type_messages_dh_config (struct tl_ds_messages_dh_config *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xc0e24635: store_ds_constructor_messages_dh_config_not_modified (D, T); return;
- case 0x2c221edd: store_ds_constructor_messages_dh_config (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_messages_dh_config (struct tl_ds_messages_dh_config *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xc0e24635: store_ds_constructor_messages_dh_config_not_modified (D, T); return;
- case 0x2c221edd: store_ds_constructor_messages_dh_config (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_messages_dialogs (struct tl_ds_messages_dialogs *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x15ba6c40: store_ds_constructor_messages_dialogs (D, T); return;
- case 0x71e094f3: store_ds_constructor_messages_dialogs_slice (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_messages_dialogs (struct tl_ds_messages_dialogs *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x15ba6c40: store_ds_constructor_messages_dialogs (D, T); return;
- case 0x71e094f3: store_ds_constructor_messages_dialogs_slice (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_messages_message (struct tl_ds_messages_message *D, struct paramed_type *T) {
- out_int (0x3f4e0648);
- store_ds_constructor_messages_message_empty (D, T); return;
-}
-void store_ds_type_bare_messages_message (struct tl_ds_messages_message *D, struct paramed_type *T) {
- store_ds_constructor_messages_message_empty (D, T); return;
-}
-void store_ds_type_messages_messages (struct tl_ds_messages_messages *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x8c718e87: store_ds_constructor_messages_messages (D, T); return;
- case 0x0b446ae3: store_ds_constructor_messages_messages_slice (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_messages_messages (struct tl_ds_messages_messages *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x8c718e87: store_ds_constructor_messages_messages (D, T); return;
- case 0x0b446ae3: store_ds_constructor_messages_messages_slice (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x560f8935: store_ds_constructor_messages_sent_encrypted_message (D, T); return;
- case 0x9493ff32: store_ds_constructor_messages_sent_encrypted_file (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x560f8935: store_ds_constructor_messages_sent_encrypted_message (D, T); return;
- case 0x9493ff32: store_ds_constructor_messages_sent_encrypted_file (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_messages_sent_message (struct tl_ds_messages_sent_message *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x4c3d47f3: store_ds_constructor_messages_sent_message (D, T); return;
- case 0x35a1a663: store_ds_constructor_messages_sent_message_link (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_messages_sent_message (struct tl_ds_messages_sent_message *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x4c3d47f3: store_ds_constructor_messages_sent_message (D, T); return;
- case 0x35a1a663: store_ds_constructor_messages_sent_message_link (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_messages_sticker_set (struct tl_ds_messages_sticker_set *D, struct paramed_type *T) {
- out_int (0xb60a24a6);
- store_ds_constructor_messages_sticker_set (D, T); return;
-}
-void store_ds_type_bare_messages_sticker_set (struct tl_ds_messages_sticker_set *D, struct paramed_type *T) {
- store_ds_constructor_messages_sticker_set (D, T); return;
-}
-void store_ds_type_messages_stickers (struct tl_ds_messages_stickers *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xf1749a22: store_ds_constructor_messages_stickers_not_modified (D, T); return;
- case 0x8a8ecd32: store_ds_constructor_messages_stickers (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_messages_stickers (struct tl_ds_messages_stickers *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xf1749a22: store_ds_constructor_messages_stickers_not_modified (D, T); return;
- case 0x8a8ecd32: store_ds_constructor_messages_stickers (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_photos_photo (struct tl_ds_photos_photo *D, struct paramed_type *T) {
- out_int (0x20212ca8);
- store_ds_constructor_photos_photo (D, T); return;
-}
-void store_ds_type_bare_photos_photo (struct tl_ds_photos_photo *D, struct paramed_type *T) {
- store_ds_constructor_photos_photo (D, T); return;
-}
-void store_ds_type_photos_photos (struct tl_ds_photos_photos *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x8dca6aa5: store_ds_constructor_photos_photos (D, T); return;
- case 0x15051f54: store_ds_constructor_photos_photos_slice (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_photos_photos (struct tl_ds_photos_photos *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x8dca6aa5: store_ds_constructor_photos_photos (D, T); return;
- case 0x15051f54: store_ds_constructor_photos_photos_slice (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_storage_file_type (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0xaa963b05: store_ds_constructor_storage_file_unknown (D, T); return;
- case 0x007efe0e: store_ds_constructor_storage_file_jpeg (D, T); return;
- case 0xcae1aadf: store_ds_constructor_storage_file_gif (D, T); return;
- case 0x0a4f63c0: store_ds_constructor_storage_file_png (D, T); return;
- case 0xae1e508d: store_ds_constructor_storage_file_pdf (D, T); return;
- case 0x528a0677: store_ds_constructor_storage_file_mp3 (D, T); return;
- case 0x4b09ebbc: store_ds_constructor_storage_file_mov (D, T); return;
- case 0x40bc6f52: store_ds_constructor_storage_file_partial (D, T); return;
- case 0xb3cea0e4: store_ds_constructor_storage_file_mp4 (D, T); return;
- case 0x1081464c: store_ds_constructor_storage_file_webp (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_storage_file_type (struct tl_ds_storage_file_type *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0xaa963b05: store_ds_constructor_storage_file_unknown (D, T); return;
- case 0x007efe0e: store_ds_constructor_storage_file_jpeg (D, T); return;
- case 0xcae1aadf: store_ds_constructor_storage_file_gif (D, T); return;
- case 0x0a4f63c0: store_ds_constructor_storage_file_png (D, T); return;
- case 0xae1e508d: store_ds_constructor_storage_file_pdf (D, T); return;
- case 0x528a0677: store_ds_constructor_storage_file_mp3 (D, T); return;
- case 0x4b09ebbc: store_ds_constructor_storage_file_mov (D, T); return;
- case 0x40bc6f52: store_ds_constructor_storage_file_partial (D, T); return;
- case 0xb3cea0e4: store_ds_constructor_storage_file_mp4 (D, T); return;
- case 0x1081464c: store_ds_constructor_storage_file_webp (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_updates_difference (struct tl_ds_updates_difference *D, struct paramed_type *T) {
- out_int (D->magic);
- switch (D->magic) {
- case 0x5d75a138: store_ds_constructor_updates_difference_empty (D, T); return;
- case 0x00f49ca0: store_ds_constructor_updates_difference (D, T); return;
- case 0xa8fb1981: store_ds_constructor_updates_difference_slice (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_bare_updates_difference (struct tl_ds_updates_difference *D, struct paramed_type *T) {
- switch (D->magic) {
- case 0x5d75a138: store_ds_constructor_updates_difference_empty (D, T); return;
- case 0x00f49ca0: store_ds_constructor_updates_difference (D, T); return;
- case 0xa8fb1981: store_ds_constructor_updates_difference_slice (D, T); return;
- default: assert (0);
- }
-}
-void store_ds_type_updates_state (struct tl_ds_updates_state *D, struct paramed_type *T) {
- out_int (0xa56c2a3e);
- store_ds_constructor_updates_state (D, T); return;
-}
-void store_ds_type_bare_updates_state (struct tl_ds_updates_state *D, struct paramed_type *T) {
- store_ds_constructor_updates_state (D, T); return;
-}
-void store_ds_type_upload_file (struct tl_ds_upload_file *D, struct paramed_type *T) {
- out_int (0x096a18d5);
- store_ds_constructor_upload_file (D, T); return;
-}
-void store_ds_type_bare_upload_file (struct tl_ds_upload_file *D, struct paramed_type *T) {
- store_ds_constructor_upload_file (D, T); return;
-}
-void store_ds_type_any (void *D, struct paramed_type *T) {
- switch (T->type->name) {
- case 0xb8d0afdf: store_ds_type_account_days_t_t_l (D, T); return;
- case 0x472f5020: store_ds_type_bare_account_days_t_t_l (D, T); return;
- case 0x9fc5ec4e: store_ds_type_audio (D, T); return;
- case 0x603a13b1: store_ds_type_bare_audio (D, T); return;
- case 0x7bf2e6f6: store_ds_type_authorization (D, T); return;
- case 0x840d1909: store_ds_type_bare_authorization (D, T); return;
- case 0x250be282: store_ds_type_bool (D, T); return;
- case 0xdaf41d7d: store_ds_type_bare_bool (D, T); return;
- case 0x75e7ea6c: store_ds_type_bot_command (D, T); return;
- case 0x8a181593: store_ds_type_bare_bot_command (D, T); return;
- case 0xb2e16f93: store_ds_type_bot_info (D, T); return;
- case 0x4d1e906c: store_ds_type_bare_bot_info (D, T); return;
- case 0x0ee1379f: store_ds_type_bytes (D, T); return;
- case 0xf11ec860: store_ds_type_bare_bytes (D, T); return;
- case 0x7bd865dc: store_ds_type_chat (D, T); return;
- case 0x84279a23: store_ds_type_bare_chat (D, T); return;
- case 0x2e02a614: store_ds_type_chat_full (D, T); return;
- case 0xd1fd59eb: store_ds_type_bare_chat_full (D, T); return;
- case 0x94f910b1: store_ds_type_chat_invite (D, T); return;
- case 0x6b06ef4e: store_ds_type_bare_chat_invite (D, T); return;
- case 0x3631cf4c: store_ds_type_chat_located (D, T); return;
- case 0xc9ce30b3: store_ds_type_bare_chat_located (D, T); return;
- case 0xc8d7493e: store_ds_type_chat_participant (D, T); return;
- case 0x3728b6c1: store_ds_type_bare_chat_participant (D, T); return;
- case 0x77930f9f: store_ds_type_chat_participants (D, T); return;
- case 0x886cf060: store_ds_type_bare_chat_participants (D, T); return;
- case 0x56922676: store_ds_type_chat_photo (D, T); return;
- case 0xa96dd989: store_ds_type_bare_chat_photo (D, T); return;
- case 0x6643b654: store_ds_type_client_d_h_inner_data (D, T); return;
- case 0x99bc49ab: store_ds_type_bare_client_d_h_inner_data (D, T); return;
- case 0x4e32b894: store_ds_type_config (D, T); return;
- case 0xb1cd476b: store_ds_type_bare_config (D, T); return;
- case 0xf911c994: store_ds_type_contact (D, T); return;
- case 0x06ee366b: store_ds_type_bare_contact (D, T); return;
- case 0x561bc879: store_ds_type_contact_blocked (D, T); return;
- case 0xa9e43786: store_ds_type_bare_contact_blocked (D, T); return;
- case 0xea879f95: store_ds_type_contact_found (D, T); return;
- case 0x1578606a: store_ds_type_bare_contact_found (D, T); return;
- case 0x522fbc63: store_ds_type_contact_link (D, T); return;
- case 0xadd0439c: store_ds_type_bare_contact_link (D, T); return;
- case 0xd3680c61: store_ds_type_contact_status (D, T); return;
- case 0x2c97f39e: store_ds_type_bare_contact_status (D, T); return;
- case 0x3de191a1: store_ds_type_contact_suggested (D, T); return;
- case 0xc21e6e5e: store_ds_type_bare_contact_suggested (D, T); return;
- case 0x2b1a62f0: store_ds_type_dc_option (D, T); return;
- case 0xd4e59d0f: store_ds_type_bare_dc_option (D, T); return;
- case 0x535b7918: store_ds_type_decrypted_message (D, T); return;
- case 0xaca486e7: store_ds_type_bare_decrypted_message (D, T); return;
- case 0x4e0eefde: store_ds_type_decrypted_message_action (D, T); return;
- case 0xb1f11021: store_ds_type_bare_decrypted_message_action (D, T); return;
- case 0x1be31789: store_ds_type_decrypted_message_layer (D, T); return;
- case 0xe41ce876: store_ds_type_bare_decrypted_message_layer (D, T); return;
- case 0x34e0d674: store_ds_type_decrypted_message_media (D, T); return;
- case 0xcb1f298b: store_ds_type_bare_decrypted_message_media (D, T); return;
- case 0xc1dd804a: store_ds_type_dialog (D, T); return;
- case 0x3e227fb5: store_ds_type_bare_dialog (D, T); return;
- case 0xae636f24: store_ds_type_disabled_feature (D, T); return;
- case 0x519c90db: store_ds_type_bare_disabled_feature (D, T); return;
- case 0x51a73418: store_ds_type_document (D, T); return;
- case 0xae58cbe7: store_ds_type_bare_document (D, T); return;
- case 0x97c637a3: store_ds_type_document_attribute (D, T); return;
- case 0x6839c85c: store_ds_type_bare_document_attribute (D, T); return;
- case 0x2210c154: store_ds_type_double (D, T); return;
- case 0xddef3eab: store_ds_type_bare_double (D, T); return;
- case 0xb1718213: store_ds_type_encrypted_chat (D, T); return;
- case 0x4e8e7dec: store_ds_type_bare_encrypted_chat (D, T); return;
- case 0x886fd032: store_ds_type_encrypted_file (D, T); return;
- case 0x77902fcd: store_ds_type_bare_encrypted_file (D, T); return;
- case 0xce6b8a1e: store_ds_type_encrypted_message (D, T); return;
- case 0x319475e1: store_ds_type_bare_encrypted_message (D, T); return;
- case 0xc4b9f9bb: store_ds_type_error (D, T); return;
- case 0x3b460644: store_ds_type_bare_error (D, T); return;
- case 0x95f132d5: store_ds_type_exported_chat_invite (D, T); return;
- case 0x6a0ecd2a: store_ds_type_bare_exported_chat_invite (D, T); return;
- case 0x2f8ffb30: store_ds_type_file_location (D, T); return;
- case 0xd07004cf: store_ds_type_bare_file_location (D, T); return;
- case 0xf67b4034: store_ds_type_geo_chat_message (D, T); return;
- case 0x0984bfcb: store_ds_type_bare_geo_chat_message (D, T); return;
- case 0x315e0a53: store_ds_type_geo_point (D, T); return;
- case 0xcea1f5ac: store_ds_type_bare_geo_point (D, T); return;
- case 0xd0028438: store_ds_type_imported_contact (D, T); return;
- case 0x2ffd7bc7: store_ds_type_bare_imported_contact (D, T); return;
- case 0x770656a8: store_ds_type_input_app_event (D, T); return;
- case 0x88f9a957: store_ds_type_bare_input_app_event (D, T); return;
- case 0xae8e9c7b: store_ds_type_input_audio (D, T); return;
- case 0x51716384: store_ds_type_bare_input_audio (D, T); return;
- case 0x3a60776d: store_ds_type_input_chat_photo (D, T); return;
- case 0xc59f8892: store_ds_type_bare_input_chat_photo (D, T); return;
- case 0xf392b7f4: store_ds_type_input_contact (D, T); return;
- case 0x0c6d480b: store_ds_type_bare_input_contact (D, T); return;
- case 0x6a8963fc: store_ds_type_input_document (D, T); return;
- case 0x95769c03: store_ds_type_bare_input_document (D, T); return;
- case 0xf141b5e1: store_ds_type_input_encrypted_chat (D, T); return;
- case 0x0ebe4a1e: store_ds_type_bare_input_encrypted_chat (D, T); return;
- case 0x0b5c064f: store_ds_type_input_encrypted_file (D, T); return;
- case 0xf4a3f9b0: store_ds_type_bare_input_encrypted_file (D, T); return;
- case 0x0f60f9ca: store_ds_type_input_file (D, T); return;
- case 0xf09f0635: store_ds_type_bare_input_file (D, T); return;
- case 0xe6daa38b: store_ds_type_input_file_location (D, T); return;
- case 0x19255c74: store_ds_type_bare_input_file_location (D, T); return;
- case 0x74d456fa: store_ds_type_input_geo_chat (D, T); return;
- case 0x8b2ba905: store_ds_type_bare_input_geo_chat (D, T); return;
- case 0x17768f1f: store_ds_type_input_geo_point (D, T); return;
- case 0xe88970e0: store_ds_type_bare_input_geo_point (D, T); return;
- case 0xb32c91dd: store_ds_type_input_media (D, T); return;
- case 0x4cd36e22: store_ds_type_bare_input_media (D, T); return;
- case 0x02b6911b: store_ds_type_input_notify_peer (D, T); return;
- case 0xfd496ee4: store_ds_type_bare_input_notify_peer (D, T); return;
- case 0x9e67268d: store_ds_type_input_peer (D, T); return;
- case 0x6198d972: store_ds_type_bare_input_peer (D, T); return;
- case 0x185a48ac: store_ds_type_input_peer_notify_events (D, T); return;
- case 0xe7a5b753: store_ds_type_bare_input_peer_notify_events (D, T); return;
- case 0x46a2ce98: store_ds_type_input_peer_notify_settings (D, T); return;
- case 0xb95d3167: store_ds_type_bare_input_peer_notify_settings (D, T); return;
- case 0xe74279c9: store_ds_type_input_photo (D, T); return;
- case 0x18bd8636: store_ds_type_bare_input_photo (D, T); return;
- case 0x7477e321: store_ds_type_input_photo_crop (D, T); return;
- case 0x8b881cde: store_ds_type_bare_input_photo_crop (D, T); return;
- case 0x4f96cb18: store_ds_type_input_privacy_key (D, T); return;
- case 0xb06934e7: store_ds_type_bare_input_privacy_key (D, T); return;
- case 0x4b815163: store_ds_type_input_privacy_rule (D, T); return;
- case 0xb47eae9c: store_ds_type_bare_input_privacy_rule (D, T); return;
- case 0xe44d415c: store_ds_type_input_sticker_set (D, T); return;
- case 0x1bb2bea3: store_ds_type_bare_input_sticker_set (D, T); return;
- case 0xadfe0c6a: store_ds_type_input_user (D, T); return;
- case 0x5201f395: store_ds_type_bare_input_user (D, T); return;
- case 0xbb5f7a27: store_ds_type_input_video (D, T); return;
- case 0x44a085d8: store_ds_type_bare_input_video (D, T); return;
- case 0xa8509bda: store_ds_type_int (D, T); return;
- case 0x57af6425: store_ds_type_bare_int (D, T); return;
- case 0x7d36c439: store_ds_type_int128 (D, T); return;
- case 0x82c93bc6: store_ds_type_bare_int128 (D, T); return;
- case 0xf2c798b3: store_ds_type_int256 (D, T); return;
- case 0x0d38674c: store_ds_type_bare_int256 (D, T); return;
- case 0xa2fa4880: store_ds_type_keyboard_button (D, T); return;
- case 0x5d05b77f: store_ds_type_bare_keyboard_button (D, T); return;
- case 0x77608b83: store_ds_type_keyboard_button_row (D, T); return;
- case 0x889f747c: store_ds_type_bare_keyboard_button_row (D, T); return;
- case 0x22076cba: store_ds_type_long (D, T); return;
- case 0xddf89345: store_ds_type_bare_long (D, T); return;
- case 0x5d652a7f: store_ds_type_message (D, T); return;
- case 0xa29ad580: store_ds_type_bare_message (D, T); return;
- case 0x383415fa: store_ds_type_message_action (D, T); return;
- case 0xc7cbea05: store_ds_type_bare_message_action (D, T); return;
- case 0x95f2471a: store_ds_type_message_media (D, T); return;
- case 0x6a0db8e5: store_ds_type_bare_message_media (D, T); return;
- case 0x80895ae0: store_ds_type_messages_filter (D, T); return;
- case 0x7f76a51f: store_ds_type_bare_messages_filter (D, T); return;
- case 0x8e1a1775: store_ds_type_nearest_dc (D, T); return;
- case 0x71e5e88a: store_ds_type_bare_nearest_dc (D, T); return;
- case 0x9fcb8237: store_ds_type_notify_peer (D, T); return;
- case 0x60347dc8: store_ds_type_bare_notify_peer (D, T); return;
- case 0x56730bcc: store_ds_type_null (D, T); return;
- case 0xa98cf433: store_ds_type_bare_null (D, T); return;
- case 0xbfa3de38: store_ds_type_p_q_inner_data (D, T); return;
- case 0x405c21c7: store_ds_type_bare_p_q_inner_data (D, T); return;
- case 0x276159d6: store_ds_type_peer (D, T); return;
- case 0xd89ea629: store_ds_type_bare_peer (D, T); return;
- case 0xc0c8d13b: store_ds_type_peer_notify_events (D, T); return;
- case 0x3f372ec4: store_ds_type_bare_peer_notify_events (D, T); return;
- case 0xfdf894fc: store_ds_type_peer_notify_settings (D, T); return;
- case 0x02076b03: store_ds_type_bare_peer_notify_settings (D, T); return;
- case 0xc207550a: store_ds_type_photo (D, T); return;
- case 0x3df8aaf5: store_ds_type_bare_photo (D, T); return;
- case 0x900f60dd: store_ds_type_photo_size (D, T); return;
- case 0x6ff09f22: store_ds_type_bare_photo_size (D, T); return;
- case 0xbc2eab30: store_ds_type_privacy_key (D, T); return;
- case 0x43d154cf: store_ds_type_bare_privacy_key (D, T); return;
- case 0xa8638aec: store_ds_type_privacy_rule (D, T); return;
- case 0x579c7513: store_ds_type_bare_privacy_rule (D, T); return;
- case 0xa384b779: store_ds_type_received_notify_message (D, T); return;
- case 0x5c7b4886: store_ds_type_bare_received_notify_message (D, T); return;
- case 0x612ca4a9: store_ds_type_reply_markup (D, T); return;
- case 0x9ed35b56: store_ds_type_bare_reply_markup (D, T); return;
- case 0x05162463: store_ds_type_res_p_q (D, T); return;
- case 0xfae9db9c: store_ds_type_bare_res_p_q (D, T); return;
- case 0x70541c7e: store_ds_type_send_message_action (D, T); return;
- case 0x8fabe381: store_ds_type_bare_send_message_action (D, T); return;
- case 0xa9230301: store_ds_type_server_d_h_params (D, T); return;
- case 0x56dcfcfe: store_ds_type_bare_server_d_h_params (D, T); return;
- case 0xb5890dba: store_ds_type_server_d_h_inner_data (D, T); return;
- case 0x4a76f245: store_ds_type_bare_server_d_h_inner_data (D, T); return;
- case 0xdb8a468f: store_ds_type_set_client_d_h_params_answer (D, T); return;
- case 0x2475b970: store_ds_type_bare_set_client_d_h_params_answer (D, T); return;
- case 0x12b299d4: store_ds_type_sticker_pack (D, T); return;
- case 0xed4d662b: store_ds_type_bare_sticker_pack (D, T); return;
- case 0xa7a43b17: store_ds_type_sticker_set (D, T); return;
- case 0x585bc4e8: store_ds_type_bare_sticker_set (D, T); return;
- case 0xb5286e24: store_ds_type_string (D, T); return;
- case 0x4ad791db: store_ds_type_bare_string (D, T); return;
- case 0x2e02b27e: store_ds_type_update (D, T); return;
- case 0xd1fd4d81: store_ds_type_bare_update (D, T); return;
- case 0x22499d27: store_ds_type_updates (D, T); return;
- case 0xddb662d8: store_ds_type_bare_updates (D, T); return;
- case 0x02e6c0c8: store_ds_type_user (D, T); return;
- case 0xfd193f37: store_ds_type_bare_user (D, T); return;
- case 0x5a89ac5b: store_ds_type_user_full (D, T); return;
- case 0xa57653a4: store_ds_type_bare_user_full (D, T); return;
- case 0x9a486229: store_ds_type_user_profile_photo (D, T); return;
- case 0x65b79dd6: store_ds_type_bare_user_profile_photo (D, T); return;
- case 0x76de9570: store_ds_type_user_status (D, T); return;
- case 0x89216a8f: store_ds_type_bare_user_status (D, T); return;
- case 0x1cb5c415: store_ds_type_vector (D, T); return;
- case 0xe34a3bea: store_ds_type_bare_vector (D, T); return;
- case 0x1716b174: store_ds_type_video (D, T); return;
- case 0xe8e94e8b: store_ds_type_bare_video (D, T); return;
- case 0xafa14973: store_ds_type_wall_paper (D, T); return;
- case 0x505eb68c: store_ds_type_bare_wall_paper (D, T); return;
- case 0x8d8c0d41: store_ds_type_web_page (D, T); return;
- case 0x7273f2be: store_ds_type_bare_web_page (D, T); return;
- case 0x1250abde: store_ds_type_account_authorizations (D, T); return;
- case 0xedaf5421: store_ds_type_bare_account_authorizations (D, T); return;
- case 0xeac2a804: store_ds_type_account_password (D, T); return;
- case 0x153d57fb: store_ds_type_bare_account_password (D, T); return;
- case 0xbcfc532c: store_ds_type_account_password_input_settings (D, T); return;
- case 0x4303acd3: store_ds_type_bare_account_password_input_settings (D, T); return;
- case 0xb7b72ab3: store_ds_type_account_password_settings (D, T); return;
- case 0x4848d54c: store_ds_type_bare_account_password_settings (D, T); return;
- case 0x554abb6f: store_ds_type_account_privacy_rules (D, T); return;
- case 0xaab54490: store_ds_type_bare_account_privacy_rules (D, T); return;
- case 0xa4f58c4c: store_ds_type_account_sent_change_phone_code (D, T); return;
- case 0x5b0a73b3: store_ds_type_bare_account_sent_change_phone_code (D, T); return;
- case 0xff036af1: store_ds_type_auth_authorization (D, T); return;
- case 0x00fc950e: store_ds_type_bare_auth_authorization (D, T); return;
- case 0x811ea28e: store_ds_type_auth_checked_phone (D, T); return;
- case 0x7ee15d71: store_ds_type_bare_auth_checked_phone (D, T); return;
- case 0xdf969c2d: store_ds_type_auth_exported_authorization (D, T); return;
- case 0x206963d2: store_ds_type_bare_auth_exported_authorization (D, T); return;
- case 0x137948a5: store_ds_type_auth_password_recovery (D, T); return;
- case 0xec86b75a: store_ds_type_bare_auth_password_recovery (D, T); return;
- case 0x0cc8bc16: store_ds_type_auth_sent_code (D, T); return;
- case 0xf33743e9: store_ds_type_bare_auth_sent_code (D, T); return;
- case 0x0377168f: store_ds_type_binlog_encr_key (D, T); return;
- case 0xfc88e970: store_ds_type_bare_binlog_encr_key (D, T); return;
- case 0x66ff03a6: store_ds_type_binlog_update (D, T); return;
- case 0x9900fc59: store_ds_type_bare_binlog_update (D, T); return;
- case 0x8c1b8fb4: store_ds_type_contacts_blocked (D, T); return;
- case 0x73e4704b: store_ds_type_bare_contacts_blocked (D, T); return;
- case 0xd8c02560: store_ds_type_contacts_contacts (D, T); return;
- case 0x273fda9f: store_ds_type_bare_contacts_contacts (D, T); return;
- case 0x0566000e: store_ds_type_contacts_found (D, T); return;
- case 0xfa99fff1: store_ds_type_bare_contacts_found (D, T); return;
- case 0xad524315: store_ds_type_contacts_imported_contacts (D, T); return;
- case 0x52adbcea: store_ds_type_bare_contacts_imported_contacts (D, T); return;
- case 0x3ace484c: store_ds_type_contacts_link (D, T); return;
- case 0xc531b7b3: store_ds_type_bare_contacts_link (D, T); return;
- case 0x5649dcc5: store_ds_type_contacts_suggested (D, T); return;
- case 0xa9b6233a: store_ds_type_bare_contacts_suggested (D, T); return;
- case 0x48feb267: store_ds_type_geochats_located (D, T); return;
- case 0xb7014d98: store_ds_type_bare_geochats_located (D, T); return;
- case 0x6d0a0e59: store_ds_type_geochats_messages (D, T); return;
- case 0x92f5f1a6: store_ds_type_bare_geochats_messages (D, T); return;
- case 0x17b1578b: store_ds_type_geochats_stated_message (D, T); return;
- case 0xe84ea874: store_ds_type_bare_geochats_stated_message (D, T); return;
- case 0x4ddd9627: store_ds_type_help_app_update (D, T); return;
- case 0xb22269d8: store_ds_type_bare_help_app_update (D, T); return;
- case 0x18cb9f78: store_ds_type_help_invite_text (D, T); return;
- case 0xe7346087: store_ds_type_bare_help_invite_text (D, T); return;
- case 0x17c6b5f6: store_ds_type_help_support (D, T); return;
- case 0xe8394a09: store_ds_type_bare_help_support (D, T); return;
- case 0xb45c69d1: store_ds_type_messages_affected_history (D, T); return;
- case 0x4ba3962e: store_ds_type_bare_messages_affected_history (D, T); return;
- case 0x84d19185: store_ds_type_messages_affected_messages (D, T); return;
- case 0x7b2e6e7a: store_ds_type_bare_messages_affected_messages (D, T); return;
- case 0xb485502f: store_ds_type_messages_all_stickers (D, T); return;
- case 0x4b7aafd0: store_ds_type_bare_messages_all_stickers (D, T); return;
- case 0xe5d7d19c: store_ds_type_messages_chat_full (D, T); return;
- case 0x1a282e63: store_ds_type_bare_messages_chat_full (D, T); return;
- case 0x64ff9fd5: store_ds_type_messages_chats (D, T); return;
- case 0x9b00602a: store_ds_type_bare_messages_chats (D, T); return;
- case 0xecc058e8: store_ds_type_messages_dh_config (D, T); return;
- case 0x133fa717: store_ds_type_bare_messages_dh_config (D, T); return;
- case 0x645af8b3: store_ds_type_messages_dialogs (D, T); return;
- case 0x9ba5074c: store_ds_type_bare_messages_dialogs (D, T); return;
- case 0x3f4e0648: store_ds_type_messages_message (D, T); return;
- case 0xc0b1f9b7: store_ds_type_bare_messages_message (D, T); return;
- case 0x8735e464: store_ds_type_messages_messages (D, T); return;
- case 0x78ca1b9b: store_ds_type_bare_messages_messages (D, T); return;
- case 0xc29c7607: store_ds_type_messages_sent_encrypted_message (D, T); return;
- case 0x3d6389f8: store_ds_type_bare_messages_sent_encrypted_message (D, T); return;
- case 0x799ce190: store_ds_type_messages_sent_message (D, T); return;
- case 0x86631e6f: store_ds_type_bare_messages_sent_message (D, T); return;
- case 0xb60a24a6: store_ds_type_messages_sticker_set (D, T); return;
- case 0x49f5db59: store_ds_type_bare_messages_sticker_set (D, T); return;
- case 0x7bfa5710: store_ds_type_messages_stickers (D, T); return;
- case 0x8405a8ef: store_ds_type_bare_messages_stickers (D, T); return;
- case 0x20212ca8: store_ds_type_photos_photo (D, T); return;
- case 0xdfded357: store_ds_type_bare_photos_photo (D, T); return;
- case 0x98cf75f1: store_ds_type_photos_photos (D, T); return;
- case 0x67308a0e: store_ds_type_bare_photos_photos (D, T); return;
- case 0x3e2838a8: store_ds_type_storage_file_type (D, T); return;
- case 0xc1d7c757: store_ds_type_bare_storage_file_type (D, T); return;
- case 0xf57a2419: store_ds_type_updates_difference (D, T); return;
- case 0x0a85dbe6: store_ds_type_bare_updates_difference (D, T); return;
- case 0xa56c2a3e: store_ds_type_updates_state (D, T); return;
- case 0x5a93d5c1: store_ds_type_bare_updates_state (D, T); return;
- case 0x096a18d5: store_ds_type_upload_file (D, T); return;
- case 0xf695e72a: store_ds_type_bare_upload_file (D, T); return;
- default: return; }
-}
diff --git a/protocols/Telegram/src/tgl/auto/auto-store-ds.h b/protocols/Telegram/src/tgl/auto/auto-store-ds.h
deleted file mode 100644
index 4abc26b3ce..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-store-ds.h
+++ /dev/null
@@ -1,718 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#include "auto-types.h"
-#else
-#include "auto.h"
-#include "auto/auto-types.h"
-#endif
-#include <assert.h>
-#include <stdio.h>
-struct tgl_state;
-void store_ds_constructor_account_days_t_t_l (struct tl_ds_account_days_t_t_l *D, struct paramed_type *T);
-void store_ds_constructor_audio_empty (struct tl_ds_audio *D, struct paramed_type *T);
-void store_ds_constructor_audio (struct tl_ds_audio *D, struct paramed_type *T);
-void store_ds_constructor_authorization (struct tl_ds_authorization *D, struct paramed_type *T);
-void store_ds_constructor_bool_false (struct tl_ds_bool *D, struct paramed_type *T);
-void store_ds_constructor_bool_true (struct tl_ds_bool *D, struct paramed_type *T);
-void store_ds_constructor_bot_command (struct tl_ds_bot_command *D, struct paramed_type *T);
-void store_ds_constructor_bot_command_old (struct tl_ds_bot_command *D, struct paramed_type *T);
-void store_ds_constructor_bot_info_empty (struct tl_ds_bot_info *D, struct paramed_type *T);
-void store_ds_constructor_bot_info (struct tl_ds_bot_info *D, struct paramed_type *T);
-void store_ds_constructor_bytes (struct tl_ds_string *D, struct paramed_type *T);
-void store_ds_constructor_chat_empty (struct tl_ds_chat *D, struct paramed_type *T);
-void store_ds_constructor_chat (struct tl_ds_chat *D, struct paramed_type *T);
-void store_ds_constructor_chat_forbidden (struct tl_ds_chat *D, struct paramed_type *T);
-void store_ds_constructor_geo_chat (struct tl_ds_chat *D, struct paramed_type *T);
-void store_ds_constructor_chat_full (struct tl_ds_chat_full *D, struct paramed_type *T);
-void store_ds_constructor_chat_invite_already (struct tl_ds_chat_invite *D, struct paramed_type *T);
-void store_ds_constructor_chat_invite (struct tl_ds_chat_invite *D, struct paramed_type *T);
-void store_ds_constructor_chat_located (struct tl_ds_chat_located *D, struct paramed_type *T);
-void store_ds_constructor_chat_participant (struct tl_ds_chat_participant *D, struct paramed_type *T);
-void store_ds_constructor_chat_participants_forbidden (struct tl_ds_chat_participants *D, struct paramed_type *T);
-void store_ds_constructor_chat_participants (struct tl_ds_chat_participants *D, struct paramed_type *T);
-void store_ds_constructor_chat_photo_empty (struct tl_ds_chat_photo *D, struct paramed_type *T);
-void store_ds_constructor_chat_photo (struct tl_ds_chat_photo *D, struct paramed_type *T);
-void store_ds_constructor_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *D, struct paramed_type *T);
-void store_ds_constructor_config (struct tl_ds_config *D, struct paramed_type *T);
-void store_ds_constructor_contact (struct tl_ds_contact *D, struct paramed_type *T);
-void store_ds_constructor_contact_blocked (struct tl_ds_contact_blocked *D, struct paramed_type *T);
-void store_ds_constructor_contact_found (struct tl_ds_contact_found *D, struct paramed_type *T);
-void store_ds_constructor_contact_link_unknown (struct tl_ds_contact_link *D, struct paramed_type *T);
-void store_ds_constructor_contact_link_none (struct tl_ds_contact_link *D, struct paramed_type *T);
-void store_ds_constructor_contact_link_has_phone (struct tl_ds_contact_link *D, struct paramed_type *T);
-void store_ds_constructor_contact_link_contact (struct tl_ds_contact_link *D, struct paramed_type *T);
-void store_ds_constructor_contact_status (struct tl_ds_contact_status *D, struct paramed_type *T);
-void store_ds_constructor_contact_suggested (struct tl_ds_contact_suggested *D, struct paramed_type *T);
-void store_ds_constructor_dc_option_l28 (struct tl_ds_dc_option *D, struct paramed_type *T);
-void store_ds_constructor_dc_option (struct tl_ds_dc_option *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message (struct tl_ds_decrypted_message *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_service (struct tl_ds_decrypted_message *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_set_message_t_t_l (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_read_messages (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_delete_messages (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_screenshot_messages (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_flush_history (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_resend (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_notify_layer (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_typing (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_request_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_accept_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_abort_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_commit_key (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_action_noop (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_layer (struct tl_ds_decrypted_message_layer *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_media_empty (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_media_photo (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_media_geo_point (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_media_contact (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_media_document (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_media_video (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_media_audio (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_media_external_document (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_media_video_l12 (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void store_ds_constructor_decrypted_message_media_audio_l12 (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void store_ds_constructor_dialog (struct tl_ds_dialog *D, struct paramed_type *T);
-void store_ds_constructor_disabled_feature (struct tl_ds_disabled_feature *D, struct paramed_type *T);
-void store_ds_constructor_document_empty (struct tl_ds_document *D, struct paramed_type *T);
-void store_ds_constructor_document (struct tl_ds_document *D, struct paramed_type *T);
-void store_ds_constructor_document_l19 (struct tl_ds_document *D, struct paramed_type *T);
-void store_ds_constructor_document_attribute_image_size (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void store_ds_constructor_document_attribute_animated (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void store_ds_constructor_document_attribute_sticker_l28 (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void store_ds_constructor_document_attribute_sticker (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void store_ds_constructor_document_attribute_video (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void store_ds_constructor_document_attribute_audio (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void store_ds_constructor_document_attribute_filename (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void store_ds_constructor_double (double *D, struct paramed_type *T);
-void store_ds_constructor_encrypted_chat_empty (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void store_ds_constructor_encrypted_chat_waiting (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void store_ds_constructor_encrypted_chat_requested (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void store_ds_constructor_encrypted_chat (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void store_ds_constructor_encrypted_chat_discarded (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void store_ds_constructor_encrypted_file_empty (struct tl_ds_encrypted_file *D, struct paramed_type *T);
-void store_ds_constructor_encrypted_file (struct tl_ds_encrypted_file *D, struct paramed_type *T);
-void store_ds_constructor_encrypted_message (struct tl_ds_encrypted_message *D, struct paramed_type *T);
-void store_ds_constructor_encrypted_message_service (struct tl_ds_encrypted_message *D, struct paramed_type *T);
-void store_ds_constructor_error (struct tl_ds_error *D, struct paramed_type *T);
-void store_ds_constructor_chat_invite_empty (struct tl_ds_exported_chat_invite *D, struct paramed_type *T);
-void store_ds_constructor_chat_invite_exported (struct tl_ds_exported_chat_invite *D, struct paramed_type *T);
-void store_ds_constructor_file_location_unavailable (struct tl_ds_file_location *D, struct paramed_type *T);
-void store_ds_constructor_file_location (struct tl_ds_file_location *D, struct paramed_type *T);
-void store_ds_constructor_geo_chat_message_empty (struct tl_ds_geo_chat_message *D, struct paramed_type *T);
-void store_ds_constructor_geo_chat_message (struct tl_ds_geo_chat_message *D, struct paramed_type *T);
-void store_ds_constructor_geo_chat_message_service (struct tl_ds_geo_chat_message *D, struct paramed_type *T);
-void store_ds_constructor_geo_point_empty (struct tl_ds_geo_point *D, struct paramed_type *T);
-void store_ds_constructor_geo_point (struct tl_ds_geo_point *D, struct paramed_type *T);
-void store_ds_constructor_imported_contact (struct tl_ds_imported_contact *D, struct paramed_type *T);
-void store_ds_constructor_input_app_event (struct tl_ds_input_app_event *D, struct paramed_type *T);
-void store_ds_constructor_input_audio_empty (struct tl_ds_input_audio *D, struct paramed_type *T);
-void store_ds_constructor_input_audio (struct tl_ds_input_audio *D, struct paramed_type *T);
-void store_ds_constructor_input_chat_photo_empty (struct tl_ds_input_chat_photo *D, struct paramed_type *T);
-void store_ds_constructor_input_chat_uploaded_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T);
-void store_ds_constructor_input_chat_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T);
-void store_ds_constructor_input_phone_contact (struct tl_ds_input_contact *D, struct paramed_type *T);
-void store_ds_constructor_input_document_empty (struct tl_ds_input_document *D, struct paramed_type *T);
-void store_ds_constructor_input_document (struct tl_ds_input_document *D, struct paramed_type *T);
-void store_ds_constructor_input_encrypted_chat (struct tl_ds_input_encrypted_chat *D, struct paramed_type *T);
-void store_ds_constructor_input_encrypted_file_empty (struct tl_ds_input_encrypted_file *D, struct paramed_type *T);
-void store_ds_constructor_input_encrypted_file_uploaded (struct tl_ds_input_encrypted_file *D, struct paramed_type *T);
-void store_ds_constructor_input_encrypted_file (struct tl_ds_input_encrypted_file *D, struct paramed_type *T);
-void store_ds_constructor_input_encrypted_file_big_uploaded (struct tl_ds_input_encrypted_file *D, struct paramed_type *T);
-void store_ds_constructor_input_file (struct tl_ds_input_file *D, struct paramed_type *T);
-void store_ds_constructor_input_file_big (struct tl_ds_input_file *D, struct paramed_type *T);
-void store_ds_constructor_input_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void store_ds_constructor_input_video_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void store_ds_constructor_input_encrypted_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void store_ds_constructor_input_audio_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void store_ds_constructor_input_document_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void store_ds_constructor_input_geo_chat (struct tl_ds_input_geo_chat *D, struct paramed_type *T);
-void store_ds_constructor_input_geo_point_empty (struct tl_ds_input_geo_point *D, struct paramed_type *T);
-void store_ds_constructor_input_geo_point (struct tl_ds_input_geo_point *D, struct paramed_type *T);
-void store_ds_constructor_input_media_empty (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_uploaded_photo (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_photo (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_geo_point (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_contact (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_uploaded_video (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_uploaded_thumb_video (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_video (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_uploaded_audio (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_audio (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_uploaded_document (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_uploaded_thumb_document (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_document (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_media_venue (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_constructor_input_notify_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void store_ds_constructor_input_notify_users (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void store_ds_constructor_input_notify_chats (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void store_ds_constructor_input_notify_all (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void store_ds_constructor_input_notify_geo_chat_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void store_ds_constructor_input_peer_empty (struct tl_ds_input_peer *D, struct paramed_type *T);
-void store_ds_constructor_input_peer_self (struct tl_ds_input_peer *D, struct paramed_type *T);
-void store_ds_constructor_input_peer_contact (struct tl_ds_input_peer *D, struct paramed_type *T);
-void store_ds_constructor_input_peer_foreign (struct tl_ds_input_peer *D, struct paramed_type *T);
-void store_ds_constructor_input_peer_chat (struct tl_ds_input_peer *D, struct paramed_type *T);
-void store_ds_constructor_input_peer_notify_events_empty (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T);
-void store_ds_constructor_input_peer_notify_events_all (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T);
-void store_ds_constructor_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *D, struct paramed_type *T);
-void store_ds_constructor_input_photo_empty (struct tl_ds_input_photo *D, struct paramed_type *T);
-void store_ds_constructor_input_photo (struct tl_ds_input_photo *D, struct paramed_type *T);
-void store_ds_constructor_input_photo_crop_auto (struct tl_ds_input_photo_crop *D, struct paramed_type *T);
-void store_ds_constructor_input_photo_crop (struct tl_ds_input_photo_crop *D, struct paramed_type *T);
-void store_ds_constructor_input_privacy_key_status_timestamp (struct tl_ds_input_privacy_key *D, struct paramed_type *T);
-void store_ds_constructor_input_privacy_value_allow_contacts (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void store_ds_constructor_input_privacy_value_allow_all (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void store_ds_constructor_input_privacy_value_allow_users (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void store_ds_constructor_input_privacy_value_disallow_contacts (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void store_ds_constructor_input_privacy_value_disallow_all (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void store_ds_constructor_input_privacy_value_disallow_users (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void store_ds_constructor_input_sticker_set_empty (struct tl_ds_input_sticker_set *D, struct paramed_type *T);
-void store_ds_constructor_input_sticker_set_i_d (struct tl_ds_input_sticker_set *D, struct paramed_type *T);
-void store_ds_constructor_input_sticker_set_short_name (struct tl_ds_input_sticker_set *D, struct paramed_type *T);
-void store_ds_constructor_input_user_empty (struct tl_ds_input_user *D, struct paramed_type *T);
-void store_ds_constructor_input_user_self (struct tl_ds_input_user *D, struct paramed_type *T);
-void store_ds_constructor_input_user_contact (struct tl_ds_input_user *D, struct paramed_type *T);
-void store_ds_constructor_input_user_foreign (struct tl_ds_input_user *D, struct paramed_type *T);
-void store_ds_constructor_input_video_empty (struct tl_ds_input_video *D, struct paramed_type *T);
-void store_ds_constructor_input_video (struct tl_ds_input_video *D, struct paramed_type *T);
-void store_ds_constructor_int (int *D, struct paramed_type *T);
-void store_ds_constructor_int128 (struct tl_ds_int128 *D, struct paramed_type *T);
-void store_ds_constructor_int256 (struct tl_ds_int256 *D, struct paramed_type *T);
-void store_ds_constructor_keyboard_button (struct tl_ds_keyboard_button *D, struct paramed_type *T);
-void store_ds_constructor_keyboard_button_row (struct tl_ds_keyboard_button_row *D, struct paramed_type *T);
-void store_ds_constructor_long (long long *D, struct paramed_type *T);
-void store_ds_constructor_message_empty (struct tl_ds_message *D, struct paramed_type *T);
-void store_ds_constructor_message (struct tl_ds_message *D, struct paramed_type *T);
-void store_ds_constructor_message_service (struct tl_ds_message *D, struct paramed_type *T);
-void store_ds_constructor_message_action_empty (struct tl_ds_message_action *D, struct paramed_type *T);
-void store_ds_constructor_message_action_chat_create (struct tl_ds_message_action *D, struct paramed_type *T);
-void store_ds_constructor_message_action_chat_edit_title (struct tl_ds_message_action *D, struct paramed_type *T);
-void store_ds_constructor_message_action_chat_edit_photo (struct tl_ds_message_action *D, struct paramed_type *T);
-void store_ds_constructor_message_action_chat_delete_photo (struct tl_ds_message_action *D, struct paramed_type *T);
-void store_ds_constructor_message_action_chat_add_user (struct tl_ds_message_action *D, struct paramed_type *T);
-void store_ds_constructor_message_action_chat_delete_user (struct tl_ds_message_action *D, struct paramed_type *T);
-void store_ds_constructor_message_action_geo_chat_create (struct tl_ds_message_action *D, struct paramed_type *T);
-void store_ds_constructor_message_action_geo_chat_checkin (struct tl_ds_message_action *D, struct paramed_type *T);
-void store_ds_constructor_message_action_chat_joined_by_link (struct tl_ds_message_action *D, struct paramed_type *T);
-void store_ds_constructor_message_media_empty (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_constructor_message_media_photo (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_constructor_message_media_video (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_constructor_message_media_geo (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_constructor_message_media_contact (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_constructor_message_media_unsupported (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_constructor_message_media_document (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_constructor_message_media_audio (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_constructor_message_media_web_page (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_constructor_message_media_venue (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_constructor_message_media_photo_l27 (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_constructor_message_media_video_l27 (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_constructor_input_messages_filter_empty (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void store_ds_constructor_input_messages_filter_photos (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void store_ds_constructor_input_messages_filter_video (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void store_ds_constructor_input_messages_filter_photo_video (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void store_ds_constructor_input_messages_filter_photo_video_documents (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void store_ds_constructor_input_messages_filter_document (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void store_ds_constructor_input_messages_filter_audio (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void store_ds_constructor_nearest_dc (struct tl_ds_nearest_dc *D, struct paramed_type *T);
-void store_ds_constructor_notify_peer (struct tl_ds_notify_peer *D, struct paramed_type *T);
-void store_ds_constructor_notify_users (struct tl_ds_notify_peer *D, struct paramed_type *T);
-void store_ds_constructor_notify_chats (struct tl_ds_notify_peer *D, struct paramed_type *T);
-void store_ds_constructor_notify_all (struct tl_ds_notify_peer *D, struct paramed_type *T);
-void store_ds_constructor_null (struct tl_ds_null *D, struct paramed_type *T);
-void store_ds_constructor_p_q_inner_data (struct tl_ds_p_q_inner_data *D, struct paramed_type *T);
-void store_ds_constructor_p_q_inner_data_temp (struct tl_ds_p_q_inner_data *D, struct paramed_type *T);
-void store_ds_constructor_peer_user (struct tl_ds_peer *D, struct paramed_type *T);
-void store_ds_constructor_peer_chat (struct tl_ds_peer *D, struct paramed_type *T);
-void store_ds_constructor_peer_notify_events_empty (struct tl_ds_peer_notify_events *D, struct paramed_type *T);
-void store_ds_constructor_peer_notify_events_all (struct tl_ds_peer_notify_events *D, struct paramed_type *T);
-void store_ds_constructor_peer_notify_settings_empty (struct tl_ds_peer_notify_settings *D, struct paramed_type *T);
-void store_ds_constructor_peer_notify_settings (struct tl_ds_peer_notify_settings *D, struct paramed_type *T);
-void store_ds_constructor_photo_empty (struct tl_ds_photo *D, struct paramed_type *T);
-void store_ds_constructor_photo (struct tl_ds_photo *D, struct paramed_type *T);
-void store_ds_constructor_photo_l27 (struct tl_ds_photo *D, struct paramed_type *T);
-void store_ds_constructor_photo_size_empty (struct tl_ds_photo_size *D, struct paramed_type *T);
-void store_ds_constructor_photo_size (struct tl_ds_photo_size *D, struct paramed_type *T);
-void store_ds_constructor_photo_cached_size (struct tl_ds_photo_size *D, struct paramed_type *T);
-void store_ds_constructor_privacy_key_status_timestamp (struct tl_ds_privacy_key *D, struct paramed_type *T);
-void store_ds_constructor_privacy_value_allow_contacts (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void store_ds_constructor_privacy_value_allow_all (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void store_ds_constructor_privacy_value_allow_users (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void store_ds_constructor_privacy_value_disallow_contacts (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void store_ds_constructor_privacy_value_disallow_all (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void store_ds_constructor_privacy_value_disallow_users (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void store_ds_constructor_received_notify_message (struct tl_ds_received_notify_message *D, struct paramed_type *T);
-void store_ds_constructor_reply_keyboard_hide (struct tl_ds_reply_markup *D, struct paramed_type *T);
-void store_ds_constructor_reply_keyboard_force_reply (struct tl_ds_reply_markup *D, struct paramed_type *T);
-void store_ds_constructor_reply_keyboard_markup (struct tl_ds_reply_markup *D, struct paramed_type *T);
-void store_ds_constructor_res_p_q (struct tl_ds_res_p_q *D, struct paramed_type *T);
-void store_ds_constructor_send_message_typing_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_send_message_cancel_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_send_message_record_video_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_send_message_upload_video_action_l27 (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_send_message_upload_video_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_send_message_record_audio_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_send_message_upload_audio_action_l27 (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_send_message_upload_audio_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_send_message_upload_photo_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_send_message_upload_document_action_l27 (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_send_message_upload_document_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_send_message_geo_location_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_send_message_choose_contact_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_constructor_server_d_h_params_fail (struct tl_ds_server_d_h_params *D, struct paramed_type *T);
-void store_ds_constructor_server_d_h_params_ok (struct tl_ds_server_d_h_params *D, struct paramed_type *T);
-void store_ds_constructor_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *D, struct paramed_type *T);
-void store_ds_constructor_dh_gen_ok (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T);
-void store_ds_constructor_dh_gen_retry (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T);
-void store_ds_constructor_dh_gen_fail (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T);
-void store_ds_constructor_sticker_pack (struct tl_ds_sticker_pack *D, struct paramed_type *T);
-void store_ds_constructor_sticker_set (struct tl_ds_sticker_set *D, struct paramed_type *T);
-void store_ds_constructor_string (struct tl_ds_string *D, struct paramed_type *T);
-void store_ds_constructor_update_new_message (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_message_i_d (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_delete_messages (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_user_typing (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_chat_user_typing (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_chat_participants (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_user_status (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_user_name (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_user_photo (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_contact_registered (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_contact_link (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_new_authorization (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_new_geo_chat_message (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_new_encrypted_message (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_encrypted_chat_typing (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_encryption (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_encrypted_messages_read (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_chat_participant_add (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_chat_participant_delete (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_dc_options (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_user_blocked (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_notify_settings (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_service_notification (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_privacy (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_user_phone (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_read_history_inbox (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_read_history_outbox (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_web_page (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_read_messages_contents (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_update_msg_update (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_constructor_updates_too_long (struct tl_ds_updates *D, struct paramed_type *T);
-void store_ds_constructor_update_short_message (struct tl_ds_updates *D, struct paramed_type *T);
-void store_ds_constructor_update_short_chat_message (struct tl_ds_updates *D, struct paramed_type *T);
-void store_ds_constructor_update_short (struct tl_ds_updates *D, struct paramed_type *T);
-void store_ds_constructor_updates_combined (struct tl_ds_updates *D, struct paramed_type *T);
-void store_ds_constructor_updates (struct tl_ds_updates *D, struct paramed_type *T);
-void store_ds_constructor_user_empty (struct tl_ds_user *D, struct paramed_type *T);
-void store_ds_constructor_user (struct tl_ds_user *D, struct paramed_type *T);
-void store_ds_constructor_user_full (struct tl_ds_user_full *D, struct paramed_type *T);
-void store_ds_constructor_user_profile_photo_empty (struct tl_ds_user_profile_photo *D, struct paramed_type *T);
-void store_ds_constructor_user_profile_photo (struct tl_ds_user_profile_photo *D, struct paramed_type *T);
-void store_ds_constructor_user_status_empty (struct tl_ds_user_status *D, struct paramed_type *T);
-void store_ds_constructor_user_status_online (struct tl_ds_user_status *D, struct paramed_type *T);
-void store_ds_constructor_user_status_offline (struct tl_ds_user_status *D, struct paramed_type *T);
-void store_ds_constructor_user_status_recently (struct tl_ds_user_status *D, struct paramed_type *T);
-void store_ds_constructor_user_status_last_week (struct tl_ds_user_status *D, struct paramed_type *T);
-void store_ds_constructor_user_status_last_month (struct tl_ds_user_status *D, struct paramed_type *T);
-void store_ds_constructor_vector (struct tl_ds_vector *D, struct paramed_type *T);
-void store_ds_constructor_video_empty (struct tl_ds_video *D, struct paramed_type *T);
-void store_ds_constructor_video (struct tl_ds_video *D, struct paramed_type *T);
-void store_ds_constructor_video_l27 (struct tl_ds_video *D, struct paramed_type *T);
-void store_ds_constructor_wall_paper (struct tl_ds_wall_paper *D, struct paramed_type *T);
-void store_ds_constructor_wall_paper_solid (struct tl_ds_wall_paper *D, struct paramed_type *T);
-void store_ds_constructor_web_page_empty (struct tl_ds_web_page *D, struct paramed_type *T);
-void store_ds_constructor_web_page_pending (struct tl_ds_web_page *D, struct paramed_type *T);
-void store_ds_constructor_web_page (struct tl_ds_web_page *D, struct paramed_type *T);
-void store_ds_constructor_account_authorizations (struct tl_ds_account_authorizations *D, struct paramed_type *T);
-void store_ds_constructor_account_no_password (struct tl_ds_account_password *D, struct paramed_type *T);
-void store_ds_constructor_account_password (struct tl_ds_account_password *D, struct paramed_type *T);
-void store_ds_constructor_account_password_input_settings (struct tl_ds_account_password_input_settings *D, struct paramed_type *T);
-void store_ds_constructor_account_password_settings (struct tl_ds_account_password_settings *D, struct paramed_type *T);
-void store_ds_constructor_account_privacy_rules (struct tl_ds_account_privacy_rules *D, struct paramed_type *T);
-void store_ds_constructor_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *D, struct paramed_type *T);
-void store_ds_constructor_auth_authorization (struct tl_ds_auth_authorization *D, struct paramed_type *T);
-void store_ds_constructor_auth_checked_phone (struct tl_ds_auth_checked_phone *D, struct paramed_type *T);
-void store_ds_constructor_auth_exported_authorization (struct tl_ds_auth_exported_authorization *D, struct paramed_type *T);
-void store_ds_constructor_auth_password_recovery (struct tl_ds_auth_password_recovery *D, struct paramed_type *T);
-void store_ds_constructor_auth_sent_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T);
-void store_ds_constructor_auth_sent_app_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T);
-void store_ds_constructor_binlog_encr_key (struct tl_ds_binlog_encr_key *D, struct paramed_type *T);
-void store_ds_constructor_binlog_start (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_dc_option (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_dc_option_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_auth_key (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_default_dc (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_dc_signed (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_our_id (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_set_dh_params (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_set_pts (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_set_qts (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_set_date (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_set_seq (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_encr_chat_delete (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_encr_chat_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_encr_chat_exchange_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_user_delete (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_user_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_chat_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_chat_add_participant (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_chat_del_participant (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_set_msg_id (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_message_delete (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_message_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_message_encr_new (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_msg_update (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_binlog_reset_authorization (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_constructor_contacts_blocked (struct tl_ds_contacts_blocked *D, struct paramed_type *T);
-void store_ds_constructor_contacts_blocked_slice (struct tl_ds_contacts_blocked *D, struct paramed_type *T);
-void store_ds_constructor_contacts_contacts_not_modified (struct tl_ds_contacts_contacts *D, struct paramed_type *T);
-void store_ds_constructor_contacts_contacts (struct tl_ds_contacts_contacts *D, struct paramed_type *T);
-void store_ds_constructor_contacts_found (struct tl_ds_contacts_found *D, struct paramed_type *T);
-void store_ds_constructor_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *D, struct paramed_type *T);
-void store_ds_constructor_contacts_link (struct tl_ds_contacts_link *D, struct paramed_type *T);
-void store_ds_constructor_contacts_suggested (struct tl_ds_contacts_suggested *D, struct paramed_type *T);
-void store_ds_constructor_geochats_located (struct tl_ds_geochats_located *D, struct paramed_type *T);
-void store_ds_constructor_geochats_messages (struct tl_ds_geochats_messages *D, struct paramed_type *T);
-void store_ds_constructor_geochats_messages_slice (struct tl_ds_geochats_messages *D, struct paramed_type *T);
-void store_ds_constructor_geochats_stated_message (struct tl_ds_geochats_stated_message *D, struct paramed_type *T);
-void store_ds_constructor_help_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T);
-void store_ds_constructor_help_no_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T);
-void store_ds_constructor_help_invite_text (struct tl_ds_help_invite_text *D, struct paramed_type *T);
-void store_ds_constructor_help_support (struct tl_ds_help_support *D, struct paramed_type *T);
-void store_ds_constructor_messages_affected_history (struct tl_ds_messages_affected_history *D, struct paramed_type *T);
-void store_ds_constructor_messages_affected_messages (struct tl_ds_messages_affected_messages *D, struct paramed_type *T);
-void store_ds_constructor_messages_all_stickers_not_modified (struct tl_ds_messages_all_stickers *D, struct paramed_type *T);
-void store_ds_constructor_messages_all_stickers (struct tl_ds_messages_all_stickers *D, struct paramed_type *T);
-void store_ds_constructor_messages_chat_full (struct tl_ds_messages_chat_full *D, struct paramed_type *T);
-void store_ds_constructor_messages_chats (struct tl_ds_messages_chats *D, struct paramed_type *T);
-void store_ds_constructor_messages_dh_config_not_modified (struct tl_ds_messages_dh_config *D, struct paramed_type *T);
-void store_ds_constructor_messages_dh_config (struct tl_ds_messages_dh_config *D, struct paramed_type *T);
-void store_ds_constructor_messages_dialogs (struct tl_ds_messages_dialogs *D, struct paramed_type *T);
-void store_ds_constructor_messages_dialogs_slice (struct tl_ds_messages_dialogs *D, struct paramed_type *T);
-void store_ds_constructor_messages_message_empty (struct tl_ds_messages_message *D, struct paramed_type *T);
-void store_ds_constructor_messages_messages (struct tl_ds_messages_messages *D, struct paramed_type *T);
-void store_ds_constructor_messages_messages_slice (struct tl_ds_messages_messages *D, struct paramed_type *T);
-void store_ds_constructor_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T);
-void store_ds_constructor_messages_sent_encrypted_file (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T);
-void store_ds_constructor_messages_sent_message (struct tl_ds_messages_sent_message *D, struct paramed_type *T);
-void store_ds_constructor_messages_sent_message_link (struct tl_ds_messages_sent_message *D, struct paramed_type *T);
-void store_ds_constructor_messages_sticker_set (struct tl_ds_messages_sticker_set *D, struct paramed_type *T);
-void store_ds_constructor_messages_stickers_not_modified (struct tl_ds_messages_stickers *D, struct paramed_type *T);
-void store_ds_constructor_messages_stickers (struct tl_ds_messages_stickers *D, struct paramed_type *T);
-void store_ds_constructor_photos_photo (struct tl_ds_photos_photo *D, struct paramed_type *T);
-void store_ds_constructor_photos_photos (struct tl_ds_photos_photos *D, struct paramed_type *T);
-void store_ds_constructor_photos_photos_slice (struct tl_ds_photos_photos *D, struct paramed_type *T);
-void store_ds_constructor_storage_file_unknown (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void store_ds_constructor_storage_file_jpeg (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void store_ds_constructor_storage_file_gif (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void store_ds_constructor_storage_file_png (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void store_ds_constructor_storage_file_pdf (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void store_ds_constructor_storage_file_mp3 (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void store_ds_constructor_storage_file_mov (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void store_ds_constructor_storage_file_partial (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void store_ds_constructor_storage_file_mp4 (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void store_ds_constructor_storage_file_webp (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void store_ds_constructor_updates_difference_empty (struct tl_ds_updates_difference *D, struct paramed_type *T);
-void store_ds_constructor_updates_difference (struct tl_ds_updates_difference *D, struct paramed_type *T);
-void store_ds_constructor_updates_difference_slice (struct tl_ds_updates_difference *D, struct paramed_type *T);
-void store_ds_constructor_updates_state (struct tl_ds_updates_state *D, struct paramed_type *T);
-void store_ds_constructor_upload_file (struct tl_ds_upload_file *D, struct paramed_type *T);
-void store_ds_type_account_days_t_t_l (struct tl_ds_account_days_t_t_l *D, struct paramed_type *T);
-void store_ds_type_bare_account_days_t_t_l (struct tl_ds_account_days_t_t_l *D, struct paramed_type *T);
-void store_ds_type_audio (struct tl_ds_audio *D, struct paramed_type *T);
-void store_ds_type_bare_audio (struct tl_ds_audio *D, struct paramed_type *T);
-void store_ds_type_authorization (struct tl_ds_authorization *D, struct paramed_type *T);
-void store_ds_type_bare_authorization (struct tl_ds_authorization *D, struct paramed_type *T);
-void store_ds_type_bool (struct tl_ds_bool *D, struct paramed_type *T);
-void store_ds_type_bare_bool (struct tl_ds_bool *D, struct paramed_type *T);
-void store_ds_type_bot_command (struct tl_ds_bot_command *D, struct paramed_type *T);
-void store_ds_type_bare_bot_command (struct tl_ds_bot_command *D, struct paramed_type *T);
-void store_ds_type_bot_info (struct tl_ds_bot_info *D, struct paramed_type *T);
-void store_ds_type_bare_bot_info (struct tl_ds_bot_info *D, struct paramed_type *T);
-void store_ds_type_bytes (struct tl_ds_string *D, struct paramed_type *T);
-void store_ds_type_bare_bytes (struct tl_ds_string *D, struct paramed_type *T);
-void store_ds_type_chat (struct tl_ds_chat *D, struct paramed_type *T);
-void store_ds_type_bare_chat (struct tl_ds_chat *D, struct paramed_type *T);
-void store_ds_type_chat_full (struct tl_ds_chat_full *D, struct paramed_type *T);
-void store_ds_type_bare_chat_full (struct tl_ds_chat_full *D, struct paramed_type *T);
-void store_ds_type_chat_invite (struct tl_ds_chat_invite *D, struct paramed_type *T);
-void store_ds_type_bare_chat_invite (struct tl_ds_chat_invite *D, struct paramed_type *T);
-void store_ds_type_chat_located (struct tl_ds_chat_located *D, struct paramed_type *T);
-void store_ds_type_bare_chat_located (struct tl_ds_chat_located *D, struct paramed_type *T);
-void store_ds_type_chat_participant (struct tl_ds_chat_participant *D, struct paramed_type *T);
-void store_ds_type_bare_chat_participant (struct tl_ds_chat_participant *D, struct paramed_type *T);
-void store_ds_type_chat_participants (struct tl_ds_chat_participants *D, struct paramed_type *T);
-void store_ds_type_bare_chat_participants (struct tl_ds_chat_participants *D, struct paramed_type *T);
-void store_ds_type_chat_photo (struct tl_ds_chat_photo *D, struct paramed_type *T);
-void store_ds_type_bare_chat_photo (struct tl_ds_chat_photo *D, struct paramed_type *T);
-void store_ds_type_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *D, struct paramed_type *T);
-void store_ds_type_bare_client_d_h_inner_data (struct tl_ds_client_d_h_inner_data *D, struct paramed_type *T);
-void store_ds_type_config (struct tl_ds_config *D, struct paramed_type *T);
-void store_ds_type_bare_config (struct tl_ds_config *D, struct paramed_type *T);
-void store_ds_type_contact (struct tl_ds_contact *D, struct paramed_type *T);
-void store_ds_type_bare_contact (struct tl_ds_contact *D, struct paramed_type *T);
-void store_ds_type_contact_blocked (struct tl_ds_contact_blocked *D, struct paramed_type *T);
-void store_ds_type_bare_contact_blocked (struct tl_ds_contact_blocked *D, struct paramed_type *T);
-void store_ds_type_contact_found (struct tl_ds_contact_found *D, struct paramed_type *T);
-void store_ds_type_bare_contact_found (struct tl_ds_contact_found *D, struct paramed_type *T);
-void store_ds_type_contact_link (struct tl_ds_contact_link *D, struct paramed_type *T);
-void store_ds_type_bare_contact_link (struct tl_ds_contact_link *D, struct paramed_type *T);
-void store_ds_type_contact_status (struct tl_ds_contact_status *D, struct paramed_type *T);
-void store_ds_type_bare_contact_status (struct tl_ds_contact_status *D, struct paramed_type *T);
-void store_ds_type_contact_suggested (struct tl_ds_contact_suggested *D, struct paramed_type *T);
-void store_ds_type_bare_contact_suggested (struct tl_ds_contact_suggested *D, struct paramed_type *T);
-void store_ds_type_dc_option (struct tl_ds_dc_option *D, struct paramed_type *T);
-void store_ds_type_bare_dc_option (struct tl_ds_dc_option *D, struct paramed_type *T);
-void store_ds_type_decrypted_message (struct tl_ds_decrypted_message *D, struct paramed_type *T);
-void store_ds_type_bare_decrypted_message (struct tl_ds_decrypted_message *D, struct paramed_type *T);
-void store_ds_type_decrypted_message_action (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_type_bare_decrypted_message_action (struct tl_ds_decrypted_message_action *D, struct paramed_type *T);
-void store_ds_type_decrypted_message_layer (struct tl_ds_decrypted_message_layer *D, struct paramed_type *T);
-void store_ds_type_bare_decrypted_message_layer (struct tl_ds_decrypted_message_layer *D, struct paramed_type *T);
-void store_ds_type_decrypted_message_media (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void store_ds_type_bare_decrypted_message_media (struct tl_ds_decrypted_message_media *D, struct paramed_type *T);
-void store_ds_type_dialog (struct tl_ds_dialog *D, struct paramed_type *T);
-void store_ds_type_bare_dialog (struct tl_ds_dialog *D, struct paramed_type *T);
-void store_ds_type_disabled_feature (struct tl_ds_disabled_feature *D, struct paramed_type *T);
-void store_ds_type_bare_disabled_feature (struct tl_ds_disabled_feature *D, struct paramed_type *T);
-void store_ds_type_document (struct tl_ds_document *D, struct paramed_type *T);
-void store_ds_type_bare_document (struct tl_ds_document *D, struct paramed_type *T);
-void store_ds_type_document_attribute (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void store_ds_type_bare_document_attribute (struct tl_ds_document_attribute *D, struct paramed_type *T);
-void store_ds_type_double (double *D, struct paramed_type *T);
-void store_ds_type_bare_double (double *D, struct paramed_type *T);
-void store_ds_type_encrypted_chat (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void store_ds_type_bare_encrypted_chat (struct tl_ds_encrypted_chat *D, struct paramed_type *T);
-void store_ds_type_encrypted_file (struct tl_ds_encrypted_file *D, struct paramed_type *T);
-void store_ds_type_bare_encrypted_file (struct tl_ds_encrypted_file *D, struct paramed_type *T);
-void store_ds_type_encrypted_message (struct tl_ds_encrypted_message *D, struct paramed_type *T);
-void store_ds_type_bare_encrypted_message (struct tl_ds_encrypted_message *D, struct paramed_type *T);
-void store_ds_type_error (struct tl_ds_error *D, struct paramed_type *T);
-void store_ds_type_bare_error (struct tl_ds_error *D, struct paramed_type *T);
-void store_ds_type_exported_chat_invite (struct tl_ds_exported_chat_invite *D, struct paramed_type *T);
-void store_ds_type_bare_exported_chat_invite (struct tl_ds_exported_chat_invite *D, struct paramed_type *T);
-void store_ds_type_file_location (struct tl_ds_file_location *D, struct paramed_type *T);
-void store_ds_type_bare_file_location (struct tl_ds_file_location *D, struct paramed_type *T);
-void store_ds_type_geo_chat_message (struct tl_ds_geo_chat_message *D, struct paramed_type *T);
-void store_ds_type_bare_geo_chat_message (struct tl_ds_geo_chat_message *D, struct paramed_type *T);
-void store_ds_type_geo_point (struct tl_ds_geo_point *D, struct paramed_type *T);
-void store_ds_type_bare_geo_point (struct tl_ds_geo_point *D, struct paramed_type *T);
-void store_ds_type_imported_contact (struct tl_ds_imported_contact *D, struct paramed_type *T);
-void store_ds_type_bare_imported_contact (struct tl_ds_imported_contact *D, struct paramed_type *T);
-void store_ds_type_input_app_event (struct tl_ds_input_app_event *D, struct paramed_type *T);
-void store_ds_type_bare_input_app_event (struct tl_ds_input_app_event *D, struct paramed_type *T);
-void store_ds_type_input_audio (struct tl_ds_input_audio *D, struct paramed_type *T);
-void store_ds_type_bare_input_audio (struct tl_ds_input_audio *D, struct paramed_type *T);
-void store_ds_type_input_chat_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T);
-void store_ds_type_bare_input_chat_photo (struct tl_ds_input_chat_photo *D, struct paramed_type *T);
-void store_ds_type_input_contact (struct tl_ds_input_contact *D, struct paramed_type *T);
-void store_ds_type_bare_input_contact (struct tl_ds_input_contact *D, struct paramed_type *T);
-void store_ds_type_input_document (struct tl_ds_input_document *D, struct paramed_type *T);
-void store_ds_type_bare_input_document (struct tl_ds_input_document *D, struct paramed_type *T);
-void store_ds_type_input_encrypted_chat (struct tl_ds_input_encrypted_chat *D, struct paramed_type *T);
-void store_ds_type_bare_input_encrypted_chat (struct tl_ds_input_encrypted_chat *D, struct paramed_type *T);
-void store_ds_type_input_encrypted_file (struct tl_ds_input_encrypted_file *D, struct paramed_type *T);
-void store_ds_type_bare_input_encrypted_file (struct tl_ds_input_encrypted_file *D, struct paramed_type *T);
-void store_ds_type_input_file (struct tl_ds_input_file *D, struct paramed_type *T);
-void store_ds_type_bare_input_file (struct tl_ds_input_file *D, struct paramed_type *T);
-void store_ds_type_input_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void store_ds_type_bare_input_file_location (struct tl_ds_input_file_location *D, struct paramed_type *T);
-void store_ds_type_input_geo_chat (struct tl_ds_input_geo_chat *D, struct paramed_type *T);
-void store_ds_type_bare_input_geo_chat (struct tl_ds_input_geo_chat *D, struct paramed_type *T);
-void store_ds_type_input_geo_point (struct tl_ds_input_geo_point *D, struct paramed_type *T);
-void store_ds_type_bare_input_geo_point (struct tl_ds_input_geo_point *D, struct paramed_type *T);
-void store_ds_type_input_media (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_type_bare_input_media (struct tl_ds_input_media *D, struct paramed_type *T);
-void store_ds_type_input_notify_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void store_ds_type_bare_input_notify_peer (struct tl_ds_input_notify_peer *D, struct paramed_type *T);
-void store_ds_type_input_peer (struct tl_ds_input_peer *D, struct paramed_type *T);
-void store_ds_type_bare_input_peer (struct tl_ds_input_peer *D, struct paramed_type *T);
-void store_ds_type_input_peer_notify_events (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T);
-void store_ds_type_bare_input_peer_notify_events (struct tl_ds_input_peer_notify_events *D, struct paramed_type *T);
-void store_ds_type_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *D, struct paramed_type *T);
-void store_ds_type_bare_input_peer_notify_settings (struct tl_ds_input_peer_notify_settings *D, struct paramed_type *T);
-void store_ds_type_input_photo (struct tl_ds_input_photo *D, struct paramed_type *T);
-void store_ds_type_bare_input_photo (struct tl_ds_input_photo *D, struct paramed_type *T);
-void store_ds_type_input_photo_crop (struct tl_ds_input_photo_crop *D, struct paramed_type *T);
-void store_ds_type_bare_input_photo_crop (struct tl_ds_input_photo_crop *D, struct paramed_type *T);
-void store_ds_type_input_privacy_key (struct tl_ds_input_privacy_key *D, struct paramed_type *T);
-void store_ds_type_bare_input_privacy_key (struct tl_ds_input_privacy_key *D, struct paramed_type *T);
-void store_ds_type_input_privacy_rule (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void store_ds_type_bare_input_privacy_rule (struct tl_ds_input_privacy_rule *D, struct paramed_type *T);
-void store_ds_type_input_sticker_set (struct tl_ds_input_sticker_set *D, struct paramed_type *T);
-void store_ds_type_bare_input_sticker_set (struct tl_ds_input_sticker_set *D, struct paramed_type *T);
-void store_ds_type_input_user (struct tl_ds_input_user *D, struct paramed_type *T);
-void store_ds_type_bare_input_user (struct tl_ds_input_user *D, struct paramed_type *T);
-void store_ds_type_input_video (struct tl_ds_input_video *D, struct paramed_type *T);
-void store_ds_type_bare_input_video (struct tl_ds_input_video *D, struct paramed_type *T);
-void store_ds_type_int (int *D, struct paramed_type *T);
-void store_ds_type_bare_int (int *D, struct paramed_type *T);
-void store_ds_type_int128 (struct tl_ds_int128 *D, struct paramed_type *T);
-void store_ds_type_bare_int128 (struct tl_ds_int128 *D, struct paramed_type *T);
-void store_ds_type_int256 (struct tl_ds_int256 *D, struct paramed_type *T);
-void store_ds_type_bare_int256 (struct tl_ds_int256 *D, struct paramed_type *T);
-void store_ds_type_keyboard_button (struct tl_ds_keyboard_button *D, struct paramed_type *T);
-void store_ds_type_bare_keyboard_button (struct tl_ds_keyboard_button *D, struct paramed_type *T);
-void store_ds_type_keyboard_button_row (struct tl_ds_keyboard_button_row *D, struct paramed_type *T);
-void store_ds_type_bare_keyboard_button_row (struct tl_ds_keyboard_button_row *D, struct paramed_type *T);
-void store_ds_type_long (long long *D, struct paramed_type *T);
-void store_ds_type_bare_long (long long *D, struct paramed_type *T);
-void store_ds_type_message (struct tl_ds_message *D, struct paramed_type *T);
-void store_ds_type_bare_message (struct tl_ds_message *D, struct paramed_type *T);
-void store_ds_type_message_action (struct tl_ds_message_action *D, struct paramed_type *T);
-void store_ds_type_bare_message_action (struct tl_ds_message_action *D, struct paramed_type *T);
-void store_ds_type_message_media (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_type_bare_message_media (struct tl_ds_message_media *D, struct paramed_type *T);
-void store_ds_type_messages_filter (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void store_ds_type_bare_messages_filter (struct tl_ds_messages_filter *D, struct paramed_type *T);
-void store_ds_type_nearest_dc (struct tl_ds_nearest_dc *D, struct paramed_type *T);
-void store_ds_type_bare_nearest_dc (struct tl_ds_nearest_dc *D, struct paramed_type *T);
-void store_ds_type_notify_peer (struct tl_ds_notify_peer *D, struct paramed_type *T);
-void store_ds_type_bare_notify_peer (struct tl_ds_notify_peer *D, struct paramed_type *T);
-void store_ds_type_null (struct tl_ds_null *D, struct paramed_type *T);
-void store_ds_type_bare_null (struct tl_ds_null *D, struct paramed_type *T);
-void store_ds_type_p_q_inner_data (struct tl_ds_p_q_inner_data *D, struct paramed_type *T);
-void store_ds_type_bare_p_q_inner_data (struct tl_ds_p_q_inner_data *D, struct paramed_type *T);
-void store_ds_type_peer (struct tl_ds_peer *D, struct paramed_type *T);
-void store_ds_type_bare_peer (struct tl_ds_peer *D, struct paramed_type *T);
-void store_ds_type_peer_notify_events (struct tl_ds_peer_notify_events *D, struct paramed_type *T);
-void store_ds_type_bare_peer_notify_events (struct tl_ds_peer_notify_events *D, struct paramed_type *T);
-void store_ds_type_peer_notify_settings (struct tl_ds_peer_notify_settings *D, struct paramed_type *T);
-void store_ds_type_bare_peer_notify_settings (struct tl_ds_peer_notify_settings *D, struct paramed_type *T);
-void store_ds_type_photo (struct tl_ds_photo *D, struct paramed_type *T);
-void store_ds_type_bare_photo (struct tl_ds_photo *D, struct paramed_type *T);
-void store_ds_type_photo_size (struct tl_ds_photo_size *D, struct paramed_type *T);
-void store_ds_type_bare_photo_size (struct tl_ds_photo_size *D, struct paramed_type *T);
-void store_ds_type_privacy_key (struct tl_ds_privacy_key *D, struct paramed_type *T);
-void store_ds_type_bare_privacy_key (struct tl_ds_privacy_key *D, struct paramed_type *T);
-void store_ds_type_privacy_rule (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void store_ds_type_bare_privacy_rule (struct tl_ds_privacy_rule *D, struct paramed_type *T);
-void store_ds_type_received_notify_message (struct tl_ds_received_notify_message *D, struct paramed_type *T);
-void store_ds_type_bare_received_notify_message (struct tl_ds_received_notify_message *D, struct paramed_type *T);
-void store_ds_type_reply_markup (struct tl_ds_reply_markup *D, struct paramed_type *T);
-void store_ds_type_bare_reply_markup (struct tl_ds_reply_markup *D, struct paramed_type *T);
-void store_ds_type_res_p_q (struct tl_ds_res_p_q *D, struct paramed_type *T);
-void store_ds_type_bare_res_p_q (struct tl_ds_res_p_q *D, struct paramed_type *T);
-void store_ds_type_send_message_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_type_bare_send_message_action (struct tl_ds_send_message_action *D, struct paramed_type *T);
-void store_ds_type_server_d_h_params (struct tl_ds_server_d_h_params *D, struct paramed_type *T);
-void store_ds_type_bare_server_d_h_params (struct tl_ds_server_d_h_params *D, struct paramed_type *T);
-void store_ds_type_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *D, struct paramed_type *T);
-void store_ds_type_bare_server_d_h_inner_data (struct tl_ds_server_d_h_inner_data *D, struct paramed_type *T);
-void store_ds_type_set_client_d_h_params_answer (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T);
-void store_ds_type_bare_set_client_d_h_params_answer (struct tl_ds_set_client_d_h_params_answer *D, struct paramed_type *T);
-void store_ds_type_sticker_pack (struct tl_ds_sticker_pack *D, struct paramed_type *T);
-void store_ds_type_bare_sticker_pack (struct tl_ds_sticker_pack *D, struct paramed_type *T);
-void store_ds_type_sticker_set (struct tl_ds_sticker_set *D, struct paramed_type *T);
-void store_ds_type_bare_sticker_set (struct tl_ds_sticker_set *D, struct paramed_type *T);
-void store_ds_type_string (struct tl_ds_string *D, struct paramed_type *T);
-void store_ds_type_bare_string (struct tl_ds_string *D, struct paramed_type *T);
-void store_ds_type_update (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_type_bare_update (struct tl_ds_update *D, struct paramed_type *T);
-void store_ds_type_updates (struct tl_ds_updates *D, struct paramed_type *T);
-void store_ds_type_bare_updates (struct tl_ds_updates *D, struct paramed_type *T);
-void store_ds_type_user (struct tl_ds_user *D, struct paramed_type *T);
-void store_ds_type_bare_user (struct tl_ds_user *D, struct paramed_type *T);
-void store_ds_type_user_full (struct tl_ds_user_full *D, struct paramed_type *T);
-void store_ds_type_bare_user_full (struct tl_ds_user_full *D, struct paramed_type *T);
-void store_ds_type_user_profile_photo (struct tl_ds_user_profile_photo *D, struct paramed_type *T);
-void store_ds_type_bare_user_profile_photo (struct tl_ds_user_profile_photo *D, struct paramed_type *T);
-void store_ds_type_user_status (struct tl_ds_user_status *D, struct paramed_type *T);
-void store_ds_type_bare_user_status (struct tl_ds_user_status *D, struct paramed_type *T);
-void store_ds_type_vector (struct tl_ds_vector *D, struct paramed_type *T);
-void store_ds_type_bare_vector (struct tl_ds_vector *D, struct paramed_type *T);
-void store_ds_type_video (struct tl_ds_video *D, struct paramed_type *T);
-void store_ds_type_bare_video (struct tl_ds_video *D, struct paramed_type *T);
-void store_ds_type_wall_paper (struct tl_ds_wall_paper *D, struct paramed_type *T);
-void store_ds_type_bare_wall_paper (struct tl_ds_wall_paper *D, struct paramed_type *T);
-void store_ds_type_web_page (struct tl_ds_web_page *D, struct paramed_type *T);
-void store_ds_type_bare_web_page (struct tl_ds_web_page *D, struct paramed_type *T);
-void store_ds_type_account_authorizations (struct tl_ds_account_authorizations *D, struct paramed_type *T);
-void store_ds_type_bare_account_authorizations (struct tl_ds_account_authorizations *D, struct paramed_type *T);
-void store_ds_type_account_password (struct tl_ds_account_password *D, struct paramed_type *T);
-void store_ds_type_bare_account_password (struct tl_ds_account_password *D, struct paramed_type *T);
-void store_ds_type_account_password_input_settings (struct tl_ds_account_password_input_settings *D, struct paramed_type *T);
-void store_ds_type_bare_account_password_input_settings (struct tl_ds_account_password_input_settings *D, struct paramed_type *T);
-void store_ds_type_account_password_settings (struct tl_ds_account_password_settings *D, struct paramed_type *T);
-void store_ds_type_bare_account_password_settings (struct tl_ds_account_password_settings *D, struct paramed_type *T);
-void store_ds_type_account_privacy_rules (struct tl_ds_account_privacy_rules *D, struct paramed_type *T);
-void store_ds_type_bare_account_privacy_rules (struct tl_ds_account_privacy_rules *D, struct paramed_type *T);
-void store_ds_type_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *D, struct paramed_type *T);
-void store_ds_type_bare_account_sent_change_phone_code (struct tl_ds_account_sent_change_phone_code *D, struct paramed_type *T);
-void store_ds_type_auth_authorization (struct tl_ds_auth_authorization *D, struct paramed_type *T);
-void store_ds_type_bare_auth_authorization (struct tl_ds_auth_authorization *D, struct paramed_type *T);
-void store_ds_type_auth_checked_phone (struct tl_ds_auth_checked_phone *D, struct paramed_type *T);
-void store_ds_type_bare_auth_checked_phone (struct tl_ds_auth_checked_phone *D, struct paramed_type *T);
-void store_ds_type_auth_exported_authorization (struct tl_ds_auth_exported_authorization *D, struct paramed_type *T);
-void store_ds_type_bare_auth_exported_authorization (struct tl_ds_auth_exported_authorization *D, struct paramed_type *T);
-void store_ds_type_auth_password_recovery (struct tl_ds_auth_password_recovery *D, struct paramed_type *T);
-void store_ds_type_bare_auth_password_recovery (struct tl_ds_auth_password_recovery *D, struct paramed_type *T);
-void store_ds_type_auth_sent_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T);
-void store_ds_type_bare_auth_sent_code (struct tl_ds_auth_sent_code *D, struct paramed_type *T);
-void store_ds_type_binlog_encr_key (struct tl_ds_binlog_encr_key *D, struct paramed_type *T);
-void store_ds_type_bare_binlog_encr_key (struct tl_ds_binlog_encr_key *D, struct paramed_type *T);
-void store_ds_type_binlog_update (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_type_bare_binlog_update (struct tl_ds_binlog_update *D, struct paramed_type *T);
-void store_ds_type_contacts_blocked (struct tl_ds_contacts_blocked *D, struct paramed_type *T);
-void store_ds_type_bare_contacts_blocked (struct tl_ds_contacts_blocked *D, struct paramed_type *T);
-void store_ds_type_contacts_contacts (struct tl_ds_contacts_contacts *D, struct paramed_type *T);
-void store_ds_type_bare_contacts_contacts (struct tl_ds_contacts_contacts *D, struct paramed_type *T);
-void store_ds_type_contacts_found (struct tl_ds_contacts_found *D, struct paramed_type *T);
-void store_ds_type_bare_contacts_found (struct tl_ds_contacts_found *D, struct paramed_type *T);
-void store_ds_type_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *D, struct paramed_type *T);
-void store_ds_type_bare_contacts_imported_contacts (struct tl_ds_contacts_imported_contacts *D, struct paramed_type *T);
-void store_ds_type_contacts_link (struct tl_ds_contacts_link *D, struct paramed_type *T);
-void store_ds_type_bare_contacts_link (struct tl_ds_contacts_link *D, struct paramed_type *T);
-void store_ds_type_contacts_suggested (struct tl_ds_contacts_suggested *D, struct paramed_type *T);
-void store_ds_type_bare_contacts_suggested (struct tl_ds_contacts_suggested *D, struct paramed_type *T);
-void store_ds_type_geochats_located (struct tl_ds_geochats_located *D, struct paramed_type *T);
-void store_ds_type_bare_geochats_located (struct tl_ds_geochats_located *D, struct paramed_type *T);
-void store_ds_type_geochats_messages (struct tl_ds_geochats_messages *D, struct paramed_type *T);
-void store_ds_type_bare_geochats_messages (struct tl_ds_geochats_messages *D, struct paramed_type *T);
-void store_ds_type_geochats_stated_message (struct tl_ds_geochats_stated_message *D, struct paramed_type *T);
-void store_ds_type_bare_geochats_stated_message (struct tl_ds_geochats_stated_message *D, struct paramed_type *T);
-void store_ds_type_help_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T);
-void store_ds_type_bare_help_app_update (struct tl_ds_help_app_update *D, struct paramed_type *T);
-void store_ds_type_help_invite_text (struct tl_ds_help_invite_text *D, struct paramed_type *T);
-void store_ds_type_bare_help_invite_text (struct tl_ds_help_invite_text *D, struct paramed_type *T);
-void store_ds_type_help_support (struct tl_ds_help_support *D, struct paramed_type *T);
-void store_ds_type_bare_help_support (struct tl_ds_help_support *D, struct paramed_type *T);
-void store_ds_type_messages_affected_history (struct tl_ds_messages_affected_history *D, struct paramed_type *T);
-void store_ds_type_bare_messages_affected_history (struct tl_ds_messages_affected_history *D, struct paramed_type *T);
-void store_ds_type_messages_affected_messages (struct tl_ds_messages_affected_messages *D, struct paramed_type *T);
-void store_ds_type_bare_messages_affected_messages (struct tl_ds_messages_affected_messages *D, struct paramed_type *T);
-void store_ds_type_messages_all_stickers (struct tl_ds_messages_all_stickers *D, struct paramed_type *T);
-void store_ds_type_bare_messages_all_stickers (struct tl_ds_messages_all_stickers *D, struct paramed_type *T);
-void store_ds_type_messages_chat_full (struct tl_ds_messages_chat_full *D, struct paramed_type *T);
-void store_ds_type_bare_messages_chat_full (struct tl_ds_messages_chat_full *D, struct paramed_type *T);
-void store_ds_type_messages_chats (struct tl_ds_messages_chats *D, struct paramed_type *T);
-void store_ds_type_bare_messages_chats (struct tl_ds_messages_chats *D, struct paramed_type *T);
-void store_ds_type_messages_dh_config (struct tl_ds_messages_dh_config *D, struct paramed_type *T);
-void store_ds_type_bare_messages_dh_config (struct tl_ds_messages_dh_config *D, struct paramed_type *T);
-void store_ds_type_messages_dialogs (struct tl_ds_messages_dialogs *D, struct paramed_type *T);
-void store_ds_type_bare_messages_dialogs (struct tl_ds_messages_dialogs *D, struct paramed_type *T);
-void store_ds_type_messages_message (struct tl_ds_messages_message *D, struct paramed_type *T);
-void store_ds_type_bare_messages_message (struct tl_ds_messages_message *D, struct paramed_type *T);
-void store_ds_type_messages_messages (struct tl_ds_messages_messages *D, struct paramed_type *T);
-void store_ds_type_bare_messages_messages (struct tl_ds_messages_messages *D, struct paramed_type *T);
-void store_ds_type_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T);
-void store_ds_type_bare_messages_sent_encrypted_message (struct tl_ds_messages_sent_encrypted_message *D, struct paramed_type *T);
-void store_ds_type_messages_sent_message (struct tl_ds_messages_sent_message *D, struct paramed_type *T);
-void store_ds_type_bare_messages_sent_message (struct tl_ds_messages_sent_message *D, struct paramed_type *T);
-void store_ds_type_messages_sticker_set (struct tl_ds_messages_sticker_set *D, struct paramed_type *T);
-void store_ds_type_bare_messages_sticker_set (struct tl_ds_messages_sticker_set *D, struct paramed_type *T);
-void store_ds_type_messages_stickers (struct tl_ds_messages_stickers *D, struct paramed_type *T);
-void store_ds_type_bare_messages_stickers (struct tl_ds_messages_stickers *D, struct paramed_type *T);
-void store_ds_type_photos_photo (struct tl_ds_photos_photo *D, struct paramed_type *T);
-void store_ds_type_bare_photos_photo (struct tl_ds_photos_photo *D, struct paramed_type *T);
-void store_ds_type_photos_photos (struct tl_ds_photos_photos *D, struct paramed_type *T);
-void store_ds_type_bare_photos_photos (struct tl_ds_photos_photos *D, struct paramed_type *T);
-void store_ds_type_storage_file_type (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void store_ds_type_bare_storage_file_type (struct tl_ds_storage_file_type *D, struct paramed_type *T);
-void store_ds_type_updates_difference (struct tl_ds_updates_difference *D, struct paramed_type *T);
-void store_ds_type_bare_updates_difference (struct tl_ds_updates_difference *D, struct paramed_type *T);
-void store_ds_type_updates_state (struct tl_ds_updates_state *D, struct paramed_type *T);
-void store_ds_type_bare_updates_state (struct tl_ds_updates_state *D, struct paramed_type *T);
-void store_ds_type_upload_file (struct tl_ds_upload_file *D, struct paramed_type *T);
-void store_ds_type_bare_upload_file (struct tl_ds_upload_file *D, struct paramed_type *T);
-void store_ds_type_any (void *D, struct paramed_type *T);
diff --git a/protocols/Telegram/src/tgl/auto/auto-store.c b/protocols/Telegram/src/tgl/auto/auto-store.c
deleted file mode 100644
index 99dc5c392c..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-store.c
+++ /dev/null
@@ -1,24400 +0,0 @@
-#ifdef _MSC_VER
-#include "../auto.h"
-#include "../mtproto-common.h"
-#include "auto-store.h"
-#include "../auto-static-store.c"
-#else
-#include "auto.h"
-#include "mtproto-common.h"
-#include "auto/auto-store.h"
-#include "auto-static-store.c"
-#endif
-#include <assert.h>
-int store_constructor_account_days_t_t_l (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb8d0afdf && T->type->name != 0x472f5020)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_audio_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fc5ec4e && T->type->name != 0x603a13b1)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field8) < 0) { return -1;}
- return 0;
-}
-int store_constructor_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bf2e6f6 && T->type->name != 0x840d1909)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "device_model", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "platform", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "system_version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "api_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "app_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "app_version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field8) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "date_created", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field9) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "date_active", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field10) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "ip", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field11) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "country", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field12) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "region", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field13) < 0) { return -1;}
- return 0;
-}
-int store_constructor_bool_false (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return -1; }
- return 0;
-}
-int store_constructor_bool_true (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x250be282 && T->type->name != 0xdaf41d7d)) { return -1; }
- return 0;
-}
-int store_constructor_bot_command (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "command", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "description", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_bot_command_old (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x75e7ea6c && T->type->name != 0x8a181593)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "command", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "params", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "description", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_bot_info_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return -1; }
- return 0;
-}
-int store_constructor_bot_info (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb2e16f93 && T->type->name != 0x4d1e906c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "share_text", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "description", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "commands", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x75e7ea6c, .id = "BotCommand", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_bytes (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0ee1379f && T->type->name != 0xf11ec860)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_chat_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_chat_photo (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 18 && !cur_token_quoted && !memcmp (cur_token, "participants_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "left", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- return 0;
-}
-int store_constructor_chat_forbidden (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_geo_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bd865dc && T->type->name != 0x84279a23)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "address", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "venue", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "geo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_geo_point (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_chat_photo (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 18 && !cur_token_quoted && !memcmp (cur_token, "participants_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field8) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field9) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "checked_in", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field10) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field11) < 0) { return -1;}
- return 0;
-}
-int store_constructor_chat_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02a614 && T->type->name != 0xd1fd59eb)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "participants", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_chat_participants (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "chat_photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "notify_settings", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_peer_notify_settings (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "exported_invite", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f132d5, .id = "ExportedChatInvite", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_exported_chat_invite (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "bot_info", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field6) < 0) { return -1;}
- return 0;
-}
-int store_constructor_chat_invite_already (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "chat", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_chat (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_chat_invite (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x94f910b1 && T->type->name != 0x6b06ef4e)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_chat_located (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3631cf4c && T->type->name != 0xc9ce30b3)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "distance", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_chat_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc8d7493e && T->type->name != 0x3728b6c1)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "inviter_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_chat_participants_forbidden (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_chat_participants (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77930f9f && T->type->name != 0x886cf060)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "admin_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "participants", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_chat_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return -1; }
- return 0;
-}
-int store_constructor_chat_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56922676 && T->type->name != 0xa96dd989)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "photo_small", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_file_location (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "photo_big", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_file_location (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_client_d_h_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6643b654 && T->type->name != 0x99bc49ab)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "retry_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "g_b", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_config (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e32b894 && T->type->name != 0xb1cd476b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "expires", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "test_mode", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "this_dc", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "dc_options", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 13 && !cur_token_quoted && !memcmp (cur_token, "chat_size_max", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 18 && !cur_token_quoted && !memcmp (cur_token, "broadcast_size_max", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 19 && !cur_token_quoted && !memcmp (cur_token, "forwarded_count_max", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field8) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 23 && !cur_token_quoted && !memcmp (cur_token, "online_update_period_ms", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field9) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 23 && !cur_token_quoted && !memcmp (cur_token, "offline_blur_timeout_ms", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field10) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 23 && !cur_token_quoted && !memcmp (cur_token, "offline_idle_timeout_ms", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field11) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 23 && !cur_token_quoted && !memcmp (cur_token, "online_cloud_timeout_ms", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field12) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 21 && !cur_token_quoted && !memcmp (cur_token, "notify_cloud_delay_ms", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field13) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 23 && !cur_token_quoted && !memcmp (cur_token, "notify_default_delay_ms", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field14) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 13 && !cur_token_quoted && !memcmp (cur_token, "chat_big_size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field15) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 19 && !cur_token_quoted && !memcmp (cur_token, "push_chat_period_ms", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field16 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field16) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "push_chat_limit", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field17 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field17) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 17 && !cur_token_quoted && !memcmp (cur_token, "disabled_features", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field18 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae636f24, .id = "DisabledFeature", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field18) < 0) { return -1;}
- return 0;
-}
-int store_constructor_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf911c994 && T->type->name != 0x06ee366b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "mutual", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_contact_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x561bc879 && T->type->name != 0xa9e43786)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_contact_found (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xea879f95 && T->type->name != 0x1578606a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_contact_link_unknown (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- return 0;
-}
-int store_constructor_contact_link_none (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- return 0;
-}
-int store_constructor_contact_link_has_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- return 0;
-}
-int store_constructor_contact_link_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x522fbc63 && T->type->name != 0xadd0439c)) { return -1; }
- return 0;
-}
-int store_constructor_contact_status (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd3680c61 && T->type->name != 0x2c97f39e)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "status", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_user_status (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_contact_suggested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3de191a1 && T->type->name != 0xc21e6e5e)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "mutual_contacts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_dc_option_l28 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "hostname", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "ip_address", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "port", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_dc_option (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2b1a62f0 && T->type->name != 0xd4e59d0f)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "ip_address", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "port", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "ttl", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_decrypted_message_media (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x535b7918 && T->type->name != 0xaca486e7)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_decrypted_message_action (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_action_set_message_t_t_l (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "ttl_seconds", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_action_read_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "random_ids", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_action_delete_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "random_ids", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_action_screenshot_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "random_ids", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_action_flush_history (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- return 0;
-}
-int store_constructor_decrypted_message_action_resend (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "start_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "end_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_action_notify_layer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "layer", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_action_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_send_message_action (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_action_request_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "exchange_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "g_a", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_action_accept_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "exchange_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "g_b", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_action_abort_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "exchange_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_action_commit_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "exchange_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_action_noop (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4e0eefde && T->type->name != 0xb1f11021)) { return -1; }
- return 0;
-}
-int store_constructor_decrypted_message_layer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1be31789 && T->type->name != 0xe41ce876)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "random_bytes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "layer", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "in_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "out_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x535b7918, .id = "DecryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_decrypted_message (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- return 0;
-}
-int store_constructor_decrypted_message_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "str_thumb", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "iv", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field8) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_media_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "latitude", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_double (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "longitude", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_double (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "str_thumb", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "file_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "iv", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field8) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "str_thumb", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field8) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field9) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "iv", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field10) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "iv", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_media_external_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo_size (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "attributes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field8) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_media_video_l12 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "str_thumb", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "thumb_h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field8) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "iv", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field9) < 0) { return -1;}
- return 0;
-}
-int store_constructor_decrypted_message_media_audio_l12 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x34e0d674 && T->type->name != 0xcb1f298b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "iv", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_dialog (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc1dd804a && T->type->name != 0x3e227fb5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_peer (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "top_message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 17 && !cur_token_quoted && !memcmp (cur_token, "read_inbox_max_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "unread_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "notify_settings", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_peer_notify_settings (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_disabled_feature (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae636f24 && T->type->name != 0x519c90db)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "feature", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "description", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_document_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo_size (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "attributes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field8) < 0) { return -1;}
- return 0;
-}
-int store_constructor_document_l19 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x51a73418 && T->type->name != 0xae58cbe7)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "file_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo_size (field8) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field9) < 0) { return -1;}
- return 0;
-}
-int store_constructor_document_attribute_image_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_document_attribute_animated (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- return 0;
-}
-int store_constructor_document_attribute_sticker_l28 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "alt", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_document_attribute_sticker (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "alt", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "stickerset", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_sticker_set (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_document_attribute_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_document_attribute_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_document_attribute_filename (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x97c637a3 && T->type->name != 0x6839c85c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "file_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_double (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2210c154 && T->type->name != 0xddef3eab)) { return -1; }
- if (is_double ()) {
- out_double (get_double());
- local_next_token ();
- return 0;
- } else {
- return -1;
- }
-}
-int store_constructor_encrypted_chat_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_encrypted_chat_waiting (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "admin_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "participant_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_encrypted_chat_requested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "admin_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "participant_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "g_a", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field6) < 0) { return -1;}
- return 0;
-}
-int store_constructor_encrypted_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "admin_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "participant_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "g_a_or_b", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field7) < 0) { return -1;}
- return 0;
-}
-int store_constructor_encrypted_chat_discarded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb1718213 && T->type->name != 0x4e8e7dec)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_encrypted_file_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return -1; }
- return 0;
-}
-int store_constructor_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x886fd032 && T->type->name != 0x77902fcd)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_encrypted_file (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_encrypted_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xce6b8a1e && T->type->name != 0x319475e1)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_error (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc4b9f9bb && T->type->name != 0x3b460644)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "code", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "text", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_chat_invite_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return -1; }
- return 0;
-}
-int store_constructor_chat_invite_exported (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f132d5 && T->type->name != 0x6a0ecd2a)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "link", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_file_location_unavailable (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "volume_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "local_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "secret", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2f8ffb30 && T->type->name != 0xd07004cf)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "volume_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "local_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "secret", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_geo_chat_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_geo_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_message_media (field6) < 0) { return -1;}
- return 0;
-}
-int store_constructor_geo_chat_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf67b4034 && T->type->name != 0x0984bfcb)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_message_action (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_geo_point_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return -1; }
- return 0;
-}
-int store_constructor_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x315e0a53 && T->type->name != 0xcea1f5ac)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "longitude", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_double (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "latitude", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_double (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_imported_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd0028438 && T->type->name != 0x2ffd7bc7)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "client_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_app_event (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x770656a8 && T->type->name != 0x88f9a957)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "time", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_double (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "data", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_audio_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return -1; }
- return 0;
-}
-int store_constructor_input_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xae8e9c7b && T->type->name != 0x51716384)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_chat_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- return 0;
-}
-int store_constructor_input_chat_uploaded_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "crop", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_photo_crop (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_chat_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3a60776d && T->type->name != 0xc59f8892)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_photo (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "crop", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_photo_crop (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_phone_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf392b7f4 && T->type->name != 0x0c6d480b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "client_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "phone", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_document_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return -1; }
- return 0;
-}
-int store_constructor_input_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6a8963fc && T->type->name != 0x95769c03)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_encrypted_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf141b5e1 && T->type->name != 0x0ebe4a1e)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_encrypted_file_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- return 0;
-}
-int store_constructor_input_encrypted_file_uploaded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "parts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "md5_checksum", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_encrypted_file_big_uploaded (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0b5c064f && T->type->name != 0xf4a3f9b0)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "parts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "parts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "md5_checksum", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_file_big (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0f60f9ca && T->type->name != 0xf09f0635)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "parts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "volume_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "local_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "secret", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_video_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_encrypted_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_audio_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_document_file_location (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe6daa38b && T->type->name != 0x19255c74)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_geo_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x74d456fa && T->type->name != 0x8b2ba905)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_geo_point_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return -1; }
- return 0;
-}
-int store_constructor_input_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17768f1f && T->type->name != 0xe88970e0)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "latitude", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_double (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "longitude", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_double (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- return 0;
-}
-int store_constructor_input_media_uploaded_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_photo (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_geo_point (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "geo_point", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_point (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_uploaded_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_uploaded_thumb_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_file (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field6) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "video_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbb5f7a27, .id = "InputVideo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_video (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_uploaded_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "audio_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xae8e9c7b, .id = "InputAudio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_audio (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_uploaded_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "attributes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_uploaded_thumb_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_file (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_file (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "attributes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x97c637a3, .id = "DocumentAttribute", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "document_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6a8963fc, .id = "InputDocument", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_document (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_media_venue (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb32c91dd && T->type->name != 0x4cd36e22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "geo_point", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_point (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "address", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "provider", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "venue_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_notify_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_peer (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_notify_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- return 0;
-}
-int store_constructor_input_notify_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- return 0;
-}
-int store_constructor_input_notify_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- return 0;
-}
-int store_constructor_input_notify_geo_chat_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02b6911b && T->type->name != 0xfd496ee4)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "geo_peer", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_chat (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_peer_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- return 0;
-}
-int store_constructor_input_peer_self (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- return 0;
-}
-int store_constructor_input_peer_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_peer_foreign (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_peer_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9e67268d && T->type->name != 0x6198d972)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_peer_notify_events_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return -1; }
- return 0;
-}
-int store_constructor_input_peer_notify_events_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x185a48ac && T->type->name != 0xe7a5b753)) { return -1; }
- return 0;
-}
-int store_constructor_input_peer_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x46a2ce98 && T->type->name != 0xb95d3167)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "mute_until", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "sound", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 13 && !cur_token_quoted && !memcmp (cur_token, "show_previews", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "events_mask", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return -1; }
- return 0;
-}
-int store_constructor_input_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe74279c9 && T->type->name != 0x18bd8636)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_photo_crop_auto (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return -1; }
- return 0;
-}
-int store_constructor_input_photo_crop (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7477e321 && T->type->name != 0x8b881cde)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "crop_left", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_double (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "crop_top", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_double (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "crop_width", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddef3eab, .id = "Bare_Double", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_double (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_privacy_key_status_timestamp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4f96cb18 && T->type->name != 0xb06934e7)) { return -1; }
- return 0;
-}
-int store_constructor_input_privacy_value_allow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- return 0;
-}
-int store_constructor_input_privacy_value_allow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- return 0;
-}
-int store_constructor_input_privacy_value_allow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_privacy_value_disallow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- return 0;
-}
-int store_constructor_input_privacy_value_disallow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- return 0;
-}
-int store_constructor_input_privacy_value_disallow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4b815163 && T->type->name != 0xb47eae9c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_sticker_set_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- return 0;
-}
-int store_constructor_input_sticker_set_i_d (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_sticker_set_short_name (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe44d415c && T->type->name != 0x1bb2bea3)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "short_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_user_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- return 0;
-}
-int store_constructor_input_user_self (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- return 0;
-}
-int store_constructor_input_user_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_user_foreign (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xadfe0c6a && T->type->name != 0x5201f395)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_video_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return -1; }
- return 0;
-}
-int store_constructor_input_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbb5f7a27 && T->type->name != 0x44a085d8)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_int (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8509bda && T->type->name != 0x57af6425)) { return -1; }
- if (is_int ()) {
- out_int (get_int ());
- local_next_token ();
- return 0;
- } else {
- return -1;
- }
-}
-int store_constructor_int128 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7d36c439 && T->type->name != 0x82c93bc6)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_int256 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf2c798b3 && T->type->name != 0x0d38674c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return -1;}
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_keyboard_button (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa2fa4880 && T->type->name != 0x5d05b77f)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_keyboard_button_row (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x77608b83 && T->type->name != 0x889f747c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa2fa4880, .id = "KeyboardButton", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_long (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22076cba && T->type->name != 0xddf89345)) { return -1; }
- if (is_int ()) {
- out_long (get_int ());
- local_next_token ();
- return 0;
- } else {
- return -1;
- }
-}
-int store_constructor_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "to_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_peer (field4) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "fwd_from_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "fwd_date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "reply_to_msg_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field8) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field9) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_message_media (field10) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 6)) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "reply_markup", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_reply_markup (field11) < 0) { return -1;}
- }
- return 0;
-}
-int store_constructor_message_service (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5d652a7f && T->type->name != 0xa29ad580)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "to_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_peer (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_message_action (field6) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_action_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- return 0;
-}
-int store_constructor_message_action_chat_create (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_action_chat_edit_title (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_action_chat_edit_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_action_chat_delete_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- return 0;
-}
-int store_constructor_message_action_chat_add_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_action_chat_delete_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_action_geo_chat_create (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "address", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_action_geo_chat_checkin (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- return 0;
-}
-int store_constructor_message_action_chat_joined_by_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x383415fa && T->type->name != 0xc7cbea05)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "inviter_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_media_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- return 0;
-}
-int store_constructor_message_media_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_media_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "video", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_video (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_media_geo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "geo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_geo_point (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_media_contact (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_media_unsupported (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- return 0;
-}
-int store_constructor_message_media_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "document", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_document (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_media_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "audio", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fc5ec4e, .id = "Audio", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_audio (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_media_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "webpage", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_web_page (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_media_venue (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "geo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_geo_point (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "address", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "provider", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "venue_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_media_photo_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_message_media_video_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x95f2471a && T->type->name != 0x6a0db8e5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "video", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1716b174, .id = "Video", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_video (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_input_messages_filter_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int store_constructor_input_messages_filter_photos (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int store_constructor_input_messages_filter_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int store_constructor_input_messages_filter_photo_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int store_constructor_input_messages_filter_photo_video_documents (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int store_constructor_input_messages_filter_document (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int store_constructor_input_messages_filter_audio (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x80895ae0 && T->type->name != 0x7f76a51f)) { return -1; }
- return 0;
-}
-int store_constructor_nearest_dc (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8e1a1775 && T->type->name != 0x71e5e88a)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "country", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "this_dc", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "nearest_dc", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_notify_peer (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_peer (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_notify_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- return 0;
-}
-int store_constructor_notify_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- return 0;
-}
-int store_constructor_notify_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9fcb8237 && T->type->name != 0x60347dc8)) { return -1; }
- return 0;
-}
-int store_constructor_null (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x56730bcc && T->type->name != 0xa98cf433)) { return -1; }
- return 0;
-}
-int store_constructor_p_q_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "pq", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "p", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "q", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "new_nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int256 (field6) < 0) { return -1;}
- return 0;
-}
-int store_constructor_p_q_inner_data_temp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbfa3de38 && T->type->name != 0x405c21c7)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "pq", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "p", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "q", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "new_nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0d38674c, .id = "Bare_Int256", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int256 (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "expires_in", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- return 0;
-}
-int store_constructor_peer_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_peer_chat (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x276159d6 && T->type->name != 0xd89ea629)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_peer_notify_events_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return -1; }
- return 0;
-}
-int store_constructor_peer_notify_events_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc0c8d13b && T->type->name != 0x3f372ec4)) { return -1; }
- return 0;
-}
-int store_constructor_peer_notify_settings_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return -1; }
- return 0;
-}
-int store_constructor_peer_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xfdf894fc && T->type->name != 0x02076b03)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "mute_until", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "sound", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 13 && !cur_token_quoted && !memcmp (cur_token, "show_previews", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "events_mask", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "geo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_geo_point (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "sizes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field6) < 0) { return -1;}
- return 0;
-}
-int store_constructor_photo_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc207550a && T->type->name != 0x3df8aaf5)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "geo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x315e0a53, .id = "GeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_geo_point (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "sizes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field7) < 0) { return -1;}
- return 0;
-}
-int store_constructor_photo_size_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_photo_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "location", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_file_location (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_photo_cached_size (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x900f60dd && T->type->name != 0x6ff09f22)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "location", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_file_location (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_privacy_key_status_timestamp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbc2eab30 && T->type->name != 0x43d154cf)) { return -1; }
- return 0;
-}
-int store_constructor_privacy_value_allow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- return 0;
-}
-int store_constructor_privacy_value_allow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- return 0;
-}
-int store_constructor_privacy_value_allow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_privacy_value_disallow_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- return 0;
-}
-int store_constructor_privacy_value_disallow_all (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- return 0;
-}
-int store_constructor_privacy_value_disallow_users (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa8638aec && T->type->name != 0x579c7513)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_received_notify_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa384b779 && T->type->name != 0x5c7b4886)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_reply_keyboard_hide (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_reply_keyboard_force_reply (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_reply_keyboard_markup (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x612ca4a9 && T->type->name != 0x9ed35b56)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "rows", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77608b83, .id = "KeyboardButtonRow", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_res_p_q (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x05162463 && T->type->name != 0xfae9db9c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "pq", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 30 && !cur_token_quoted && !memcmp (cur_token, "server_public_key_fingerprints", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_send_message_typing_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int store_constructor_send_message_cancel_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int store_constructor_send_message_record_video_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int store_constructor_send_message_upload_video_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int store_constructor_send_message_upload_video_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "progress", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_send_message_record_audio_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int store_constructor_send_message_upload_audio_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int store_constructor_send_message_upload_audio_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "progress", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_send_message_upload_photo_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "progress", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_send_message_upload_document_action_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int store_constructor_send_message_upload_document_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "progress", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_send_message_geo_location_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int store_constructor_send_message_choose_contact_action (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x70541c7e && T->type->name != 0x8fabe381)) { return -1; }
- return 0;
-}
-int store_constructor_server_d_h_params_fail (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "new_nonce_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_server_d_h_params_ok (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa9230301 && T->type->name != 0x56dcfcfe)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 16 && !cur_token_quoted && !memcmp (cur_token, "encrypted_answer", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_server_d_h_inner_data (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5890dba && T->type->name != 0x4a76f245)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "g", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "dh_prime", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "g_a", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "server_time", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- return 0;
-}
-int store_constructor_dh_gen_ok (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "new_nonce_hash1", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_dh_gen_retry (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "new_nonce_hash2", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_dh_gen_fail (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdb8a468f && T->type->name != 0x2475b970)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "new_nonce_hash3", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_sticker_pack (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x12b299d4 && T->type->name != 0xed4d662b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "emoticon", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "documents", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_sticker_set (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa7a43b17 && T->type->name != 0x585bc4e8)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "short_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_string (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb5286e24 && T->type->name != 0x4ad791db)) { return -1; }
- if (cur_token_len >= 0) {
- out_cstring (cur_token, cur_token_len);
- local_next_token ();
- return 0;
- } else {
- return -1;
- }
-}
-int store_constructor_update_new_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_message (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_message_i_d (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_delete_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_user_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_send_message_action (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_chat_user_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_send_message_action (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_chat_participants (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "participants", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x77930f9f, .id = "ChatParticipants", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_chat_participants (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_user_status (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "status", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_user_status (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_user_name (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "username", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_user_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_user_profile_photo (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "previous", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_contact_registered (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_contact_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "my_link", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_contact_link (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "foreign_link", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_contact_link (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_new_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "auth_key_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "device", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "location", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_new_geo_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "geo_message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_geo_chat_message (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_new_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "encr_message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_encrypted_message (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "qts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_encrypted_chat_typing (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_encryption (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "encr_chat", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb1718213, .id = "EncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_encrypted_chat (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_encrypted_messages_read (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "max_date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_chat_participant_add (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "inviter_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_chat_participant_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_dc_options (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "dc_options", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2b1a62f0, .id = "DcOption", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_user_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "blocked", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_notify_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "notify_peer", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9fcb8237, .id = "NotifyPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_notify_peer (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "notify_settings", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_peer_notify_settings (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_service_notification (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "message_text", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_message_media (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "popup", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_privacy (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbc2eab30, .id = "PrivacyKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_privacy_key (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "rules", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_user_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "phone", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_read_history_inbox (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_peer (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_read_history_outbox (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x276159d6, .id = "Peer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_peer (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "webpage", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8d8c0d41, .id = "WebPage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_web_page (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_read_messages_contents (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_update_msg_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x2e02b27e && T->type->name != 0xd1fd4d81)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_updates_too_long (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- return 0;
-}
-int store_constructor_update_short_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "fwd_from_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "fwd_date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "reply_to_msg_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field10) < 0) { return -1;}
- }
- return 0;
-}
-int store_constructor_update_short_chat_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field8) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "fwd_from_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "fwd_date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "reply_to_msg_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field11) < 0) { return -1;}
- }
- return 0;
-}
-int store_constructor_update_short (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "update", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_update (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_updates_combined (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "updates", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "seq_start", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- return 0;
-}
-int store_constructor_updates (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x22499d27 && T->type->name != 0xddb662d8)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "updates", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_user_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_user (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x02e6c0c8 && T->type->name != 0xfd193f37)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 1)) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "username", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 4)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "phone", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 5)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_user_profile_photo (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 6)) {
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "status", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x76de9570, .id = "UserStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_user_status (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 14)) {
- if (cur_token_len >= 0 && cur_token_len == 16 && !cur_token_quoted && !memcmp (cur_token, "bot_info_version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field10) < 0) { return -1;}
- }
- return 0;
-}
-int store_constructor_user_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5a89ac5b && T->type->name != 0xa57653a4)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "user", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_user (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "link", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_contacts_link (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 13 && !cur_token_quoted && !memcmp (cur_token, "profile_photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "notify_settings", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_peer_notify_settings (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "blocked", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "bot_info", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bot_info (field6) < 0) { return -1;}
- return 0;
-}
-int store_constructor_user_profile_photo_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return -1; }
- return 0;
-}
-int store_constructor_user_profile_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x9a486229 && T->type->name != 0x65b79dd6)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "photo_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "photo_small", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_file_location (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "photo_big", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2f8ffb30, .id = "FileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_file_location (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_user_status_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- return 0;
-}
-int store_constructor_user_status_online (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "expires", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_user_status_offline (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "was_online", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_user_status_recently (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- return 0;
-}
-int store_constructor_user_status_last_week (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- return 0;
-}
-int store_constructor_user_status_last_month (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x76de9570 && T->type->name != 0x89216a8f)) { return -1; }
- return 0;
-}
-int store_constructor_vector (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1cb5c415 && T->type->name != 0xe34a3bea)) { return -1; }
- if (ODDP(T->params[0])) { return -1; }
- struct paramed_type *var0 = T->params[0]; assert (var0);
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var1 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var1);
- local_next_token ();
- expect_token ("[", 1);
- int multiplicity3 = PTR2INT (
- ((void *)var1) + 0 );
- struct paramed_type *field3 =
- var0;
- while (multiplicity3 -- > 0) {
- if (store_type_any (field3) < 0) { return -1;}
- }
- expect_token ("]", 1);
- return 0;
-}
-int store_constructor_video_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_video (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo_size (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field8) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field9) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field10) < 0) { return -1;}
- return 0;
-}
-int store_constructor_video_l27 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1716b174 && T->type->name != 0xe8e94e8b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "mime_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field7) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "size", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field8) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "thumb", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo_size (field9) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field10) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "w", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field11) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "h", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field12) < 0) { return -1;}
- return 0;
-}
-int store_constructor_wall_paper (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "sizes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x900f60dd, .id = "PhotoSize", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "color", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_wall_paper_solid (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xafa14973 && T->type->name != 0x505eb68c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "bg_color", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "color", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_web_page_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_web_page_pending (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_web_page (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8d8c0d41 && T->type->name != 0x7273f2be)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "url", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "display_url", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 1)) {
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "site_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 3)) {
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "description", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 4)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 5)) {
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "embed_url", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 5)) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "embed_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 6)) {
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "embed_width", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field12) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 6)) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "embed_height", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field13) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 7)) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "duration", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field14) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 8)) {
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "author", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field15) < 0) { return -1;}
- }
- return 0;
-}
-int store_constructor_account_authorizations (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x1250abde && T->type->name != 0xedaf5421)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bf2e6f6, .id = "Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_account_no_password (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "new_salt", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 25 && !cur_token_quoted && !memcmp (cur_token, "email_unconfirmed_pattern", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_account_password (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xeac2a804 && T->type->name != 0x153d57fb)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "current_salt", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "new_salt", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "hint", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "has_recovery", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 25 && !cur_token_quoted && !memcmp (cur_token, "email_unconfirmed_pattern", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_account_password_input_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xbcfc532c && T->type->name != 0x4303acd3)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "new_salt", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field2) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len >= 0 && cur_token_len == 17 && !cur_token_quoted && !memcmp (cur_token, "new_password_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "hint", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 1)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "email", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- }
- return 0;
-}
-int store_constructor_account_password_settings (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb7b72ab3 && T->type->name != 0x4848d54c)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_account_privacy_rules (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x554abb6f && T->type->name != 0xaab54490)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "rules", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa8638aec, .id = "PrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_account_sent_change_phone_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa4f58c4c && T->type->name != 0x5b0a73b3)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 17 && !cur_token_quoted && !memcmp (cur_token, "send_call_timeout", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_auth_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xff036af1 && T->type->name != 0x00fc950e)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_user (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_auth_checked_phone (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x811ea28e && T->type->name != 0x7ee15d71)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_auth_exported_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xdf969c2d && T->type->name != 0x206963d2)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_auth_password_recovery (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x137948a5 && T->type->name != 0xec86b75a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_auth_sent_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 16 && !cur_token_quoted && !memcmp (cur_token, "phone_registered", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 17 && !cur_token_quoted && !memcmp (cur_token, "send_call_timeout", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "is_password", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_auth_sent_app_code (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0cc8bc16 && T->type->name != 0xf33743e9)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 16 && !cur_token_quoted && !memcmp (cur_token, "phone_registered", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 17 && !cur_token_quoted && !memcmp (cur_token, "send_call_timeout", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "is_password", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_encr_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0377168f && T->type->name != 0xfc88e970)) { return -1; }
- expect_token ("[", 1);
- int multiplicity1 = PTR2INT (
- INT2PTR (64) );
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- while (multiplicity1 -- > 0) {
- if (store_type_any (field1) < 0) { return -1;}
- }
- expect_token ("]", 1);
- return 0;
-}
-int store_constructor_binlog_start (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- return 0;
-}
-int store_constructor_binlog_dc_option (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "dc", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "ip", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "port", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_dc_option_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "dc", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "ip", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "port", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_auth_key (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "dc", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_binlog_encr_key (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_default_dc (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "dc", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_dc_signed (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "dc", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_our_id (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_set_dh_params (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "root", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "prime", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_binlog_encr_key (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_set_pts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_set_qts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "qts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_set_date (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_set_seq (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_encr_chat_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_encr_chat_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "admin", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_binlog_encr_key (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "g_key", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_binlog_encr_key (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "state", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "ttl", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 25)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "layer", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "in_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field12) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "last_in_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field13) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "out_seq_no", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field14) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 27)) {
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field15 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field15) < 0) { return -1;}
- }
- return 0;
-}
-int store_constructor_binlog_encr_chat_exchange_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "exchange_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfc88e970, .id = "Bare_binlog.EncrKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_binlog_encr_key (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "state", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- }
- return 0;
-}
-int store_constructor_binlog_user_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_user_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "access_hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "phone", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "username", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "real_first_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "real_last_name", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "user_photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_user_profile_photo (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "last_read_in", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field12) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 25)) {
- if (cur_token_len >= 0 && cur_token_len == 13 && !cur_token_quoted && !memcmp (cur_token, "last_read_out", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field13) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 26)) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "bot_info", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field14 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb2e16f93, .id = "BotInfo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bot_info (field14) < 0) { return -1;}
- }
- return 0;
-}
-int store_constructor_binlog_chat_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "user_num", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "participants", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc8d7493e, .id = "ChatParticipant", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "chat_photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x56922676, .id = "ChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_chat_photo (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "admin", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "last_read_in", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 25)) {
- if (cur_token_len >= 0 && cur_token_len == 13 && !cur_token_quoted && !memcmp (cur_token, "last_read_out", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field12) < 0) { return -1;}
- }
- return 0;
-}
-int store_constructor_binlog_chat_add_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "inviter_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_chat_del_participant (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_set_msg_id (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "old_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "new_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_message_delete (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "lid", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_message_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "lid", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "to_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "to_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "fwd_from_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 18)) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "fwd_date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_message_media (field10) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field11 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x383415fa, .id = "MessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_message_action (field11) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "reply_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field12 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field12) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 24)) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "reply_markup", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field13 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_reply_markup (field13) < 0) { return -1;}
- }
- return 0;
-}
-int store_constructor_binlog_message_encr_new (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- if (cur_token_len < 0) { return -1; }
- if (!is_int ()) { return -1;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "lid", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return -1;}
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "from_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "to_type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 17)) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "to_id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 19)) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 20)) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field7) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 21)) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "encr_media", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x34e0d674, .id = "DecryptedMessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_decrypted_message_media (field8) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 22)) {
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "encr_action", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field9 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e0eefde, .id = "DecryptedMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_decrypted_message_action (field9) < 0) { return -1;}
- }
- if (PTR2INT (var0) & (1 << 23)) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field10 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_encrypted_file (field10) < 0) { return -1;}
- }
- return 0;
-}
-int store_constructor_binlog_msg_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "lid", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_binlog_reset_authorization (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x66ff03a6 && T->type->name != 0x9900fc59)) { return -1; }
- return 0;
-}
-int store_constructor_contacts_blocked (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "blocked", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_contacts_blocked_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8c1b8fb4 && T->type->name != 0x73e4704b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "blocked", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x561bc879, .id = "ContactBlocked", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_contacts_contacts_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return -1; }
- return 0;
-}
-int store_constructor_contacts_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xd8c02560 && T->type->name != 0x273fda9f)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "contacts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf911c994, .id = "Contact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_contacts_found (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x0566000e && T->type->name != 0xfa99fff1)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "results", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xea879f95, .id = "ContactFound", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_contacts_imported_contacts (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xad524315 && T->type->name != 0x52adbcea)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "imported", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xd0028438, .id = "ImportedContact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "retry_contacts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_contacts_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3ace484c && T->type->name != 0xc531b7b3)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "my_link", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_contact_link (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "foreign_link", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x522fbc63, .id = "ContactLink", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_contact_link (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "user", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_user (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_contacts_suggested (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x5649dcc5 && T->type->name != 0xa9b6233a)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "results", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3de191a1, .id = "ContactSuggested", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_geochats_located (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x48feb267 && T->type->name != 0xb7014d98)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "results", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3631cf4c, .id = "ChatLocated", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_geochats_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_geochats_messages_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x6d0a0e59 && T->type->name != 0x92f5f1a6)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_geochats_stated_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17b1578b && T->type->name != 0xe84ea874)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf67b4034, .id = "GeoChatMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_geo_chat_message (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_help_app_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "critical", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "url", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "text", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_help_no_app_update (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x4ddd9627 && T->type->name != 0xb22269d8)) { return -1; }
- return 0;
-}
-int store_constructor_help_invite_text (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x18cb9f78 && T->type->name != 0xe7346087)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_help_support (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x17c6b5f6 && T->type->name != 0xe8394a09)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "user", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_user (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_affected_history (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb45c69d1 && T->type->name != 0x4ba3962e)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_affected_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x84d19185 && T->type->name != 0x7b2e6e7a)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_all_stickers_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return -1; }
- return 0;
-}
-int store_constructor_messages_all_stickers (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb485502f && T->type->name != 0x4b7aafd0)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "packs", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "sets", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "documents", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_chat_full (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xe5d7d19c && T->type->name != 0x1a282e63)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "full_chat", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02a614, .id = "ChatFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_chat_full (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_chats (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x64ff9fd5 && T->type->name != 0x9b00602a)) { return -1; }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_dh_config_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "random", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_dh_config (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xecc058e8 && T->type->name != 0x133fa717)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "g", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "p", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "random", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_dialogs (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "dialogs", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_dialogs_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x645af8b3 && T->type->name != 0x9ba5074c)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "dialogs", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc1dd804a, .id = "Dialog", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_message_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3f4e0648 && T->type->name != 0xc0b1f9b7)) { return -1; }
- return 0;
-}
-int store_constructor_messages_messages (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_messages_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x8735e464 && T->type->name != 0x78ca1b9b)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field4) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_sent_encrypted_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_sent_encrypted_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xc29c7607 && T->type->name != 0x3d6389f8)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x886fd032, .id = "EncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_encrypted_file (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_sent_message (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_message_media (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_sent_message_link (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x799ce190 && T->type->name != 0x86631e6f)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_message_media (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "pts_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "links", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field6) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_sticker_set (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xb60a24a6 && T->type->name != 0x49f5db59)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "set", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa7a43b17, .id = "StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_sticker_set (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "packs", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x12b299d4, .id = "StickerPack", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "documents", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_messages_stickers_not_modified (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return -1; }
- return 0;
-}
-int store_constructor_messages_stickers (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x7bfa5710 && T->type->name != 0x8405a8ef)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "stickers", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x51a73418, .id = "Document", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_photos_photo (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x20212ca8 && T->type->name != 0xdfded357)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_photo (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_photos_photos (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "photos", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_photos_photos_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x98cf75f1 && T->type->name != 0x67308a0e)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "photos", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc207550a, .id = "Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- return 0;
-}
-int store_constructor_storage_file_unknown (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int store_constructor_storage_file_jpeg (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int store_constructor_storage_file_gif (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int store_constructor_storage_file_png (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int store_constructor_storage_file_pdf (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int store_constructor_storage_file_mp3 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int store_constructor_storage_file_mov (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int store_constructor_storage_file_partial (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int store_constructor_storage_file_mp4 (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int store_constructor_storage_file_webp (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x3e2838a8 && T->type->name != 0xc1d7c757)) { return -1; }
- return 0;
-}
-int store_constructor_updates_difference_empty (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- return 0;
-}
-int store_constructor_updates_difference (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "new_messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 22 && !cur_token_quoted && !memcmp (cur_token, "new_encrypted_messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 13 && !cur_token_quoted && !memcmp (cur_token, "other_updates", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "state", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_updates_state (field6) < 0) { return -1;}
- return 0;
-}
-int store_constructor_updates_difference_slice (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xf57a2419 && T->type->name != 0x0a85dbe6)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "new_messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5d652a7f, .id = "Message", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 22 && !cur_token_quoted && !memcmp (cur_token, "new_encrypted_messages", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xce6b8a1e, .id = "EncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 13 && !cur_token_quoted && !memcmp (cur_token, "other_updates", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x2e02b27e, .id = "Update", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "chats", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bd865dc, .id = "Chat", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field5) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 18 && !cur_token_quoted && !memcmp (cur_token, "intermediate_state", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_updates_state (field6) < 0) { return -1;}
- return 0;
-}
-int store_constructor_updates_state (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0xa56c2a3e && T->type->name != 0x5a93d5c1)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "qts", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "seq", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "unread_count", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return -1;}
- return 0;
-}
-int store_constructor_upload_file (struct paramed_type *T) {
- if (ODDP(T) || (T->type->name != 0x096a18d5 && T->type->name != 0xf695e72a)) { return -1; }
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "type", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3e2838a8, .id = "storage.FileType", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_storage_file_type (field1) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "mtime", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return -1;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field3) < 0) { return -1;}
- return 0;
-}
-int store_type_account_days_t_t_l (struct paramed_type *T) {
- out_int (0xb8d0afdf);
- if (store_constructor_account_days_t_t_l (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_account_days_t_t_l (struct paramed_type *T) {
- if (store_constructor_account_days_t_t_l (T) < 0) { return -1; }
- return 0;
-}
-int store_type_audio (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "audioEmpty", cur_token_len)) {
- out_int (0x586988d8);
- local_next_token ();
- if (store_constructor_audio_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 5 && !memcmp (cur_token, "audio", cur_token_len)) {
- out_int (0xc7ac6496);
- local_next_token ();
- if (store_constructor_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_audio (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "audioEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_audio_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 5 && !memcmp (cur_token, "audio", cur_token_len)) {
- local_next_token ();
- if (store_constructor_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_authorization (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "authorization", cur_token_len)) {
- out_int (0x7bf2e6f6);
- local_next_token ();
- if (store_constructor_authorization (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_authorization (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "authorization", cur_token_len)) {
- local_next_token ();
- if (store_constructor_authorization (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bool (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "boolFalse", cur_token_len)) {
- out_int (0xbc799737);
- local_next_token ();
- if (store_constructor_bool_false (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "boolTrue", cur_token_len)) {
- out_int (0x997275b5);
- local_next_token ();
- if (store_constructor_bool_true (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_bool (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "boolFalse", cur_token_len)) {
- local_next_token ();
- if (store_constructor_bool_false (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "boolTrue", cur_token_len)) {
- local_next_token ();
- if (store_constructor_bool_true (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bot_command (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "botCommand", cur_token_len)) {
- out_int (0xc27ac8c7);
- local_next_token ();
- if (store_constructor_bot_command (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "botCommandOld", cur_token_len)) {
- out_int (0xb79d22ab);
- local_next_token ();
- if (store_constructor_bot_command_old (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_bot_command (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "botCommand", cur_token_len)) {
- local_next_token ();
- if (store_constructor_bot_command (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "botCommandOld", cur_token_len)) {
- local_next_token ();
- if (store_constructor_bot_command_old (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bot_info (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "botInfoEmpty", cur_token_len)) {
- out_int (0xbb2e37ce);
- local_next_token ();
- if (store_constructor_bot_info_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "botInfo", cur_token_len)) {
- out_int (0x09cf585d);
- local_next_token ();
- if (store_constructor_bot_info (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_bot_info (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "botInfoEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_bot_info_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "botInfo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_bot_info (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bytes (struct paramed_type *T) {
- out_int (0x0ee1379f);
- if (store_constructor_bytes (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_bytes (struct paramed_type *T) {
- if (store_constructor_bytes (T) < 0) { return -1; }
- return 0;
-}
-int store_type_chat (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "chatEmpty", cur_token_len)) {
- out_int (0x9ba2d800);
- local_next_token ();
- if (store_constructor_chat_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 4 && !memcmp (cur_token, "chat", cur_token_len)) {
- out_int (0x6e9c9bc7);
- local_next_token ();
- if (store_constructor_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "chatForbidden", cur_token_len)) {
- out_int (0xfb0ccc41);
- local_next_token ();
- if (store_constructor_chat_forbidden (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "geoChat", cur_token_len)) {
- out_int (0x75eaea5a);
- local_next_token ();
- if (store_constructor_geo_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_chat (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "chatEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 4 && !memcmp (cur_token, "chat", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "chatForbidden", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_forbidden (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "geoChat", cur_token_len)) {
- local_next_token ();
- if (store_constructor_geo_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_chat_full (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 8 && !memcmp (cur_token, "chatFull", cur_token_len)) {
- out_int (0x2e02a614);
- local_next_token ();
- if (store_constructor_chat_full (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_chat_full (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 8 && !memcmp (cur_token, "chatFull", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_full (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_chat_invite (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "chatInviteAlready", cur_token_len)) {
- out_int (0x5a686d7c);
- local_next_token ();
- if (store_constructor_chat_invite_already (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "chatInvite", cur_token_len)) {
- out_int (0xce917dcd);
- local_next_token ();
- if (store_constructor_chat_invite (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_chat_invite (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "chatInviteAlready", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_invite_already (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "chatInvite", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_invite (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_chat_located (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "chatLocated", cur_token_len)) {
- out_int (0x3631cf4c);
- local_next_token ();
- if (store_constructor_chat_located (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_chat_located (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "chatLocated", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_located (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_chat_participant (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "chatParticipant", cur_token_len)) {
- out_int (0xc8d7493e);
- local_next_token ();
- if (store_constructor_chat_participant (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_chat_participant (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "chatParticipant", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_participant (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_chat_participants (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "chatParticipantsForbidden", cur_token_len)) {
- out_int (0x0fd2bb8a);
- local_next_token ();
- if (store_constructor_chat_participants_forbidden (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "chatParticipants", cur_token_len)) {
- out_int (0x7841b415);
- local_next_token ();
- if (store_constructor_chat_participants (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_chat_participants (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "chatParticipantsForbidden", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_participants_forbidden (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "chatParticipants", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_participants (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_chat_photo (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "chatPhotoEmpty", cur_token_len)) {
- out_int (0x37c1011c);
- local_next_token ();
- if (store_constructor_chat_photo_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 9 && !memcmp (cur_token, "chatPhoto", cur_token_len)) {
- out_int (0x6153276a);
- local_next_token ();
- if (store_constructor_chat_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_chat_photo (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "chatPhotoEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_photo_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 9 && !memcmp (cur_token, "chatPhoto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_client_d_h_inner_data (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "client_DH_inner_data", cur_token_len)) {
- out_int (0x6643b654);
- local_next_token ();
- if (store_constructor_client_d_h_inner_data (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_client_d_h_inner_data (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "client_DH_inner_data", cur_token_len)) {
- local_next_token ();
- if (store_constructor_client_d_h_inner_data (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_config (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "config", cur_token_len)) {
- out_int (0x4e32b894);
- local_next_token ();
- if (store_constructor_config (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_config (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "config", cur_token_len)) {
- local_next_token ();
- if (store_constructor_config (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_contact (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 7 && !memcmp (cur_token, "contact", cur_token_len)) {
- out_int (0xf911c994);
- local_next_token ();
- if (store_constructor_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_contact (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 7 && !memcmp (cur_token, "contact", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_contact_blocked (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "contactBlocked", cur_token_len)) {
- out_int (0x561bc879);
- local_next_token ();
- if (store_constructor_contact_blocked (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_contact_blocked (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "contactBlocked", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contact_blocked (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_contact_found (struct paramed_type *T) {
- out_int (0xea879f95);
- if (store_constructor_contact_found (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_contact_found (struct paramed_type *T) {
- if (store_constructor_contact_found (T) < 0) { return -1; }
- return 0;
-}
-int store_type_contact_link (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "contactLinkUnknown", cur_token_len)) {
- out_int (0x5f4f9247);
- local_next_token ();
- if (store_constructor_contact_link_unknown (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "contactLinkNone", cur_token_len)) {
- out_int (0xfeedd3ad);
- local_next_token ();
- if (store_constructor_contact_link_none (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "contactLinkHasPhone", cur_token_len)) {
- out_int (0x268f3f59);
- local_next_token ();
- if (store_constructor_contact_link_has_phone (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "contactLinkContact", cur_token_len)) {
- out_int (0xd502c2d0);
- local_next_token ();
- if (store_constructor_contact_link_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_contact_link (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "contactLinkUnknown", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contact_link_unknown (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "contactLinkNone", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contact_link_none (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "contactLinkHasPhone", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contact_link_has_phone (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "contactLinkContact", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contact_link_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_contact_status (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "contactStatus", cur_token_len)) {
- out_int (0xd3680c61);
- local_next_token ();
- if (store_constructor_contact_status (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_contact_status (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "contactStatus", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contact_status (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_contact_suggested (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "contactSuggested", cur_token_len)) {
- out_int (0x3de191a1);
- local_next_token ();
- if (store_constructor_contact_suggested (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_contact_suggested (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "contactSuggested", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contact_suggested (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_dc_option (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "dcOptionL28", cur_token_len)) {
- out_int (0x2ec2a43c);
- local_next_token ();
- if (store_constructor_dc_option_l28 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "dcOption", cur_token_len)) {
- out_int (0x05d8c6cc);
- local_next_token ();
- if (store_constructor_dc_option (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_dc_option (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "dcOptionL28", cur_token_len)) {
- local_next_token ();
- if (store_constructor_dc_option_l28 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "dcOption", cur_token_len)) {
- local_next_token ();
- if (store_constructor_dc_option (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_decrypted_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "decryptedMessage", cur_token_len)) {
- out_int (0x204d3878);
- local_next_token ();
- if (store_constructor_decrypted_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "decryptedMessageService", cur_token_len)) {
- out_int (0x73164160);
- local_next_token ();
- if (store_constructor_decrypted_message_service (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_decrypted_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "decryptedMessage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "decryptedMessageService", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_service (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_decrypted_message_action (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 35 && !memcmp (cur_token, "decryptedMessageActionSetMessageTTL", cur_token_len)) {
- out_int (0xa1733aec);
- local_next_token ();
- if (store_constructor_decrypted_message_action_set_message_t_t_l (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 34 && !memcmp (cur_token, "decryptedMessageActionReadMessages", cur_token_len)) {
- out_int (0x0c4f40be);
- local_next_token ();
- if (store_constructor_decrypted_message_action_read_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 36 && !memcmp (cur_token, "decryptedMessageActionDeleteMessages", cur_token_len)) {
- out_int (0x65614304);
- local_next_token ();
- if (store_constructor_decrypted_message_action_delete_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 40 && !memcmp (cur_token, "decryptedMessageActionScreenshotMessages", cur_token_len)) {
- out_int (0x8ac1f475);
- local_next_token ();
- if (store_constructor_decrypted_message_action_screenshot_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 34 && !memcmp (cur_token, "decryptedMessageActionFlushHistory", cur_token_len)) {
- out_int (0x6719e45c);
- local_next_token ();
- if (store_constructor_decrypted_message_action_flush_history (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "decryptedMessageActionResend", cur_token_len)) {
- out_int (0x511110b0);
- local_next_token ();
- if (store_constructor_decrypted_message_action_resend (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 33 && !memcmp (cur_token, "decryptedMessageActionNotifyLayer", cur_token_len)) {
- out_int (0xf3048883);
- local_next_token ();
- if (store_constructor_decrypted_message_action_notify_layer (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "decryptedMessageActionTyping", cur_token_len)) {
- out_int (0xccb27641);
- local_next_token ();
- if (store_constructor_decrypted_message_action_typing (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 32 && !memcmp (cur_token, "decryptedMessageActionRequestKey", cur_token_len)) {
- out_int (0xf3c9611b);
- local_next_token ();
- if (store_constructor_decrypted_message_action_request_key (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "decryptedMessageActionAcceptKey", cur_token_len)) {
- out_int (0x6fe1735b);
- local_next_token ();
- if (store_constructor_decrypted_message_action_accept_key (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "decryptedMessageActionAbortKey", cur_token_len)) {
- out_int (0xdd05ec6b);
- local_next_token ();
- if (store_constructor_decrypted_message_action_abort_key (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "decryptedMessageActionCommitKey", cur_token_len)) {
- out_int (0xec2e0b9b);
- local_next_token ();
- if (store_constructor_decrypted_message_action_commit_key (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageActionNoop", cur_token_len)) {
- out_int (0xa82fdd63);
- local_next_token ();
- if (store_constructor_decrypted_message_action_noop (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_decrypted_message_action (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 35 && !memcmp (cur_token, "decryptedMessageActionSetMessageTTL", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_set_message_t_t_l (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 34 && !memcmp (cur_token, "decryptedMessageActionReadMessages", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_read_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 36 && !memcmp (cur_token, "decryptedMessageActionDeleteMessages", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_delete_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 40 && !memcmp (cur_token, "decryptedMessageActionScreenshotMessages", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_screenshot_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 34 && !memcmp (cur_token, "decryptedMessageActionFlushHistory", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_flush_history (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "decryptedMessageActionResend", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_resend (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 33 && !memcmp (cur_token, "decryptedMessageActionNotifyLayer", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_notify_layer (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "decryptedMessageActionTyping", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_typing (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 32 && !memcmp (cur_token, "decryptedMessageActionRequestKey", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_request_key (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "decryptedMessageActionAcceptKey", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_accept_key (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "decryptedMessageActionAbortKey", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_abort_key (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "decryptedMessageActionCommitKey", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_commit_key (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageActionNoop", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_action_noop (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_decrypted_message_layer (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "decryptedMessageLayer", cur_token_len)) {
- out_int (0x1be31789);
- local_next_token ();
- if (store_constructor_decrypted_message_layer (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_decrypted_message_layer (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "decryptedMessageLayer", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_layer (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_decrypted_message_media (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaEmpty", cur_token_len)) {
- out_int (0x089f5c4a);
- local_next_token ();
- if (store_constructor_decrypted_message_media_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaPhoto", cur_token_len)) {
- out_int (0x32798a8c);
- local_next_token ();
- if (store_constructor_decrypted_message_media_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaGeoPoint", cur_token_len)) {
- out_int (0x35480a59);
- local_next_token ();
- if (store_constructor_decrypted_message_media_geo_point (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "decryptedMessageMediaContact", cur_token_len)) {
- out_int (0x588a0a97);
- local_next_token ();
- if (store_constructor_decrypted_message_media_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaDocument", cur_token_len)) {
- out_int (0xb095434b);
- local_next_token ();
- if (store_constructor_decrypted_message_media_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaVideo", cur_token_len)) {
- out_int (0x524a415d);
- local_next_token ();
- if (store_constructor_decrypted_message_media_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaAudio", cur_token_len)) {
- out_int (0x57e0a9cb);
- local_next_token ();
- if (store_constructor_decrypted_message_media_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 37 && !memcmp (cur_token, "decryptedMessageMediaExternalDocument", cur_token_len)) {
- out_int (0xfa95b0dd);
- local_next_token ();
- if (store_constructor_decrypted_message_media_external_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaVideoL12", cur_token_len)) {
- out_int (0x4cee6ef3);
- local_next_token ();
- if (store_constructor_decrypted_message_media_video_l12 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaAudioL12", cur_token_len)) {
- out_int (0x6080758f);
- local_next_token ();
- if (store_constructor_decrypted_message_media_audio_l12 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_decrypted_message_media (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_media_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaPhoto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_media_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaGeoPoint", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_media_geo_point (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "decryptedMessageMediaContact", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_media_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaDocument", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_media_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaVideo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_media_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "decryptedMessageMediaAudio", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_media_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 37 && !memcmp (cur_token, "decryptedMessageMediaExternalDocument", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_media_external_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaVideoL12", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_media_video_l12 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "decryptedMessageMediaAudioL12", cur_token_len)) {
- local_next_token ();
- if (store_constructor_decrypted_message_media_audio_l12 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_dialog (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "dialog", cur_token_len)) {
- out_int (0xc1dd804a);
- local_next_token ();
- if (store_constructor_dialog (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_dialog (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "dialog", cur_token_len)) {
- local_next_token ();
- if (store_constructor_dialog (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_disabled_feature (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "disabledFeature", cur_token_len)) {
- out_int (0xae636f24);
- local_next_token ();
- if (store_constructor_disabled_feature (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_disabled_feature (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "disabledFeature", cur_token_len)) {
- local_next_token ();
- if (store_constructor_disabled_feature (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_document (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "documentEmpty", cur_token_len)) {
- out_int (0x36f8c871);
- local_next_token ();
- if (store_constructor_document_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "document", cur_token_len)) {
- out_int (0xf9a39f4f);
- local_next_token ();
- if (store_constructor_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "document_l19", cur_token_len)) {
- out_int (0x9efc6326);
- local_next_token ();
- if (store_constructor_document_l19 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_document (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "documentEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_document_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "document", cur_token_len)) {
- local_next_token ();
- if (store_constructor_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "document_l19", cur_token_len)) {
- local_next_token ();
- if (store_constructor_document_l19 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_document_attribute (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "documentAttributeImageSize", cur_token_len)) {
- out_int (0x6c37c15c);
- local_next_token ();
- if (store_constructor_document_attribute_image_size (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "documentAttributeAnimated", cur_token_len)) {
- out_int (0x11b58939);
- local_next_token ();
- if (store_constructor_document_attribute_animated (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "documentAttributeStickerL28", cur_token_len)) {
- out_int (0x994c9882);
- local_next_token ();
- if (store_constructor_document_attribute_sticker_l28 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "documentAttributeSticker", cur_token_len)) {
- out_int (0x3a556302);
- local_next_token ();
- if (store_constructor_document_attribute_sticker (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "documentAttributeVideo", cur_token_len)) {
- out_int (0x5910cccb);
- local_next_token ();
- if (store_constructor_document_attribute_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "documentAttributeAudio", cur_token_len)) {
- out_int (0x051448e5);
- local_next_token ();
- if (store_constructor_document_attribute_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "documentAttributeFilename", cur_token_len)) {
- out_int (0x15590068);
- local_next_token ();
- if (store_constructor_document_attribute_filename (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_document_attribute (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "documentAttributeImageSize", cur_token_len)) {
- local_next_token ();
- if (store_constructor_document_attribute_image_size (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "documentAttributeAnimated", cur_token_len)) {
- local_next_token ();
- if (store_constructor_document_attribute_animated (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "documentAttributeStickerL28", cur_token_len)) {
- local_next_token ();
- if (store_constructor_document_attribute_sticker_l28 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "documentAttributeSticker", cur_token_len)) {
- local_next_token ();
- if (store_constructor_document_attribute_sticker (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "documentAttributeVideo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_document_attribute_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "documentAttributeAudio", cur_token_len)) {
- local_next_token ();
- if (store_constructor_document_attribute_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "documentAttributeFilename", cur_token_len)) {
- local_next_token ();
- if (store_constructor_document_attribute_filename (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_double (struct paramed_type *T) {
- out_int (0x2210c154);
- if (store_constructor_double (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_double (struct paramed_type *T) {
- if (store_constructor_double (T) < 0) { return -1; }
- return 0;
-}
-int store_type_encrypted_chat (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "encryptedChatEmpty", cur_token_len)) {
- out_int (0xab7ec0a0);
- local_next_token ();
- if (store_constructor_encrypted_chat_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "encryptedChatWaiting", cur_token_len)) {
- out_int (0x3bf703dc);
- local_next_token ();
- if (store_constructor_encrypted_chat_waiting (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "encryptedChatRequested", cur_token_len)) {
- out_int (0xc878527e);
- local_next_token ();
- if (store_constructor_encrypted_chat_requested (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "encryptedChat", cur_token_len)) {
- out_int (0xfa56ce36);
- local_next_token ();
- if (store_constructor_encrypted_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "encryptedChatDiscarded", cur_token_len)) {
- out_int (0x13d6dd27);
- local_next_token ();
- if (store_constructor_encrypted_chat_discarded (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_encrypted_chat (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "encryptedChatEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_encrypted_chat_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "encryptedChatWaiting", cur_token_len)) {
- local_next_token ();
- if (store_constructor_encrypted_chat_waiting (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "encryptedChatRequested", cur_token_len)) {
- local_next_token ();
- if (store_constructor_encrypted_chat_requested (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "encryptedChat", cur_token_len)) {
- local_next_token ();
- if (store_constructor_encrypted_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "encryptedChatDiscarded", cur_token_len)) {
- local_next_token ();
- if (store_constructor_encrypted_chat_discarded (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_encrypted_file (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "encryptedFileEmpty", cur_token_len)) {
- out_int (0xc21f497e);
- local_next_token ();
- if (store_constructor_encrypted_file_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "encryptedFile", cur_token_len)) {
- out_int (0x4a70994c);
- local_next_token ();
- if (store_constructor_encrypted_file (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_encrypted_file (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "encryptedFileEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_encrypted_file_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "encryptedFile", cur_token_len)) {
- local_next_token ();
- if (store_constructor_encrypted_file (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_encrypted_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "encryptedMessage", cur_token_len)) {
- out_int (0xed18c118);
- local_next_token ();
- if (store_constructor_encrypted_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "encryptedMessageService", cur_token_len)) {
- out_int (0x23734b06);
- local_next_token ();
- if (store_constructor_encrypted_message_service (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_encrypted_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "encryptedMessage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_encrypted_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "encryptedMessageService", cur_token_len)) {
- local_next_token ();
- if (store_constructor_encrypted_message_service (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_error (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 5 && !memcmp (cur_token, "error", cur_token_len)) {
- out_int (0xc4b9f9bb);
- local_next_token ();
- if (store_constructor_error (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_error (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 5 && !memcmp (cur_token, "error", cur_token_len)) {
- local_next_token ();
- if (store_constructor_error (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_exported_chat_invite (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "chatInviteEmpty", cur_token_len)) {
- out_int (0x69df3769);
- local_next_token ();
- if (store_constructor_chat_invite_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "chatInviteExported", cur_token_len)) {
- out_int (0xfc2e05bc);
- local_next_token ();
- if (store_constructor_chat_invite_exported (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_exported_chat_invite (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "chatInviteEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_invite_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "chatInviteExported", cur_token_len)) {
- local_next_token ();
- if (store_constructor_chat_invite_exported (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_file_location (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "fileLocationUnavailable", cur_token_len)) {
- out_int (0x7c596b46);
- local_next_token ();
- if (store_constructor_file_location_unavailable (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "fileLocation", cur_token_len)) {
- out_int (0x53d69076);
- local_next_token ();
- if (store_constructor_file_location (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_file_location (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "fileLocationUnavailable", cur_token_len)) {
- local_next_token ();
- if (store_constructor_file_location_unavailable (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "fileLocation", cur_token_len)) {
- local_next_token ();
- if (store_constructor_file_location (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_geo_chat_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "geoChatMessageEmpty", cur_token_len)) {
- out_int (0x60311a9b);
- local_next_token ();
- if (store_constructor_geo_chat_message_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "geoChatMessage", cur_token_len)) {
- out_int (0x4505f8e1);
- local_next_token ();
- if (store_constructor_geo_chat_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "geoChatMessageService", cur_token_len)) {
- out_int (0xd34fa24e);
- local_next_token ();
- if (store_constructor_geo_chat_message_service (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_geo_chat_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "geoChatMessageEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_geo_chat_message_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "geoChatMessage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_geo_chat_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "geoChatMessageService", cur_token_len)) {
- local_next_token ();
- if (store_constructor_geo_chat_message_service (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_geo_point (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "geoPointEmpty", cur_token_len)) {
- out_int (0x1117dd5f);
- local_next_token ();
- if (store_constructor_geo_point_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "geoPoint", cur_token_len)) {
- out_int (0x2049d70c);
- local_next_token ();
- if (store_constructor_geo_point (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_geo_point (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "geoPointEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_geo_point_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "geoPoint", cur_token_len)) {
- local_next_token ();
- if (store_constructor_geo_point (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_imported_contact (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "importedContact", cur_token_len)) {
- out_int (0xd0028438);
- local_next_token ();
- if (store_constructor_imported_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_imported_contact (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "importedContact", cur_token_len)) {
- local_next_token ();
- if (store_constructor_imported_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_app_event (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputAppEvent", cur_token_len)) {
- out_int (0x770656a8);
- local_next_token ();
- if (store_constructor_input_app_event (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_app_event (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputAppEvent", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_app_event (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_audio (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputAudioEmpty", cur_token_len)) {
- out_int (0xd95adc84);
- local_next_token ();
- if (store_constructor_input_audio_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "inputAudio", cur_token_len)) {
- out_int (0x77d440ff);
- local_next_token ();
- if (store_constructor_input_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_audio (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputAudioEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_audio_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "inputAudio", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_chat_photo (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "inputChatPhotoEmpty", cur_token_len)) {
- out_int (0x1ca48f57);
- local_next_token ();
- if (store_constructor_input_chat_photo_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputChatUploadedPhoto", cur_token_len)) {
- out_int (0x94254732);
- local_next_token ();
- if (store_constructor_input_chat_uploaded_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputChatPhoto", cur_token_len)) {
- out_int (0xb2e1bf08);
- local_next_token ();
- if (store_constructor_input_chat_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_chat_photo (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "inputChatPhotoEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_chat_photo_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputChatUploadedPhoto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_chat_uploaded_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputChatPhoto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_chat_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_contact (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputPhoneContact", cur_token_len)) {
- out_int (0xf392b7f4);
- local_next_token ();
- if (store_constructor_input_phone_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_contact (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputPhoneContact", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_phone_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_document (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputDocumentEmpty", cur_token_len)) {
- out_int (0x72f0eaae);
- local_next_token ();
- if (store_constructor_input_document_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputDocument", cur_token_len)) {
- out_int (0x18798952);
- local_next_token ();
- if (store_constructor_input_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_document (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputDocumentEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_document_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputDocument", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_encrypted_chat (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputEncryptedChat", cur_token_len)) {
- out_int (0xf141b5e1);
- local_next_token ();
- if (store_constructor_input_encrypted_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_encrypted_chat (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputEncryptedChat", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_encrypted_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_encrypted_file (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputEncryptedFileEmpty", cur_token_len)) {
- out_int (0x1837c364);
- local_next_token ();
- if (store_constructor_input_encrypted_file_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputEncryptedFileUploaded", cur_token_len)) {
- out_int (0x64bd0306);
- local_next_token ();
- if (store_constructor_input_encrypted_file_uploaded (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputEncryptedFile", cur_token_len)) {
- out_int (0x5a17b5e5);
- local_next_token ();
- if (store_constructor_input_encrypted_file (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "inputEncryptedFileBigUploaded", cur_token_len)) {
- out_int (0x2dc173c8);
- local_next_token ();
- if (store_constructor_input_encrypted_file_big_uploaded (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_encrypted_file (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputEncryptedFileEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_encrypted_file_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputEncryptedFileUploaded", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_encrypted_file_uploaded (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputEncryptedFile", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_encrypted_file (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "inputEncryptedFileBigUploaded", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_encrypted_file_big_uploaded (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_file (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "inputFile", cur_token_len)) {
- out_int (0xf52ff27f);
- local_next_token ();
- if (store_constructor_input_file (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "inputFileBig", cur_token_len)) {
- out_int (0xfa4f0bb5);
- local_next_token ();
- if (store_constructor_input_file_big (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_file (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "inputFile", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_file (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "inputFileBig", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_file_big (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_file_location (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputFileLocation", cur_token_len)) {
- out_int (0x14637196);
- local_next_token ();
- if (store_constructor_input_file_location (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputVideoFileLocation", cur_token_len)) {
- out_int (0x3d0364ec);
- local_next_token ();
- if (store_constructor_input_video_file_location (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputEncryptedFileLocation", cur_token_len)) {
- out_int (0xf5235d55);
- local_next_token ();
- if (store_constructor_input_encrypted_file_location (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputAudioFileLocation", cur_token_len)) {
- out_int (0x74dc404d);
- local_next_token ();
- if (store_constructor_input_audio_file_location (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "inputDocumentFileLocation", cur_token_len)) {
- out_int (0x4e45abe9);
- local_next_token ();
- if (store_constructor_input_document_file_location (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_file_location (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputFileLocation", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_file_location (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputVideoFileLocation", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_video_file_location (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputEncryptedFileLocation", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_encrypted_file_location (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputAudioFileLocation", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_audio_file_location (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "inputDocumentFileLocation", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_document_file_location (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_geo_chat (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "inputGeoChat", cur_token_len)) {
- out_int (0x74d456fa);
- local_next_token ();
- if (store_constructor_input_geo_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_geo_chat (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "inputGeoChat", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_geo_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_geo_point (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputGeoPointEmpty", cur_token_len)) {
- out_int (0xe4c123d6);
- local_next_token ();
- if (store_constructor_input_geo_point_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputGeoPoint", cur_token_len)) {
- out_int (0xf3b7acc9);
- local_next_token ();
- if (store_constructor_input_geo_point (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_geo_point (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputGeoPointEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_geo_point_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputGeoPoint", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_geo_point (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_media (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaEmpty", cur_token_len)) {
- out_int (0x9664f57f);
- local_next_token ();
- if (store_constructor_input_media_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputMediaUploadedPhoto", cur_token_len)) {
- out_int (0xf7aff1c0);
- local_next_token ();
- if (store_constructor_input_media_uploaded_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaPhoto", cur_token_len)) {
- out_int (0xe9bfb4f3);
- local_next_token ();
- if (store_constructor_input_media_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputMediaGeoPoint", cur_token_len)) {
- out_int (0xf9c44144);
- local_next_token ();
- if (store_constructor_input_media_geo_point (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputMediaContact", cur_token_len)) {
- out_int (0xa6e45987);
- local_next_token ();
- if (store_constructor_input_media_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputMediaUploadedVideo", cur_token_len)) {
- out_int (0xe13fd4bc);
- local_next_token ();
- if (store_constructor_input_media_uploaded_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "inputMediaUploadedThumbVideo", cur_token_len)) {
- out_int (0x96fb97dc);
- local_next_token ();
- if (store_constructor_input_media_uploaded_thumb_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaVideo", cur_token_len)) {
- out_int (0x936a4ebd);
- local_next_token ();
- if (store_constructor_input_media_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputMediaUploadedAudio", cur_token_len)) {
- out_int (0x4e498cab);
- local_next_token ();
- if (store_constructor_input_media_uploaded_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaAudio", cur_token_len)) {
- out_int (0x89938781);
- local_next_token ();
- if (store_constructor_input_media_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputMediaUploadedDocument", cur_token_len)) {
- out_int (0xffe76b78);
- local_next_token ();
- if (store_constructor_input_media_uploaded_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "inputMediaUploadedThumbDocument", cur_token_len)) {
- out_int (0x41481486);
- local_next_token ();
- if (store_constructor_input_media_uploaded_thumb_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputMediaDocument", cur_token_len)) {
- out_int (0xd184e841);
- local_next_token ();
- if (store_constructor_input_media_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaVenue", cur_token_len)) {
- out_int (0x2827a81a);
- local_next_token ();
- if (store_constructor_input_media_venue (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_media (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputMediaUploadedPhoto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_uploaded_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaPhoto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputMediaGeoPoint", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_geo_point (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputMediaContact", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputMediaUploadedVideo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_uploaded_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "inputMediaUploadedThumbVideo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_uploaded_thumb_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaVideo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputMediaUploadedAudio", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_uploaded_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaAudio", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputMediaUploadedDocument", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_uploaded_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "inputMediaUploadedThumbDocument", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_uploaded_thumb_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputMediaDocument", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputMediaVenue", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_media_venue (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_notify_peer (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputNotifyPeer", cur_token_len)) {
- out_int (0xb8bc5b0c);
- local_next_token ();
- if (store_constructor_input_notify_peer (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputNotifyUsers", cur_token_len)) {
- out_int (0x193b4417);
- local_next_token ();
- if (store_constructor_input_notify_users (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputNotifyChats", cur_token_len)) {
- out_int (0x4a95e84e);
- local_next_token ();
- if (store_constructor_input_notify_chats (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputNotifyAll", cur_token_len)) {
- out_int (0xa429b886);
- local_next_token ();
- if (store_constructor_input_notify_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputNotifyGeoChatPeer", cur_token_len)) {
- out_int (0x4d8ddec8);
- local_next_token ();
- if (store_constructor_input_notify_geo_chat_peer (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_notify_peer (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputNotifyPeer", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_notify_peer (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputNotifyUsers", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_notify_users (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputNotifyChats", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_notify_chats (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputNotifyAll", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_notify_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "inputNotifyGeoChatPeer", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_notify_geo_chat_peer (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_peer (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputPeerEmpty", cur_token_len)) {
- out_int (0x7f3b18ea);
- local_next_token ();
- if (store_constructor_input_peer_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputPeerSelf", cur_token_len)) {
- out_int (0x7da07ec9);
- local_next_token ();
- if (store_constructor_input_peer_self (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputPeerContact", cur_token_len)) {
- out_int (0x1023dbe8);
- local_next_token ();
- if (store_constructor_input_peer_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputPeerForeign", cur_token_len)) {
- out_int (0x9b447325);
- local_next_token ();
- if (store_constructor_input_peer_foreign (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputPeerChat", cur_token_len)) {
- out_int (0x179be863);
- local_next_token ();
- if (store_constructor_input_peer_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_peer (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputPeerEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_peer_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputPeerSelf", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_peer_self (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputPeerContact", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_peer_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputPeerForeign", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_peer_foreign (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputPeerChat", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_peer_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_peer_notify_events (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputPeerNotifyEventsEmpty", cur_token_len)) {
- out_int (0xf03064d8);
- local_next_token ();
- if (store_constructor_input_peer_notify_events_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputPeerNotifyEventsAll", cur_token_len)) {
- out_int (0xe86a2c74);
- local_next_token ();
- if (store_constructor_input_peer_notify_events_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_peer_notify_events (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "inputPeerNotifyEventsEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_peer_notify_events_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputPeerNotifyEventsAll", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_peer_notify_events_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_peer_notify_settings (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputPeerNotifySettings", cur_token_len)) {
- out_int (0x46a2ce98);
- local_next_token ();
- if (store_constructor_input_peer_notify_settings (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_peer_notify_settings (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "inputPeerNotifySettings", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_peer_notify_settings (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_photo (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputPhotoEmpty", cur_token_len)) {
- out_int (0x1cd7bf0d);
- local_next_token ();
- if (store_constructor_input_photo_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "inputPhoto", cur_token_len)) {
- out_int (0xfb95c6c4);
- local_next_token ();
- if (store_constructor_input_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_photo (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputPhotoEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_photo_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "inputPhoto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_photo_crop (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputPhotoCropAuto", cur_token_len)) {
- out_int (0xade6b004);
- local_next_token ();
- if (store_constructor_input_photo_crop_auto (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputPhotoCrop", cur_token_len)) {
- out_int (0xd9915325);
- local_next_token ();
- if (store_constructor_input_photo_crop (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_photo_crop (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "inputPhotoCropAuto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_photo_crop_auto (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputPhotoCrop", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_photo_crop (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_privacy_key (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 30 && !memcmp (cur_token, "inputPrivacyKeyStatusTimestamp", cur_token_len)) {
- out_int (0x4f96cb18);
- local_next_token ();
- if (store_constructor_input_privacy_key_status_timestamp (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_privacy_key (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 30 && !memcmp (cur_token, "inputPrivacyKeyStatusTimestamp", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_privacy_key_status_timestamp (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_privacy_rule (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 30 && !memcmp (cur_token, "inputPrivacyValueAllowContacts", cur_token_len)) {
- out_int (0x0d09e07b);
- local_next_token ();
- if (store_constructor_input_privacy_value_allow_contacts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "inputPrivacyValueAllowAll", cur_token_len)) {
- out_int (0x184b35ce);
- local_next_token ();
- if (store_constructor_input_privacy_value_allow_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "inputPrivacyValueAllowUsers", cur_token_len)) {
- out_int (0x131cc67f);
- local_next_token ();
- if (store_constructor_input_privacy_value_allow_users (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 33 && !memcmp (cur_token, "inputPrivacyValueDisallowContacts", cur_token_len)) {
- out_int (0x0ba52007);
- local_next_token ();
- if (store_constructor_input_privacy_value_disallow_contacts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "inputPrivacyValueDisallowAll", cur_token_len)) {
- out_int (0xd66b66c9);
- local_next_token ();
- if (store_constructor_input_privacy_value_disallow_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "inputPrivacyValueDisallowUsers", cur_token_len)) {
- out_int (0x90110467);
- local_next_token ();
- if (store_constructor_input_privacy_value_disallow_users (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_privacy_rule (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 30 && !memcmp (cur_token, "inputPrivacyValueAllowContacts", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_privacy_value_allow_contacts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "inputPrivacyValueAllowAll", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_privacy_value_allow_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "inputPrivacyValueAllowUsers", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_privacy_value_allow_users (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 33 && !memcmp (cur_token, "inputPrivacyValueDisallowContacts", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_privacy_value_disallow_contacts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "inputPrivacyValueDisallowAll", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_privacy_value_disallow_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "inputPrivacyValueDisallowUsers", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_privacy_value_disallow_users (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_sticker_set (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "inputStickerSetEmpty", cur_token_len)) {
- out_int (0xffb62b95);
- local_next_token ();
- if (store_constructor_input_sticker_set_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputStickerSetID", cur_token_len)) {
- out_int (0x9de7a269);
- local_next_token ();
- if (store_constructor_input_sticker_set_i_d (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputStickerSetShortName", cur_token_len)) {
- out_int (0x861cc8a0);
- local_next_token ();
- if (store_constructor_input_sticker_set_short_name (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_sticker_set (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "inputStickerSetEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_sticker_set_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "inputStickerSetID", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_sticker_set_i_d (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputStickerSetShortName", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_sticker_set_short_name (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_user (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputUserEmpty", cur_token_len)) {
- out_int (0xb98886cf);
- local_next_token ();
- if (store_constructor_input_user_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputUserSelf", cur_token_len)) {
- out_int (0xf7c1b13f);
- local_next_token ();
- if (store_constructor_input_user_self (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputUserContact", cur_token_len)) {
- out_int (0x86e94f65);
- local_next_token ();
- if (store_constructor_input_user_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputUserForeign", cur_token_len)) {
- out_int (0x655e74ff);
- local_next_token ();
- if (store_constructor_input_user_foreign (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_user (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "inputUserEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_user_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "inputUserSelf", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_user_self (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputUserContact", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_user_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "inputUserForeign", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_user_foreign (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_input_video (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputVideoEmpty", cur_token_len)) {
- out_int (0x5508ec75);
- local_next_token ();
- if (store_constructor_input_video_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "inputVideo", cur_token_len)) {
- out_int (0xee579652);
- local_next_token ();
- if (store_constructor_input_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_input_video (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "inputVideoEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_video_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 10 && !memcmp (cur_token, "inputVideo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_int (struct paramed_type *T) {
- out_int (0xa8509bda);
- if (store_constructor_int (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_int (struct paramed_type *T) {
- if (store_constructor_int (T) < 0) { return -1; }
- return 0;
-}
-int store_type_int128 (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "int128", cur_token_len)) {
- out_int (0x7d36c439);
- local_next_token ();
- if (store_constructor_int128 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_int128 (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "int128", cur_token_len)) {
- local_next_token ();
- if (store_constructor_int128 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_int256 (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "int256", cur_token_len)) {
- out_int (0xf2c798b3);
- local_next_token ();
- if (store_constructor_int256 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_int256 (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "int256", cur_token_len)) {
- local_next_token ();
- if (store_constructor_int256 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_keyboard_button (struct paramed_type *T) {
- out_int (0xa2fa4880);
- if (store_constructor_keyboard_button (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_keyboard_button (struct paramed_type *T) {
- if (store_constructor_keyboard_button (T) < 0) { return -1; }
- return 0;
-}
-int store_type_keyboard_button_row (struct paramed_type *T) {
- out_int (0x77608b83);
- if (store_constructor_keyboard_button_row (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_keyboard_button_row (struct paramed_type *T) {
- if (store_constructor_keyboard_button_row (T) < 0) { return -1; }
- return 0;
-}
-int store_type_long (struct paramed_type *T) {
- out_int (0x22076cba);
- if (store_constructor_long (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_long (struct paramed_type *T) {
- if (store_constructor_long (T) < 0) { return -1; }
- return 0;
-}
-int store_type_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "messageEmpty", cur_token_len)) {
- out_int (0x83e5de54);
- local_next_token ();
- if (store_constructor_message_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- out_int (0xc3060325);
- local_next_token ();
- if (store_constructor_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "messageService", cur_token_len)) {
- out_int (0x1d86f70e);
- local_next_token ();
- if (store_constructor_message_service (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "messageEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "messageService", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_service (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_message_action (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "messageActionEmpty", cur_token_len)) {
- out_int (0xb6aef7b0);
- local_next_token ();
- if (store_constructor_message_action_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messageActionChatCreate", cur_token_len)) {
- out_int (0xa6638b9a);
- local_next_token ();
- if (store_constructor_message_action_chat_create (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messageActionChatEditTitle", cur_token_len)) {
- out_int (0xb5a1ce5a);
- local_next_token ();
- if (store_constructor_message_action_chat_edit_title (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messageActionChatEditPhoto", cur_token_len)) {
- out_int (0x7fcb13a8);
- local_next_token ();
- if (store_constructor_message_action_chat_edit_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "messageActionChatDeletePhoto", cur_token_len)) {
- out_int (0x95e3fbef);
- local_next_token ();
- if (store_constructor_message_action_chat_delete_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "messageActionChatAddUser", cur_token_len)) {
- out_int (0x5e3cfc4b);
- local_next_token ();
- if (store_constructor_message_action_chat_add_user (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "messageActionChatDeleteUser", cur_token_len)) {
- out_int (0xb2ae9b0c);
- local_next_token ();
- if (store_constructor_message_action_chat_delete_user (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messageActionGeoChatCreate", cur_token_len)) {
- out_int (0x6f038ebc);
- local_next_token ();
- if (store_constructor_message_action_geo_chat_create (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "messageActionGeoChatCheckin", cur_token_len)) {
- out_int (0x0c7d53de);
- local_next_token ();
- if (store_constructor_message_action_geo_chat_checkin (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "messageActionChatJoinedByLink", cur_token_len)) {
- out_int (0xf89cf5e8);
- local_next_token ();
- if (store_constructor_message_action_chat_joined_by_link (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_message_action (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "messageActionEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_action_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messageActionChatCreate", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_action_chat_create (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messageActionChatEditTitle", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_action_chat_edit_title (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messageActionChatEditPhoto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_action_chat_edit_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "messageActionChatDeletePhoto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_action_chat_delete_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "messageActionChatAddUser", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_action_chat_add_user (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "messageActionChatDeleteUser", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_action_chat_delete_user (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messageActionGeoChatCreate", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_action_geo_chat_create (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "messageActionGeoChatCheckin", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_action_geo_chat_checkin (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "messageActionChatJoinedByLink", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_action_chat_joined_by_link (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_message_media (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaEmpty", cur_token_len)) {
- out_int (0x3ded6320);
- local_next_token ();
- if (store_constructor_message_media_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaPhoto", cur_token_len)) {
- out_int (0x3d8ce53d);
- local_next_token ();
- if (store_constructor_message_media_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaVideo", cur_token_len)) {
- out_int (0x5bcf1675);
- local_next_token ();
- if (store_constructor_message_media_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "messageMediaGeo", cur_token_len)) {
- out_int (0x56e0d474);
- local_next_token ();
- if (store_constructor_message_media_geo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messageMediaContact", cur_token_len)) {
- out_int (0x5e7d2f39);
- local_next_token ();
- if (store_constructor_message_media_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messageMediaUnsupported", cur_token_len)) {
- out_int (0x9f84f49e);
- local_next_token ();
- if (store_constructor_message_media_unsupported (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messageMediaDocument", cur_token_len)) {
- out_int (0x2fda2204);
- local_next_token ();
- if (store_constructor_message_media_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaAudio", cur_token_len)) {
- out_int (0xc6b68300);
- local_next_token ();
- if (store_constructor_message_media_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messageMediaWebPage", cur_token_len)) {
- out_int (0xa32dd600);
- local_next_token ();
- if (store_constructor_message_media_web_page (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaVenue", cur_token_len)) {
- out_int (0x7912b71f);
- local_next_token ();
- if (store_constructor_message_media_venue (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messageMediaPhotoL27", cur_token_len)) {
- out_int (0xc8c45a2a);
- local_next_token ();
- if (store_constructor_message_media_photo_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messageMediaVideoL27", cur_token_len)) {
- out_int (0xa2d24290);
- local_next_token ();
- if (store_constructor_message_media_video_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_message_media (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_media_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaPhoto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_media_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaVideo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_media_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "messageMediaGeo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_media_geo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messageMediaContact", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_media_contact (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messageMediaUnsupported", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_media_unsupported (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messageMediaDocument", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_media_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaAudio", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_media_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messageMediaWebPage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_media_web_page (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messageMediaVenue", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_media_venue (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messageMediaPhotoL27", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_media_photo_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messageMediaVideoL27", cur_token_len)) {
- local_next_token ();
- if (store_constructor_message_media_video_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_filter (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputMessagesFilterEmpty", cur_token_len)) {
- out_int (0x57e2f66c);
- local_next_token ();
- if (store_constructor_input_messages_filter_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "inputMessagesFilterPhotos", cur_token_len)) {
- out_int (0x9609a51c);
- local_next_token ();
- if (store_constructor_input_messages_filter_photos (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputMessagesFilterVideo", cur_token_len)) {
- out_int (0x9fc00e65);
- local_next_token ();
- if (store_constructor_input_messages_filter_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "inputMessagesFilterPhotoVideo", cur_token_len)) {
- out_int (0x56e9f0e4);
- local_next_token ();
- if (store_constructor_input_messages_filter_photo_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 38 && !memcmp (cur_token, "inputMessagesFilterPhotoVideoDocuments", cur_token_len)) {
- out_int (0xd95e73bb);
- local_next_token ();
- if (store_constructor_input_messages_filter_photo_video_documents (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "inputMessagesFilterDocument", cur_token_len)) {
- out_int (0x9eddf188);
- local_next_token ();
- if (store_constructor_input_messages_filter_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputMessagesFilterAudio", cur_token_len)) {
- out_int (0xcfc87522);
- local_next_token ();
- if (store_constructor_input_messages_filter_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_filter (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputMessagesFilterEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_messages_filter_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "inputMessagesFilterPhotos", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_messages_filter_photos (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputMessagesFilterVideo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_messages_filter_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "inputMessagesFilterPhotoVideo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_messages_filter_photo_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 38 && !memcmp (cur_token, "inputMessagesFilterPhotoVideoDocuments", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_messages_filter_photo_video_documents (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "inputMessagesFilterDocument", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_messages_filter_document (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "inputMessagesFilterAudio", cur_token_len)) {
- local_next_token ();
- if (store_constructor_input_messages_filter_audio (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_nearest_dc (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "nearestDc", cur_token_len)) {
- out_int (0x8e1a1775);
- local_next_token ();
- if (store_constructor_nearest_dc (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_nearest_dc (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "nearestDc", cur_token_len)) {
- local_next_token ();
- if (store_constructor_nearest_dc (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_notify_peer (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "notifyPeer", cur_token_len)) {
- out_int (0x9fd40bd8);
- local_next_token ();
- if (store_constructor_notify_peer (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "notifyUsers", cur_token_len)) {
- out_int (0xb4c83b4c);
- local_next_token ();
- if (store_constructor_notify_users (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "notifyChats", cur_token_len)) {
- out_int (0xc007cec3);
- local_next_token ();
- if (store_constructor_notify_chats (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 9 && !memcmp (cur_token, "notifyAll", cur_token_len)) {
- out_int (0x74d07c60);
- local_next_token ();
- if (store_constructor_notify_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_notify_peer (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "notifyPeer", cur_token_len)) {
- local_next_token ();
- if (store_constructor_notify_peer (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "notifyUsers", cur_token_len)) {
- local_next_token ();
- if (store_constructor_notify_users (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "notifyChats", cur_token_len)) {
- local_next_token ();
- if (store_constructor_notify_chats (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 9 && !memcmp (cur_token, "notifyAll", cur_token_len)) {
- local_next_token ();
- if (store_constructor_notify_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_null (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 4 && !memcmp (cur_token, "null", cur_token_len)) {
- out_int (0x56730bcc);
- local_next_token ();
- if (store_constructor_null (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_null (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 4 && !memcmp (cur_token, "null", cur_token_len)) {
- local_next_token ();
- if (store_constructor_null (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_p_q_inner_data (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "p_q_inner_data", cur_token_len)) {
- out_int (0x83c95aec);
- local_next_token ();
- if (store_constructor_p_q_inner_data (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "p_q_inner_data_temp", cur_token_len)) {
- out_int (0x3c6a84d4);
- local_next_token ();
- if (store_constructor_p_q_inner_data_temp (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_p_q_inner_data (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "p_q_inner_data", cur_token_len)) {
- local_next_token ();
- if (store_constructor_p_q_inner_data (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "p_q_inner_data_temp", cur_token_len)) {
- local_next_token ();
- if (store_constructor_p_q_inner_data_temp (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_peer (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 8 && !memcmp (cur_token, "peerUser", cur_token_len)) {
- out_int (0x9db1bc6d);
- local_next_token ();
- if (store_constructor_peer_user (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "peerChat", cur_token_len)) {
- out_int (0xbad0e5bb);
- local_next_token ();
- if (store_constructor_peer_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_peer (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 8 && !memcmp (cur_token, "peerUser", cur_token_len)) {
- local_next_token ();
- if (store_constructor_peer_user (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "peerChat", cur_token_len)) {
- local_next_token ();
- if (store_constructor_peer_chat (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_peer_notify_events (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "peerNotifyEventsEmpty", cur_token_len)) {
- out_int (0xadd53cb3);
- local_next_token ();
- if (store_constructor_peer_notify_events_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "peerNotifyEventsAll", cur_token_len)) {
- out_int (0x6d1ded88);
- local_next_token ();
- if (store_constructor_peer_notify_events_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_peer_notify_events (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "peerNotifyEventsEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_peer_notify_events_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "peerNotifyEventsAll", cur_token_len)) {
- local_next_token ();
- if (store_constructor_peer_notify_events_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_peer_notify_settings (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "peerNotifySettingsEmpty", cur_token_len)) {
- out_int (0x70a68512);
- local_next_token ();
- if (store_constructor_peer_notify_settings_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "peerNotifySettings", cur_token_len)) {
- out_int (0x8d5e11ee);
- local_next_token ();
- if (store_constructor_peer_notify_settings (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_peer_notify_settings (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "peerNotifySettingsEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_peer_notify_settings_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "peerNotifySettings", cur_token_len)) {
- local_next_token ();
- if (store_constructor_peer_notify_settings (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_photo (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "photoEmpty", cur_token_len)) {
- out_int (0x2331b22d);
- local_next_token ();
- if (store_constructor_photo_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- out_int (0xc3838076);
- local_next_token ();
- if (store_constructor_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "photoL27", cur_token_len)) {
- out_int (0x22b56751);
- local_next_token ();
- if (store_constructor_photo_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_photo (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "photoEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_photo_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 5 && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "photoL27", cur_token_len)) {
- local_next_token ();
- if (store_constructor_photo_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_photo_size (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "photoSizeEmpty", cur_token_len)) {
- out_int (0x0e17e23c);
- local_next_token ();
- if (store_constructor_photo_size_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 9 && !memcmp (cur_token, "photoSize", cur_token_len)) {
- out_int (0x77bfb61b);
- local_next_token ();
- if (store_constructor_photo_size (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "photoCachedSize", cur_token_len)) {
- out_int (0xe9a734fa);
- local_next_token ();
- if (store_constructor_photo_cached_size (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_photo_size (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "photoSizeEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_photo_size_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 9 && !memcmp (cur_token, "photoSize", cur_token_len)) {
- local_next_token ();
- if (store_constructor_photo_size (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "photoCachedSize", cur_token_len)) {
- local_next_token ();
- if (store_constructor_photo_cached_size (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_privacy_key (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "privacyKeyStatusTimestamp", cur_token_len)) {
- out_int (0xbc2eab30);
- local_next_token ();
- if (store_constructor_privacy_key_status_timestamp (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_privacy_key (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "privacyKeyStatusTimestamp", cur_token_len)) {
- local_next_token ();
- if (store_constructor_privacy_key_status_timestamp (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_privacy_rule (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "privacyValueAllowContacts", cur_token_len)) {
- out_int (0xfffe1bac);
- local_next_token ();
- if (store_constructor_privacy_value_allow_contacts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "privacyValueAllowAll", cur_token_len)) {
- out_int (0x65427b82);
- local_next_token ();
- if (store_constructor_privacy_value_allow_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "privacyValueAllowUsers", cur_token_len)) {
- out_int (0x4d5bbe0c);
- local_next_token ();
- if (store_constructor_privacy_value_allow_users (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "privacyValueDisallowContacts", cur_token_len)) {
- out_int (0xf888fa1a);
- local_next_token ();
- if (store_constructor_privacy_value_disallow_contacts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "privacyValueDisallowAll", cur_token_len)) {
- out_int (0x8b73e763);
- local_next_token ();
- if (store_constructor_privacy_value_disallow_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "privacyValueDisallowUsers", cur_token_len)) {
- out_int (0x0c7f49b7);
- local_next_token ();
- if (store_constructor_privacy_value_disallow_users (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_privacy_rule (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "privacyValueAllowContacts", cur_token_len)) {
- local_next_token ();
- if (store_constructor_privacy_value_allow_contacts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "privacyValueAllowAll", cur_token_len)) {
- local_next_token ();
- if (store_constructor_privacy_value_allow_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "privacyValueAllowUsers", cur_token_len)) {
- local_next_token ();
- if (store_constructor_privacy_value_allow_users (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "privacyValueDisallowContacts", cur_token_len)) {
- local_next_token ();
- if (store_constructor_privacy_value_disallow_contacts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "privacyValueDisallowAll", cur_token_len)) {
- local_next_token ();
- if (store_constructor_privacy_value_disallow_all (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "privacyValueDisallowUsers", cur_token_len)) {
- local_next_token ();
- if (store_constructor_privacy_value_disallow_users (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_received_notify_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "receivedNotifyMessage", cur_token_len)) {
- out_int (0xa384b779);
- local_next_token ();
- if (store_constructor_received_notify_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_received_notify_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "receivedNotifyMessage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_received_notify_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_reply_markup (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "replyKeyboardHide", cur_token_len)) {
- out_int (0xa03e5b85);
- local_next_token ();
- if (store_constructor_reply_keyboard_hide (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "replyKeyboardForceReply", cur_token_len)) {
- out_int (0xf4108aa0);
- local_next_token ();
- if (store_constructor_reply_keyboard_force_reply (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "replyKeyboardMarkup", cur_token_len)) {
- out_int (0x3502758c);
- local_next_token ();
- if (store_constructor_reply_keyboard_markup (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_reply_markup (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "replyKeyboardHide", cur_token_len)) {
- local_next_token ();
- if (store_constructor_reply_keyboard_hide (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "replyKeyboardForceReply", cur_token_len)) {
- local_next_token ();
- if (store_constructor_reply_keyboard_force_reply (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "replyKeyboardMarkup", cur_token_len)) {
- local_next_token ();
- if (store_constructor_reply_keyboard_markup (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_res_p_q (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 5 && !memcmp (cur_token, "resPQ", cur_token_len)) {
- out_int (0x05162463);
- local_next_token ();
- if (store_constructor_res_p_q (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_res_p_q (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 5 && !memcmp (cur_token, "resPQ", cur_token_len)) {
- local_next_token ();
- if (store_constructor_res_p_q (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_send_message_action (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "sendMessageTypingAction", cur_token_len)) {
- out_int (0x16bf744e);
- local_next_token ();
- if (store_constructor_send_message_typing_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "sendMessageCancelAction", cur_token_len)) {
- out_int (0xfd5ec8f5);
- local_next_token ();
- if (store_constructor_send_message_cancel_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageRecordVideoAction", cur_token_len)) {
- out_int (0xa187d66f);
- local_next_token ();
- if (store_constructor_send_message_record_video_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "sendMessageUploadVideoActionL27", cur_token_len)) {
- out_int (0x92042ff7);
- local_next_token ();
- if (store_constructor_send_message_upload_video_action_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageUploadVideoAction", cur_token_len)) {
- out_int (0xe9763aec);
- local_next_token ();
- if (store_constructor_send_message_upload_video_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageRecordAudioAction", cur_token_len)) {
- out_int (0xd52f73f7);
- local_next_token ();
- if (store_constructor_send_message_record_audio_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "sendMessageUploadAudioActionL27", cur_token_len)) {
- out_int (0xe6ac8a6f);
- local_next_token ();
- if (store_constructor_send_message_upload_audio_action_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageUploadAudioAction", cur_token_len)) {
- out_int (0xf351d7ab);
- local_next_token ();
- if (store_constructor_send_message_upload_audio_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageUploadPhotoAction", cur_token_len)) {
- out_int (0xd1d34a26);
- local_next_token ();
- if (store_constructor_send_message_upload_photo_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 34 && !memcmp (cur_token, "sendMessageUploadDocumentActionL27", cur_token_len)) {
- out_int (0x8faee98e);
- local_next_token ();
- if (store_constructor_send_message_upload_document_action_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "sendMessageUploadDocumentAction", cur_token_len)) {
- out_int (0xaa0cd9e4);
- local_next_token ();
- if (store_constructor_send_message_upload_document_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageGeoLocationAction", cur_token_len)) {
- out_int (0x176f8ba1);
- local_next_token ();
- if (store_constructor_send_message_geo_location_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "sendMessageChooseContactAction", cur_token_len)) {
- out_int (0x628cbc6f);
- local_next_token ();
- if (store_constructor_send_message_choose_contact_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_send_message_action (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "sendMessageTypingAction", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_typing_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "sendMessageCancelAction", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_cancel_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageRecordVideoAction", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_record_video_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "sendMessageUploadVideoActionL27", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_upload_video_action_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageUploadVideoAction", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_upload_video_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageRecordAudioAction", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_record_audio_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "sendMessageUploadAudioActionL27", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_upload_audio_action_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageUploadAudioAction", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_upload_audio_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageUploadPhotoAction", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_upload_photo_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 34 && !memcmp (cur_token, "sendMessageUploadDocumentActionL27", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_upload_document_action_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 31 && !memcmp (cur_token, "sendMessageUploadDocumentAction", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_upload_document_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "sendMessageGeoLocationAction", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_geo_location_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "sendMessageChooseContactAction", cur_token_len)) {
- local_next_token ();
- if (store_constructor_send_message_choose_contact_action (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_server_d_h_params (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "server_DH_params_fail", cur_token_len)) {
- out_int (0x79cb045d);
- local_next_token ();
- if (store_constructor_server_d_h_params_fail (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "server_DH_params_ok", cur_token_len)) {
- out_int (0xd0e8075c);
- local_next_token ();
- if (store_constructor_server_d_h_params_ok (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_server_d_h_params (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "server_DH_params_fail", cur_token_len)) {
- local_next_token ();
- if (store_constructor_server_d_h_params_fail (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "server_DH_params_ok", cur_token_len)) {
- local_next_token ();
- if (store_constructor_server_d_h_params_ok (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_server_d_h_inner_data (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "server_DH_inner_data", cur_token_len)) {
- out_int (0xb5890dba);
- local_next_token ();
- if (store_constructor_server_d_h_inner_data (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_server_d_h_inner_data (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "server_DH_inner_data", cur_token_len)) {
- local_next_token ();
- if (store_constructor_server_d_h_inner_data (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_set_client_d_h_params_answer (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "dh_gen_ok", cur_token_len)) {
- out_int (0x3bcbf734);
- local_next_token ();
- if (store_constructor_dh_gen_ok (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "dh_gen_retry", cur_token_len)) {
- out_int (0x46dc1fb9);
- local_next_token ();
- if (store_constructor_dh_gen_retry (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "dh_gen_fail", cur_token_len)) {
- out_int (0xa69dae02);
- local_next_token ();
- if (store_constructor_dh_gen_fail (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_set_client_d_h_params_answer (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "dh_gen_ok", cur_token_len)) {
- local_next_token ();
- if (store_constructor_dh_gen_ok (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "dh_gen_retry", cur_token_len)) {
- local_next_token ();
- if (store_constructor_dh_gen_retry (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "dh_gen_fail", cur_token_len)) {
- local_next_token ();
- if (store_constructor_dh_gen_fail (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_sticker_pack (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "stickerPack", cur_token_len)) {
- out_int (0x12b299d4);
- local_next_token ();
- if (store_constructor_sticker_pack (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_sticker_pack (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "stickerPack", cur_token_len)) {
- local_next_token ();
- if (store_constructor_sticker_pack (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_sticker_set (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "stickerSet", cur_token_len)) {
- out_int (0xa7a43b17);
- local_next_token ();
- if (store_constructor_sticker_set (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_sticker_set (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "stickerSet", cur_token_len)) {
- local_next_token ();
- if (store_constructor_sticker_set (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_string (struct paramed_type *T) {
- out_int (0xb5286e24);
- if (store_constructor_string (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_string (struct paramed_type *T) {
- if (store_constructor_string (T) < 0) { return -1; }
- return 0;
-}
-int store_type_update (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateNewMessage", cur_token_len)) {
- out_int (0x1f2b0afd);
- local_next_token ();
- if (store_constructor_update_new_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateMessageID", cur_token_len)) {
- out_int (0x4e90bfd6);
- local_next_token ();
- if (store_constructor_update_message_i_d (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "updateDeleteMessages", cur_token_len)) {
- out_int (0xa20db0e5);
- local_next_token ();
- if (store_constructor_update_delete_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateUserTyping", cur_token_len)) {
- out_int (0x5c486927);
- local_next_token ();
- if (store_constructor_update_user_typing (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "updateChatUserTyping", cur_token_len)) {
- out_int (0x9a65ea1f);
- local_next_token ();
- if (store_constructor_update_chat_user_typing (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateChatParticipants", cur_token_len)) {
- out_int (0x07761198);
- local_next_token ();
- if (store_constructor_update_chat_participants (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateUserStatus", cur_token_len)) {
- out_int (0x1bfbd823);
- local_next_token ();
- if (store_constructor_update_user_status (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "updateUserName", cur_token_len)) {
- out_int (0xa7332b73);
- local_next_token ();
- if (store_constructor_update_user_name (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateUserPhoto", cur_token_len)) {
- out_int (0x95313b0c);
- local_next_token ();
- if (store_constructor_update_user_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updateContactRegistered", cur_token_len)) {
- out_int (0x2575bbb9);
- local_next_token ();
- if (store_constructor_update_contact_registered (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "updateContactLink", cur_token_len)) {
- out_int (0x9d2e67c5);
- local_next_token ();
- if (store_constructor_update_contact_link (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateNewAuthorization", cur_token_len)) {
- out_int (0x8f06529a);
- local_next_token ();
- if (store_constructor_update_new_authorization (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updateNewGeoChatMessage", cur_token_len)) {
- out_int (0x5a68e3f7);
- local_next_token ();
- if (store_constructor_update_new_geo_chat_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "updateNewEncryptedMessage", cur_token_len)) {
- out_int (0x12bcbd9a);
- local_next_token ();
- if (store_constructor_update_new_encrypted_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "updateEncryptedChatTyping", cur_token_len)) {
- out_int (0x1710f156);
- local_next_token ();
- if (store_constructor_update_encrypted_chat_typing (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateEncryption", cur_token_len)) {
- out_int (0xb4a2e88d);
- local_next_token ();
- if (store_constructor_update_encryption (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "updateEncryptedMessagesRead", cur_token_len)) {
- out_int (0x38fe25b7);
- local_next_token ();
- if (store_constructor_update_encrypted_messages_read (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "updateChatParticipantAdd", cur_token_len)) {
- out_int (0x3a0eeb22);
- local_next_token ();
- if (store_constructor_update_chat_participant_add (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "updateChatParticipantDelete", cur_token_len)) {
- out_int (0x6e5f8c22);
- local_next_token ();
- if (store_constructor_update_chat_participant_delete (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateDcOptions", cur_token_len)) {
- out_int (0x8e5e9873);
- local_next_token ();
- if (store_constructor_update_dc_options (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "updateUserBlocked", cur_token_len)) {
- out_int (0x80ece81a);
- local_next_token ();
- if (store_constructor_update_user_blocked (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "updateNotifySettings", cur_token_len)) {
- out_int (0xbec268ef);
- local_next_token ();
- if (store_constructor_update_notify_settings (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "updateServiceNotification", cur_token_len)) {
- out_int (0x382dd3e4);
- local_next_token ();
- if (store_constructor_update_service_notification (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "updatePrivacy", cur_token_len)) {
- out_int (0xee3b272a);
- local_next_token ();
- if (store_constructor_update_privacy (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateUserPhone", cur_token_len)) {
- out_int (0x12b9417b);
- local_next_token ();
- if (store_constructor_update_user_phone (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateReadHistoryInbox", cur_token_len)) {
- out_int (0x9961fd5c);
- local_next_token ();
- if (store_constructor_update_read_history_inbox (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updateReadHistoryOutbox", cur_token_len)) {
- out_int (0x2f2f21bf);
- local_next_token ();
- if (store_constructor_update_read_history_outbox (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "updateWebPage", cur_token_len)) {
- out_int (0x2cc36971);
- local_next_token ();
- if (store_constructor_update_web_page (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "updateReadMessagesContents", cur_token_len)) {
- out_int (0x68c13933);
- local_next_token ();
- if (store_constructor_update_read_messages_contents (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateMsgUpdate", cur_token_len)) {
- out_int (0x03114739);
- local_next_token ();
- if (store_constructor_update_msg_update (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_update (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateNewMessage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_new_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateMessageID", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_message_i_d (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "updateDeleteMessages", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_delete_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateUserTyping", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_user_typing (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "updateChatUserTyping", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_chat_user_typing (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateChatParticipants", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_chat_participants (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateUserStatus", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_user_status (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "updateUserName", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_user_name (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateUserPhoto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_user_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updateContactRegistered", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_contact_registered (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "updateContactLink", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_contact_link (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateNewAuthorization", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_new_authorization (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updateNewGeoChatMessage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_new_geo_chat_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "updateNewEncryptedMessage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_new_encrypted_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "updateEncryptedChatTyping", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_encrypted_chat_typing (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updateEncryption", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_encryption (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "updateEncryptedMessagesRead", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_encrypted_messages_read (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "updateChatParticipantAdd", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_chat_participant_add (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "updateChatParticipantDelete", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_chat_participant_delete (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateDcOptions", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_dc_options (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "updateUserBlocked", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_user_blocked (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "updateNotifySettings", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_notify_settings (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "updateServiceNotification", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_service_notification (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "updatePrivacy", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_privacy (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateUserPhone", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_user_phone (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateReadHistoryInbox", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_read_history_inbox (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updateReadHistoryOutbox", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_read_history_outbox (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "updateWebPage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_web_page (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "updateReadMessagesContents", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_read_messages_contents (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updateMsgUpdate", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_msg_update (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_updates (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "updatesTooLong", cur_token_len)) {
- out_int (0xe317af7e);
- local_next_token ();
- if (store_constructor_updates_too_long (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "updateShortMessage", cur_token_len)) {
- out_int (0xed5c2127);
- local_next_token ();
- if (store_constructor_update_short_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateShortChatMessage", cur_token_len)) {
- out_int (0x52238b3c);
- local_next_token ();
- if (store_constructor_update_short_chat_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "updateShort", cur_token_len)) {
- out_int (0x78d4dec1);
- local_next_token ();
- if (store_constructor_update_short (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updatesCombined", cur_token_len)) {
- out_int (0x725b04c3);
- local_next_token ();
- if (store_constructor_updates_combined (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "updates", cur_token_len)) {
- out_int (0x74ae4240);
- local_next_token ();
- if (store_constructor_updates (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_updates (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "updatesTooLong", cur_token_len)) {
- local_next_token ();
- if (store_constructor_updates_too_long (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "updateShortMessage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_short_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "updateShortChatMessage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_short_chat_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "updateShort", cur_token_len)) {
- local_next_token ();
- if (store_constructor_update_short (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "updatesCombined", cur_token_len)) {
- local_next_token ();
- if (store_constructor_updates_combined (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "updates", cur_token_len)) {
- local_next_token ();
- if (store_constructor_updates (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_user (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "userEmpty", cur_token_len)) {
- out_int (0x200250ba);
- local_next_token ();
- if (store_constructor_user_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 4 && !memcmp (cur_token, "user", cur_token_len)) {
- out_int (0x22e49072);
- local_next_token ();
- if (store_constructor_user (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_user (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "userEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_user_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 4 && !memcmp (cur_token, "user", cur_token_len)) {
- local_next_token ();
- if (store_constructor_user (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_user_full (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 8 && !memcmp (cur_token, "userFull", cur_token_len)) {
- out_int (0x5a89ac5b);
- local_next_token ();
- if (store_constructor_user_full (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_user_full (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 8 && !memcmp (cur_token, "userFull", cur_token_len)) {
- local_next_token ();
- if (store_constructor_user_full (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_user_profile_photo (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "userProfilePhotoEmpty", cur_token_len)) {
- out_int (0x4f11bae1);
- local_next_token ();
- if (store_constructor_user_profile_photo_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "userProfilePhoto", cur_token_len)) {
- out_int (0xd559d8c8);
- local_next_token ();
- if (store_constructor_user_profile_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_user_profile_photo (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "userProfilePhotoEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_user_profile_photo_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "userProfilePhoto", cur_token_len)) {
- local_next_token ();
- if (store_constructor_user_profile_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_user_status (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "userStatusEmpty", cur_token_len)) {
- out_int (0x09d05049);
- local_next_token ();
- if (store_constructor_user_status_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "userStatusOnline", cur_token_len)) {
- out_int (0xedb93949);
- local_next_token ();
- if (store_constructor_user_status_online (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "userStatusOffline", cur_token_len)) {
- out_int (0x008c703f);
- local_next_token ();
- if (store_constructor_user_status_offline (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "userStatusRecently", cur_token_len)) {
- out_int (0xe26f42f1);
- local_next_token ();
- if (store_constructor_user_status_recently (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "userStatusLastWeek", cur_token_len)) {
- out_int (0x07bf09fc);
- local_next_token ();
- if (store_constructor_user_status_last_week (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "userStatusLastMonth", cur_token_len)) {
- out_int (0x77ebc742);
- local_next_token ();
- if (store_constructor_user_status_last_month (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_user_status (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 15 && !memcmp (cur_token, "userStatusEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_user_status_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "userStatusOnline", cur_token_len)) {
- local_next_token ();
- if (store_constructor_user_status_online (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "userStatusOffline", cur_token_len)) {
- local_next_token ();
- if (store_constructor_user_status_offline (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "userStatusRecently", cur_token_len)) {
- local_next_token ();
- if (store_constructor_user_status_recently (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "userStatusLastWeek", cur_token_len)) {
- local_next_token ();
- if (store_constructor_user_status_last_week (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "userStatusLastMonth", cur_token_len)) {
- local_next_token ();
- if (store_constructor_user_status_last_month (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_vector (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "vector", cur_token_len)) {
- out_int (0x1cb5c415);
- local_next_token ();
- if (store_constructor_vector (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_vector (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 6 && !memcmp (cur_token, "vector", cur_token_len)) {
- local_next_token ();
- if (store_constructor_vector (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_video (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "videoEmpty", cur_token_len)) {
- out_int (0xc10658a8);
- local_next_token ();
- if (store_constructor_video_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 5 && !memcmp (cur_token, "video", cur_token_len)) {
- out_int (0xee9f4a4d);
- local_next_token ();
- if (store_constructor_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "videoL27", cur_token_len)) {
- out_int (0x388fa391);
- local_next_token ();
- if (store_constructor_video_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_video (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 10 && !memcmp (cur_token, "videoEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_video_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 5 && !memcmp (cur_token, "video", cur_token_len)) {
- local_next_token ();
- if (store_constructor_video (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 8 && !memcmp (cur_token, "videoL27", cur_token_len)) {
- local_next_token ();
- if (store_constructor_video_l27 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_wall_paper (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "wallPaper", cur_token_len)) {
- out_int (0xccb03657);
- local_next_token ();
- if (store_constructor_wall_paper (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "wallPaperSolid", cur_token_len)) {
- out_int (0x63117f24);
- local_next_token ();
- if (store_constructor_wall_paper_solid (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_wall_paper (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 9 && !memcmp (cur_token, "wallPaper", cur_token_len)) {
- local_next_token ();
- if (store_constructor_wall_paper (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "wallPaperSolid", cur_token_len)) {
- local_next_token ();
- if (store_constructor_wall_paper_solid (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_web_page (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "webPageEmpty", cur_token_len)) {
- out_int (0xeb1477e8);
- local_next_token ();
- if (store_constructor_web_page_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "webPagePending", cur_token_len)) {
- out_int (0xc586da1c);
- local_next_token ();
- if (store_constructor_web_page_pending (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "webPage", cur_token_len)) {
- out_int (0xa31ea0b5);
- local_next_token ();
- if (store_constructor_web_page (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_web_page (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "webPageEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_web_page_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "webPagePending", cur_token_len)) {
- local_next_token ();
- if (store_constructor_web_page_pending (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 7 && !memcmp (cur_token, "webPage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_web_page (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_account_authorizations (struct paramed_type *T) {
- out_int (0x1250abde);
- if (store_constructor_account_authorizations (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_account_authorizations (struct paramed_type *T) {
- if (store_constructor_account_authorizations (T) < 0) { return -1; }
- return 0;
-}
-int store_type_account_password (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "account.noPassword", cur_token_len)) {
- out_int (0x96dabc18);
- local_next_token ();
- if (store_constructor_account_no_password (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "account.password", cur_token_len)) {
- out_int (0x7c18141c);
- local_next_token ();
- if (store_constructor_account_password (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_account_password (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "account.noPassword", cur_token_len)) {
- local_next_token ();
- if (store_constructor_account_no_password (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "account.password", cur_token_len)) {
- local_next_token ();
- if (store_constructor_account_password (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_account_password_input_settings (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 29 && !memcmp (cur_token, "account.passwordInputSettings", cur_token_len)) {
- out_int (0xbcfc532c);
- local_next_token ();
- if (store_constructor_account_password_input_settings (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_account_password_input_settings (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 29 && !memcmp (cur_token, "account.passwordInputSettings", cur_token_len)) {
- local_next_token ();
- if (store_constructor_account_password_input_settings (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_account_password_settings (struct paramed_type *T) {
- out_int (0xb7b72ab3);
- if (store_constructor_account_password_settings (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_account_password_settings (struct paramed_type *T) {
- if (store_constructor_account_password_settings (T) < 0) { return -1; }
- return 0;
-}
-int store_type_account_privacy_rules (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "account.privacyRules", cur_token_len)) {
- out_int (0x554abb6f);
- local_next_token ();
- if (store_constructor_account_privacy_rules (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_account_privacy_rules (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "account.privacyRules", cur_token_len)) {
- local_next_token ();
- if (store_constructor_account_privacy_rules (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_account_sent_change_phone_code (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 27 && !memcmp (cur_token, "account.sentChangePhoneCode", cur_token_len)) {
- out_int (0xa4f58c4c);
- local_next_token ();
- if (store_constructor_account_sent_change_phone_code (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_account_sent_change_phone_code (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 27 && !memcmp (cur_token, "account.sentChangePhoneCode", cur_token_len)) {
- local_next_token ();
- if (store_constructor_account_sent_change_phone_code (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_auth_authorization (struct paramed_type *T) {
- out_int (0xff036af1);
- if (store_constructor_auth_authorization (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_auth_authorization (struct paramed_type *T) {
- if (store_constructor_auth_authorization (T) < 0) { return -1; }
- return 0;
-}
-int store_type_auth_checked_phone (struct paramed_type *T) {
- out_int (0x811ea28e);
- if (store_constructor_auth_checked_phone (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_auth_checked_phone (struct paramed_type *T) {
- if (store_constructor_auth_checked_phone (T) < 0) { return -1; }
- return 0;
-}
-int store_type_auth_exported_authorization (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "auth.exportedAuthorization", cur_token_len)) {
- out_int (0xdf969c2d);
- local_next_token ();
- if (store_constructor_auth_exported_authorization (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_auth_exported_authorization (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 26 && !memcmp (cur_token, "auth.exportedAuthorization", cur_token_len)) {
- local_next_token ();
- if (store_constructor_auth_exported_authorization (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_auth_password_recovery (struct paramed_type *T) {
- out_int (0x137948a5);
- if (store_constructor_auth_password_recovery (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_auth_password_recovery (struct paramed_type *T) {
- if (store_constructor_auth_password_recovery (T) < 0) { return -1; }
- return 0;
-}
-int store_type_auth_sent_code (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "auth.sentCode", cur_token_len)) {
- out_int (0xefed51d9);
- local_next_token ();
- if (store_constructor_auth_sent_code (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "auth.sentAppCode", cur_token_len)) {
- out_int (0xe325edcf);
- local_next_token ();
- if (store_constructor_auth_sent_app_code (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_auth_sent_code (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "auth.sentCode", cur_token_len)) {
- local_next_token ();
- if (store_constructor_auth_sent_code (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "auth.sentAppCode", cur_token_len)) {
- local_next_token ();
- if (store_constructor_auth_sent_app_code (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_binlog_encr_key (struct paramed_type *T) {
- out_int (0x0377168f);
- if (store_constructor_binlog_encr_key (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_binlog_encr_key (struct paramed_type *T) {
- if (store_constructor_binlog_encr_key (T) < 0) { return -1; }
- return 0;
-}
-int store_type_binlog_update (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "binlog.start", cur_token_len)) {
- out_int (0x3b06de69);
- local_next_token ();
- if (store_constructor_binlog_start (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "binlog.dcOption", cur_token_len)) {
- out_int (0xf96feb32);
- local_next_token ();
- if (store_constructor_binlog_dc_option (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "binlog.dcOptionNew", cur_token_len)) {
- out_int (0x7c0d22d8);
- local_next_token ();
- if (store_constructor_binlog_dc_option_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.authKey", cur_token_len)) {
- out_int (0x71e8c156);
- local_next_token ();
- if (store_constructor_binlog_auth_key (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "binlog.defaultDc", cur_token_len)) {
- out_int (0x9e83dbdc);
- local_next_token ();
- if (store_constructor_binlog_default_dc (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "binlog.dcSigned", cur_token_len)) {
- out_int (0x26451bb5);
- local_next_token ();
- if (store_constructor_binlog_dc_signed (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "binlog.ourId", cur_token_len)) {
- out_int (0x68a870e8);
- local_next_token ();
- if (store_constructor_binlog_our_id (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "binlog.setDhParams", cur_token_len)) {
- out_int (0xeaeb7826);
- local_next_token ();
- if (store_constructor_binlog_set_dh_params (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "binlog.setPts", cur_token_len)) {
- out_int (0x2ca8c939);
- local_next_token ();
- if (store_constructor_binlog_set_pts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "binlog.setQts", cur_token_len)) {
- out_int (0xd95738ac);
- local_next_token ();
- if (store_constructor_binlog_set_qts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.setDate", cur_token_len)) {
- out_int (0x1d0f4b52);
- local_next_token ();
- if (store_constructor_binlog_set_date (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "binlog.setSeq", cur_token_len)) {
- out_int (0x6eeb2989);
- local_next_token ();
- if (store_constructor_binlog_set_seq (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "binlog.encrChatDelete", cur_token_len)) {
- out_int (0xee1b38e8);
- local_next_token ();
- if (store_constructor_binlog_encr_chat_delete (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "binlog.encrChatNew", cur_token_len)) {
- out_int (0x84977251);
- local_next_token ();
- if (store_constructor_binlog_encr_chat_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "binlog.encrChatExchangeNew", cur_token_len)) {
- out_int (0x9d49488d);
- local_next_token ();
- if (store_constructor_binlog_encr_chat_exchange_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "binlog.userDelete", cur_token_len)) {
- out_int (0xac55d447);
- local_next_token ();
- if (store_constructor_binlog_user_delete (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.userNew", cur_token_len)) {
- out_int (0x127cf2f9);
- local_next_token ();
- if (store_constructor_binlog_user_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.chatNew", cur_token_len)) {
- out_int (0x0a10aa92);
- local_next_token ();
- if (store_constructor_binlog_chat_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "binlog.chatAddParticipant", cur_token_len)) {
- out_int (0x535475ea);
- local_next_token ();
- if (store_constructor_binlog_chat_add_participant (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "binlog.chatDelParticipant", cur_token_len)) {
- out_int (0x7dd1a1a2);
- local_next_token ();
- if (store_constructor_binlog_chat_del_participant (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "binlog.setMsgId", cur_token_len)) {
- out_int (0x3c873416);
- local_next_token ();
- if (store_constructor_binlog_set_msg_id (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "binlog.messageDelete", cur_token_len)) {
- out_int (0x847e77b1);
- local_next_token ();
- if (store_constructor_binlog_message_delete (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "binlog.messageNew", cur_token_len)) {
- out_int (0x427cfcdb);
- local_next_token ();
- if (store_constructor_binlog_message_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "binlog.messageEncrNew", cur_token_len)) {
- out_int (0x6cf7cabc);
- local_next_token ();
- if (store_constructor_binlog_message_encr_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "binlog.msgUpdate", cur_token_len)) {
- out_int (0x6dd4d85f);
- local_next_token ();
- if (store_constructor_binlog_msg_update (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "binlog.resetAuthorization", cur_token_len)) {
- out_int (0x83327955);
- local_next_token ();
- if (store_constructor_binlog_reset_authorization (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_binlog_update (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "binlog.start", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_start (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "binlog.dcOption", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_dc_option (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "binlog.dcOptionNew", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_dc_option_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.authKey", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_auth_key (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "binlog.defaultDc", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_default_dc (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "binlog.dcSigned", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_dc_signed (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "binlog.ourId", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_our_id (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "binlog.setDhParams", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_set_dh_params (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "binlog.setPts", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_set_pts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "binlog.setQts", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_set_qts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.setDate", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_set_date (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "binlog.setSeq", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_set_seq (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "binlog.encrChatDelete", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_encr_chat_delete (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "binlog.encrChatNew", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_encr_chat_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "binlog.encrChatExchangeNew", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_encr_chat_exchange_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "binlog.userDelete", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_user_delete (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.userNew", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_user_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "binlog.chatNew", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_chat_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "binlog.chatAddParticipant", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_chat_add_participant (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "binlog.chatDelParticipant", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_chat_del_participant (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "binlog.setMsgId", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_set_msg_id (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "binlog.messageDelete", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_message_delete (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "binlog.messageNew", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_message_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "binlog.messageEncrNew", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_message_encr_new (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "binlog.msgUpdate", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_msg_update (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "binlog.resetAuthorization", cur_token_len)) {
- local_next_token ();
- if (store_constructor_binlog_reset_authorization (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_contacts_blocked (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "contacts.blocked", cur_token_len)) {
- out_int (0x1c138d15);
- local_next_token ();
- if (store_constructor_contacts_blocked (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "contacts.blockedSlice", cur_token_len)) {
- out_int (0x900802a1);
- local_next_token ();
- if (store_constructor_contacts_blocked_slice (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_contacts_blocked (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "contacts.blocked", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contacts_blocked (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "contacts.blockedSlice", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contacts_blocked_slice (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_contacts_contacts (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 28 && !memcmp (cur_token, "contacts.contactsNotModified", cur_token_len)) {
- out_int (0xb74ba9d2);
- local_next_token ();
- if (store_constructor_contacts_contacts_not_modified (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "contacts.contacts", cur_token_len)) {
- out_int (0x6f8b8cb2);
- local_next_token ();
- if (store_constructor_contacts_contacts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_contacts_contacts (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 28 && !memcmp (cur_token, "contacts.contactsNotModified", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contacts_contacts_not_modified (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "contacts.contacts", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contacts_contacts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_contacts_found (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "contacts.found", cur_token_len)) {
- out_int (0x0566000e);
- local_next_token ();
- if (store_constructor_contacts_found (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_contacts_found (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "contacts.found", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contacts_found (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_contacts_imported_contacts (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "contacts.importedContacts", cur_token_len)) {
- out_int (0xad524315);
- local_next_token ();
- if (store_constructor_contacts_imported_contacts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_contacts_imported_contacts (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "contacts.importedContacts", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contacts_imported_contacts (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_contacts_link (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "contacts.link", cur_token_len)) {
- out_int (0x3ace484c);
- local_next_token ();
- if (store_constructor_contacts_link (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_contacts_link (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "contacts.link", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contacts_link (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_contacts_suggested (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "contacts.suggested", cur_token_len)) {
- out_int (0x5649dcc5);
- local_next_token ();
- if (store_constructor_contacts_suggested (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_contacts_suggested (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 18 && !memcmp (cur_token, "contacts.suggested", cur_token_len)) {
- local_next_token ();
- if (store_constructor_contacts_suggested (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_geochats_located (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "geochats.located", cur_token_len)) {
- out_int (0x48feb267);
- local_next_token ();
- if (store_constructor_geochats_located (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_geochats_located (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "geochats.located", cur_token_len)) {
- local_next_token ();
- if (store_constructor_geochats_located (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_geochats_messages (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "geochats.messages", cur_token_len)) {
- out_int (0xd1526db1);
- local_next_token ();
- if (store_constructor_geochats_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.messagesSlice", cur_token_len)) {
- out_int (0xbc5863e8);
- local_next_token ();
- if (store_constructor_geochats_messages_slice (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_geochats_messages (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "geochats.messages", cur_token_len)) {
- local_next_token ();
- if (store_constructor_geochats_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.messagesSlice", cur_token_len)) {
- local_next_token ();
- if (store_constructor_geochats_messages_slice (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_geochats_stated_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.statedMessage", cur_token_len)) {
- out_int (0x17b1578b);
- local_next_token ();
- if (store_constructor_geochats_stated_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_geochats_stated_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.statedMessage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_geochats_stated_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_help_app_update (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "help.appUpdate", cur_token_len)) {
- out_int (0x8987f311);
- local_next_token ();
- if (store_constructor_help_app_update (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "help.noAppUpdate", cur_token_len)) {
- out_int (0xc45a6536);
- local_next_token ();
- if (store_constructor_help_no_app_update (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_help_app_update (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 14 && !memcmp (cur_token, "help.appUpdate", cur_token_len)) {
- local_next_token ();
- if (store_constructor_help_app_update (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "help.noAppUpdate", cur_token_len)) {
- local_next_token ();
- if (store_constructor_help_no_app_update (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_help_invite_text (struct paramed_type *T) {
- out_int (0x18cb9f78);
- if (store_constructor_help_invite_text (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_help_invite_text (struct paramed_type *T) {
- if (store_constructor_help_invite_text (T) < 0) { return -1; }
- return 0;
-}
-int store_type_help_support (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "help.support", cur_token_len)) {
- out_int (0x17c6b5f6);
- local_next_token ();
- if (store_constructor_help_support (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_help_support (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "help.support", cur_token_len)) {
- local_next_token ();
- if (store_constructor_help_support (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_affected_history (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 24 && !memcmp (cur_token, "messages.affectedHistory", cur_token_len)) {
- out_int (0xb45c69d1);
- local_next_token ();
- if (store_constructor_messages_affected_history (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_affected_history (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 24 && !memcmp (cur_token, "messages.affectedHistory", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_affected_history (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_affected_messages (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "messages.affectedMessages", cur_token_len)) {
- out_int (0x84d19185);
- local_next_token ();
- if (store_constructor_messages_affected_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_affected_messages (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 25 && !memcmp (cur_token, "messages.affectedMessages", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_affected_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_all_stickers (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 31 && !memcmp (cur_token, "messages.allStickersNotModified", cur_token_len)) {
- out_int (0xe86602c3);
- local_next_token ();
- if (store_constructor_messages_all_stickers_not_modified (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.allStickers", cur_token_len)) {
- out_int (0x5ce352ec);
- local_next_token ();
- if (store_constructor_messages_all_stickers (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_all_stickers (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 31 && !memcmp (cur_token, "messages.allStickersNotModified", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_all_stickers_not_modified (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.allStickers", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_all_stickers (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_chat_full (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.chatFull", cur_token_len)) {
- out_int (0xe5d7d19c);
- local_next_token ();
- if (store_constructor_messages_chat_full (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_chat_full (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.chatFull", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_chat_full (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_chats (struct paramed_type *T) {
- out_int (0x64ff9fd5);
- if (store_constructor_messages_chats (T) < 0) { return -1; }
- return 0;
-}
-int store_type_bare_messages_chats (struct paramed_type *T) {
- if (store_constructor_messages_chats (T) < 0) { return -1; }
- return 0;
-}
-int store_type_messages_dh_config (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 28 && !memcmp (cur_token, "messages.dhConfigNotModified", cur_token_len)) {
- out_int (0xc0e24635);
- local_next_token ();
- if (store_constructor_messages_dh_config_not_modified (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.dhConfig", cur_token_len)) {
- out_int (0x2c221edd);
- local_next_token ();
- if (store_constructor_messages_dh_config (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_dh_config (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 28 && !memcmp (cur_token, "messages.dhConfigNotModified", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_dh_config_not_modified (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.dhConfig", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_dh_config (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_dialogs (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "messages.dialogs", cur_token_len)) {
- out_int (0x15ba6c40);
- local_next_token ();
- if (store_constructor_messages_dialogs (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "messages.dialogsSlice", cur_token_len)) {
- out_int (0x71e094f3);
- local_next_token ();
- if (store_constructor_messages_dialogs_slice (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_dialogs (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 16 && !memcmp (cur_token, "messages.dialogs", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_dialogs (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "messages.dialogsSlice", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_dialogs_slice (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "messages.messageEmpty", cur_token_len)) {
- out_int (0x3f4e0648);
- local_next_token ();
- if (store_constructor_messages_message_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 21 && !memcmp (cur_token, "messages.messageEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_message_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_messages (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.messages", cur_token_len)) {
- out_int (0x8c718e87);
- local_next_token ();
- if (store_constructor_messages_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.messagesSlice", cur_token_len)) {
- out_int (0x0b446ae3);
- local_next_token ();
- if (store_constructor_messages_messages_slice (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_messages (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.messages", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_messages (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.messagesSlice", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_messages_slice (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_sent_encrypted_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 29 && !memcmp (cur_token, "messages.sentEncryptedMessage", cur_token_len)) {
- out_int (0x560f8935);
- local_next_token ();
- if (store_constructor_messages_sent_encrypted_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.sentEncryptedFile", cur_token_len)) {
- out_int (0x9493ff32);
- local_next_token ();
- if (store_constructor_messages_sent_encrypted_file (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_sent_encrypted_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 29 && !memcmp (cur_token, "messages.sentEncryptedMessage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_sent_encrypted_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.sentEncryptedFile", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_sent_encrypted_file (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_sent_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.sentMessage", cur_token_len)) {
- out_int (0x4c3d47f3);
- local_next_token ();
- if (store_constructor_messages_sent_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "messages.sentMessageLink", cur_token_len)) {
- out_int (0x35a1a663);
- local_next_token ();
- if (store_constructor_messages_sent_message_link (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_sent_message (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.sentMessage", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_sent_message (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "messages.sentMessageLink", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_sent_message_link (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_sticker_set (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "messages.stickerSet", cur_token_len)) {
- out_int (0xb60a24a6);
- local_next_token ();
- if (store_constructor_messages_sticker_set (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_sticker_set (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "messages.stickerSet", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_sticker_set (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_messages_stickers (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 28 && !memcmp (cur_token, "messages.stickersNotModified", cur_token_len)) {
- out_int (0xf1749a22);
- local_next_token ();
- if (store_constructor_messages_stickers_not_modified (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.stickers", cur_token_len)) {
- out_int (0x8a8ecd32);
- local_next_token ();
- if (store_constructor_messages_stickers (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_messages_stickers (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 28 && !memcmp (cur_token, "messages.stickersNotModified", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_stickers_not_modified (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.stickers", cur_token_len)) {
- local_next_token ();
- if (store_constructor_messages_stickers (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_photos_photo (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "photos.photo", cur_token_len)) {
- out_int (0x20212ca8);
- local_next_token ();
- if (store_constructor_photos_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_photos_photo (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 12 && !memcmp (cur_token, "photos.photo", cur_token_len)) {
- local_next_token ();
- if (store_constructor_photos_photo (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_photos_photos (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "photos.photos", cur_token_len)) {
- out_int (0x8dca6aa5);
- local_next_token ();
- if (store_constructor_photos_photos (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "photos.photosSlice", cur_token_len)) {
- out_int (0x15051f54);
- local_next_token ();
- if (store_constructor_photos_photos_slice (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_photos_photos (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "photos.photos", cur_token_len)) {
- local_next_token ();
- if (store_constructor_photos_photos (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "photos.photosSlice", cur_token_len)) {
- local_next_token ();
- if (store_constructor_photos_photos_slice (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_storage_file_type (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "storage.fileUnknown", cur_token_len)) {
- out_int (0xaa963b05);
- local_next_token ();
- if (store_constructor_storage_file_unknown (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "storage.fileJpeg", cur_token_len)) {
- out_int (0x007efe0e);
- local_next_token ();
- if (store_constructor_storage_file_jpeg (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileGif", cur_token_len)) {
- out_int (0xcae1aadf);
- local_next_token ();
- if (store_constructor_storage_file_gif (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.filePng", cur_token_len)) {
- out_int (0x0a4f63c0);
- local_next_token ();
- if (store_constructor_storage_file_png (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.filePdf", cur_token_len)) {
- out_int (0xae1e508d);
- local_next_token ();
- if (store_constructor_storage_file_pdf (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileMp3", cur_token_len)) {
- out_int (0x528a0677);
- local_next_token ();
- if (store_constructor_storage_file_mp3 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileMov", cur_token_len)) {
- out_int (0x4b09ebbc);
- local_next_token ();
- if (store_constructor_storage_file_mov (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "storage.filePartial", cur_token_len)) {
- out_int (0x40bc6f52);
- local_next_token ();
- if (store_constructor_storage_file_partial (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileMp4", cur_token_len)) {
- out_int (0xb3cea0e4);
- local_next_token ();
- if (store_constructor_storage_file_mp4 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "storage.fileWebp", cur_token_len)) {
- out_int (0x1081464c);
- local_next_token ();
- if (store_constructor_storage_file_webp (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_storage_file_type (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 19 && !memcmp (cur_token, "storage.fileUnknown", cur_token_len)) {
- local_next_token ();
- if (store_constructor_storage_file_unknown (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "storage.fileJpeg", cur_token_len)) {
- local_next_token ();
- if (store_constructor_storage_file_jpeg (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileGif", cur_token_len)) {
- local_next_token ();
- if (store_constructor_storage_file_gif (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.filePng", cur_token_len)) {
- local_next_token ();
- if (store_constructor_storage_file_png (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.filePdf", cur_token_len)) {
- local_next_token ();
- if (store_constructor_storage_file_pdf (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileMp3", cur_token_len)) {
- local_next_token ();
- if (store_constructor_storage_file_mp3 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileMov", cur_token_len)) {
- local_next_token ();
- if (store_constructor_storage_file_mov (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "storage.filePartial", cur_token_len)) {
- local_next_token ();
- if (store_constructor_storage_file_partial (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "storage.fileMp4", cur_token_len)) {
- local_next_token ();
- if (store_constructor_storage_file_mp4 (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "storage.fileWebp", cur_token_len)) {
- local_next_token ();
- if (store_constructor_storage_file_webp (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_updates_difference (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "updates.differenceEmpty", cur_token_len)) {
- out_int (0x5d75a138);
- local_next_token ();
- if (store_constructor_updates_difference_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "updates.difference", cur_token_len)) {
- out_int (0x00f49ca0);
- local_next_token ();
- if (store_constructor_updates_difference (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updates.differenceSlice", cur_token_len)) {
- out_int (0xa8fb1981);
- local_next_token ();
- if (store_constructor_updates_difference_slice (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_updates_difference (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 23 && !memcmp (cur_token, "updates.differenceEmpty", cur_token_len)) {
- local_next_token ();
- if (store_constructor_updates_difference_empty (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "updates.difference", cur_token_len)) {
- local_next_token ();
- if (store_constructor_updates_difference (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "updates.differenceSlice", cur_token_len)) {
- local_next_token ();
- if (store_constructor_updates_difference_slice (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_updates_state (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "updates.state", cur_token_len)) {
- out_int (0xa56c2a3e);
- local_next_token ();
- if (store_constructor_updates_state (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_updates_state (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 13 && !memcmp (cur_token, "updates.state", cur_token_len)) {
- local_next_token ();
- if (store_constructor_updates_state (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_upload_file (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "upload.file", cur_token_len)) {
- out_int (0x096a18d5);
- local_next_token ();
- if (store_constructor_upload_file (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-int store_type_bare_upload_file (struct paramed_type *T) {
- expect_token ("(", 1);
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len < 0) { return -1; }
- if (cur_token_len == 11 && !memcmp (cur_token, "upload.file", cur_token_len)) {
- local_next_token ();
- if (store_constructor_upload_file (T) < 0) { return -1; }
- expect_token (")", 1);
- return 0;
- }
- return -1;
-}
-struct paramed_type *store_function_account_change_phone (void) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "phone_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_check_username (void) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "username", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_delete_account (void) {
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "reason", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_get_account_t_t_l (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb8d0afdf, .id = "AccountDaysTTL", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_get_authorizations (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1250abde, .id = "account.Authorizations", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_get_notify_settings (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02b6911b, .id = "InputNotifyPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_notify_peer (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xfdf894fc, .id = "PeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_get_password (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xeac2a804, .id = "account.Password", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_get_password_settings (void) {
- if (cur_token_len >= 0 && cur_token_len == 21 && !cur_token_quoted && !memcmp (cur_token, "current_password_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb7b72ab3, .id = "account.PasswordSettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_get_privacy (void) {
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4f96cb18, .id = "InputPrivacyKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_privacy_key (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x554abb6f, .id = "account.PrivacyRules", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_get_wall_papers (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xafa14973, .id = "WallPaper", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_register_device (void) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "token_type", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "token", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "device_model", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "system_version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "app_version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "app_sandbox", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field6) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "lang_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field7) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_reset_authorization (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_reset_notify_settings (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_send_change_phone_code (void) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa4f58c4c, .id = "account.SentChangePhoneCode", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_set_account_t_t_l (void) {
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "ttl", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb8d0afdf, .id = "AccountDaysTTL", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_account_days_t_t_l (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_set_privacy (void) {
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "key", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4f96cb18, .id = "InputPrivacyKey", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_privacy_key (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "rules", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4b815163, .id = "InputPrivacyRule", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x554abb6f, .id = "account.PrivacyRules", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_unregister_device (void) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "token_type", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "token", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_update_device_locked (void) {
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "period", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_update_notify_settings (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02b6911b, .id = "InputNotifyPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_notify_peer (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "settings", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x46a2ce98, .id = "InputPeerNotifySettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_peer_notify_settings (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_update_password_settings (void) {
- if (cur_token_len >= 0 && cur_token_len == 21 && !cur_token_quoted && !memcmp (cur_token, "current_password_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "new_settings", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xbcfc532c, .id = "account.PasswordInputSettings", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_account_password_input_settings (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_update_profile (void) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_update_status (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "offline", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_account_update_username (void) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "username", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_bind_temp_auth_key (void) {
- if (cur_token_len >= 0 && cur_token_len == 16 && !cur_token_quoted && !memcmp (cur_token, "perm_auth_key_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "expires_at", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 17 && !cur_token_quoted && !memcmp (cur_token, "encrypted_message", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_check_password (void) {
- if (cur_token_len >= 0 && cur_token_len == 13 && !cur_token_quoted && !memcmp (cur_token, "password_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xff036af1, .id = "auth.Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_check_phone (void) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x811ea28e, .id = "auth.CheckedPhone", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_export_authorization (void) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "dc_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xdf969c2d, .id = "auth.ExportedAuthorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_import_authorization (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xff036af1, .id = "auth.Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_import_bot_authorization (void) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "api_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "api_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "bot_auth_token", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xff036af1, .id = "auth.Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_log_out (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_recover_password (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xff036af1, .id = "auth.Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_request_password_recovery (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x137948a5, .id = "auth.PasswordRecovery", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_reset_authorizations (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_send_call (void) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_send_code (void) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "sms_type", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "api_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "api_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "lang_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0cc8bc16, .id = "auth.SentCode", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_send_invites (void) {
- if (cur_token_len >= 0 && cur_token_len == 13 && !cur_token_quoted && !memcmp (cur_token, "phone_numbers", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_send_sms (void) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_sign_in (void) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "phone_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xff036af1, .id = "auth.Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_auth_sign_up (void) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "phone_number", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "phone_code_hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "phone_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "first_name", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "last_name", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xff036af1, .id = "auth.Authorization", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_block (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_user (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_delete_contact (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_user (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3ace484c, .id = "contacts.Link", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_delete_contacts (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_export_card (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_get_blocked (void) {
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8c1b8fb4, .id = "contacts.Blocked", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_get_contacts (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xd8c02560, .id = "contacts.Contacts", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_get_statuses (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xd3680c61, .id = "ContactStatus", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_get_suggested (void) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5649dcc5, .id = "contacts.Suggested", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_import_card (void) {
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "export_card", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_import_contacts (void) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "contacts", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf392b7f4, .id = "InputContact", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "replace", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xad524315, .id = "contacts.ImportedContacts", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_resolve_username (void) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "username", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_search (void) {
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "q", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0566000e, .id = "contacts.Found", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_contacts_unblock (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_user (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_geochats_checkin (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_chat (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17b1578b, .id = "geochats.StatedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_geochats_create_geo_chat (void) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "geo_point", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_point (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "address", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "venue", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17b1578b, .id = "geochats.StatedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_geochats_edit_chat_photo (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3a60776d, .id = "InputChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_chat_photo (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17b1578b, .id = "geochats.StatedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_geochats_edit_chat_title (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "address", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17b1578b, .id = "geochats.StatedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_geochats_get_full_chat (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_chat (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe5d7d19c, .id = "messages.ChatFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_geochats_get_history (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6d0a0e59, .id = "geochats.Messages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_geochats_get_located (void) {
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "geo_point", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_point (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "radius", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x48feb267, .id = "geochats.Located", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_geochats_get_recents (void) {
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6d0a0e59, .id = "geochats.Messages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_geochats_search (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "q", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "filter", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x80895ae0, .id = "MessagesFilter", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_messages_filter (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "min_date", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "max_date", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field8) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x6d0a0e59, .id = "geochats.Messages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_geochats_send_media (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb32c91dd, .id = "InputMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_media (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17b1578b, .id = "geochats.StatedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_geochats_send_message (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17b1578b, .id = "geochats.StatedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_geochats_set_typing (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x74d456fa, .id = "InputGeoChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "typing", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_help_get_app_update (void) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "device_model", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "system_version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "app_version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "lang_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ddd9627, .id = "help.AppUpdate", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_help_get_config (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4e32b894, .id = "Config", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_help_get_invite_text (void) {
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "lang_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x18cb9f78, .id = "help.InviteText", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_help_get_nearest_dc (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8e1a1775, .id = "NearestDc", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_help_get_support (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17c6b5f6, .id = "help.Support", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_help_save_app_log (void) {
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "events", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x770656a8, .id = "InputAppEvent", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_init_connection (void) {
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "api_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "device_model", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "system_version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "app_version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field5) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "lang_code", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field6) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "query", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field7 = store_function_any ();
- if (!field7) { return 0; }
- if (ODDP(field7)) { return 0; }
- struct paramed_type *var0 = field7; assert (var0);
- struct paramed_type *R =
- var0;
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_invoke_after_msg (void) {
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "msg_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "query", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 = store_function_any ();
- if (!field3) { return 0; }
- if (ODDP(field3)) { return 0; }
- struct paramed_type *var0 = field3; assert (var0);
- struct paramed_type *R =
- var0;
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_invoke_after_msgs (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "msg_ids", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "query", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 = store_function_any ();
- if (!field3) { return 0; }
- if (ODDP(field3)) { return 0; }
- struct paramed_type *var0 = field3; assert (var0);
- struct paramed_type *R =
- var0;
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_invoke_with_layer (void) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "layer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "query", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 = store_function_any ();
- if (!field3) { return 0; }
- if (ODDP(field3)) { return 0; }
- struct paramed_type *var0 = field3; assert (var0);
- struct paramed_type *R =
- var0;
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_invoke_without_updates (void) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "query", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 = store_function_any ();
- if (!field2) { return 0; }
- if (ODDP(field2)) { return 0; }
- struct paramed_type *var0 = field2; assert (var0);
- struct paramed_type *R =
- var0;
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_accept_encryption (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf141b5e1, .id = "InputEncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_encrypted_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "g_b", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb1718213, .id = "EncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_add_chat_user (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_user (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "fwd_limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_check_chat_invite (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x94f910b1, .id = "ChatInvite", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_create_chat (void) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "users", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_delete_chat_user (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_user (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_delete_history (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb45c69d1, .id = "messages.AffectedHistory", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_delete_messages (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x84d19185, .id = "messages.AffectedMessages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_discard_encryption (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_edit_chat_photo (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "photo", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x3a60776d, .id = "InputChatPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_chat_photo (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_edit_chat_title (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "title", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_export_chat_invite (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f132d5, .id = "ExportedChatInvite", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_forward_message (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_forward_messages (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_get_all_stickers (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb485502f, .id = "messages.AllStickers", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_get_chats (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x64ff9fd5, .id = "messages.Chats", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_get_dh_config (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "version", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 13 && !cur_token_quoted && !memcmp (cur_token, "random_length", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xecc058e8, .id = "messages.DhConfig", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_get_dialogs (void) {
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x645af8b3, .id = "messages.Dialogs", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_get_full_chat (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe5d7d19c, .id = "messages.ChatFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_get_history (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8735e464, .id = "messages.Messages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_get_messages (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8735e464, .id = "messages.Messages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_get_sticker_set (void) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "stickerset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_sticker_set (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb60a24a6, .id = "messages.StickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_get_stickers (void) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "emoticon", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7bfa5710, .id = "messages.Stickers", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_get_web_page_preview (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x95f2471a, .id = "MessageMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_import_chat_invite (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "hash", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_install_sticker_set (void) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "stickerset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_sticker_set (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_read_encrypted_history (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf141b5e1, .id = "InputEncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_encrypted_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "max_date", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_read_history (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb45c69d1, .id = "messages.AffectedHistory", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_read_message_contents (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x84d19185, .id = "messages.AffectedMessages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_received_messages (void) {
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa384b779, .id = "ReceivedNotifyMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_received_queue (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "max_qts", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_request_encryption (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_user (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "g_a", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb1718213, .id = "EncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_search (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "q", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "filter", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x80895ae0, .id = "MessagesFilter", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_messages_filter (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "min_date", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "max_date", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field5) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field6) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field7 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field7) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field8 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field8) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x8735e464, .id = "messages.Messages", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_send_broadcast (void) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "contacts", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb32c91dd, .id = "InputMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_media (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_send_encrypted (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf141b5e1, .id = "InputEncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_encrypted_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "data", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc29c7607, .id = "messages.SentEncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_send_encrypted_file (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf141b5e1, .id = "InputEncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_encrypted_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "data", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0b5c064f, .id = "InputEncryptedFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_encrypted_file (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc29c7607, .id = "messages.SentEncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_send_encrypted_service (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf141b5e1, .id = "InputEncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_encrypted_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "data", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xc29c7607, .id = "messages.SentEncryptedMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_send_media (void) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- if (cur_token_len < 0) { return 0; }
- if (!is_int ()) { return 0;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_peer (field2) < 0) { return 0;}
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "reply_to_msg_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- }
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "media", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xb32c91dd, .id = "InputMedia", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_media (field4) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field5) < 0) { return 0;}
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "reply_markup", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_reply_markup (field6) < 0) { return 0;}
- }
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_send_message (void) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "flags", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- if (cur_token_len < 0) { return 0; }
- if (!is_int ()) { return 0;}
- struct paramed_type *var0 = INT2PTR (get_int ());
- out_int (get_int ());
- assert (var0);
- local_next_token ();
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_peer (field2) < 0) { return 0;}
- if (PTR2INT (var0) & (1 << 0)) {
- if (cur_token_len >= 0 && cur_token_len == 15 && !cur_token_quoted && !memcmp (cur_token, "reply_to_msg_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- }
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "message", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field5) < 0) { return 0;}
- if (PTR2INT (var0) & (1 << 2)) {
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "reply_markup", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x612ca4a9, .id = "ReplyMarkup", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_reply_markup (field6) < 0) { return 0;}
- }
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x799ce190, .id = "messages.SentMessage", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_set_encrypted_typing (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf141b5e1, .id = "InputEncryptedChat", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_encrypted_chat (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "typing", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bool (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_set_typing (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "peer", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9e67268d, .id = "InputPeer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_peer (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "action", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x70541c7e, .id = "SendMessageAction", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_send_message_action (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_start_bot (void) {
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "bot", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_user (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "chat_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "random_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 11 && !cur_token_quoted && !memcmp (cur_token, "start_param", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x22499d27, .id = "Updates", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_messages_uninstall_sticker_set (void) {
- if (cur_token_len >= 0 && cur_token_len == 10 && !cur_token_quoted && !memcmp (cur_token, "stickerset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe44d415c, .id = "InputStickerSet", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_sticker_set (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_photos_delete_photos (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_photos_get_user_photos (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "user_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_user (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "max_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x98cf75f1, .id = "photos.Photos", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_photos_update_profile_photo (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe74279c9, .id = "InputPhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_photo (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "crop", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_photo_crop (field2) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x9a486229, .id = "UserProfilePhoto", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_photos_upload_profile_photo (void) {
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "file", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x0f60f9ca, .id = "InputFile", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_file (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "caption", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "geo_point", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x17768f1f, .id = "InputGeoPoint", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_geo_point (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "crop", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x7477e321, .id = "InputPhotoCrop", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_photo_crop (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x20212ca8, .id = "photos.Photo", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_req_d_h_params (void) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "p", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 1 && !cur_token_quoted && !memcmp (cur_token, "q", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field4) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 22 && !cur_token_quoted && !memcmp (cur_token, "public_key_fingerprint", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field5 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field5) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "encrypted_data", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field6 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field6) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa9230301, .id = "Server_DH_Params", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_req_pq (void) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x05162463, .id = "ResPQ", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_set_client_d_h_params (void) {
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "nonce", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 12 && !cur_token_quoted && !memcmp (cur_token, "server_nonce", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x82c93bc6, .id = "Bare_Int128", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int128 (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 14 && !cur_token_quoted && !memcmp (cur_token, "encrypted_data", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x4ad791db, .id = "Bare_String", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_string (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xdb8a468f, .id = "Set_client_DH_params_answer", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_updates_get_difference (void) {
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "pts", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 4 && !cur_token_quoted && !memcmp (cur_token, "date", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 3 && !cur_token_quoted && !memcmp (cur_token, "qts", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf57a2419, .id = "updates.Difference", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_updates_get_state (void) {
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xa56c2a3e, .id = "updates.State", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_upload_get_file (void) {
- if (cur_token_len >= 0 && cur_token_len == 8 && !cur_token_quoted && !memcmp (cur_token, "location", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xe6daa38b, .id = "InputFileLocation", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_file_location (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 6 && !cur_token_quoted && !memcmp (cur_token, "offset", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "limit", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x096a18d5, .id = "upload.File", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_upload_save_big_file_part (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "file_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "file_part", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 16 && !cur_token_quoted && !memcmp (cur_token, "file_total_parts", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field3) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field4 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field4) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_upload_save_file_part (void) {
- if (cur_token_len >= 0 && cur_token_len == 7 && !cur_token_quoted && !memcmp (cur_token, "file_id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xddf89345, .id = "Bare_Long", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_long (field1) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 9 && !cur_token_quoted && !memcmp (cur_token, "file_part", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field2 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x57af6425, .id = "Bare_Int", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_int (field2) < 0) { return 0;}
- if (cur_token_len >= 0 && cur_token_len == 5 && !cur_token_quoted && !memcmp (cur_token, "bytes", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field3 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xf11ec860, .id = "Bare_Bytes", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_bare_bytes (field3) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x250be282, .id = "Bool", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_users_get_full_user (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- if (store_type_input_user (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x5a89ac5b, .id = "UserFull", .params_num = 0, .params_types = 0},
- .params = 0,
- };
- return paramed_type_dup (R);
-}
-struct paramed_type *store_function_users_get_users (void) {
- if (cur_token_len >= 0 && cur_token_len == 2 && !cur_token_quoted && !memcmp (cur_token, "id", cur_token_len)) {
- local_next_token ();
- expect_token_ptr (":", 1);
- }
- struct paramed_type *field1 =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0xadfe0c6a, .id = "InputUser", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- if (store_type_vector (field1) < 0) { return 0;}
- struct paramed_type *R =
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x1cb5c415, .id = "Vector", .params_num = 1, .params_types = 0},
- .params = (struct paramed_type *[]){
- &(struct paramed_type){
- .type = &(struct tl_type_descr) {.name = 0x02e6c0c8, .id = "User", .params_num = 0, .params_types = 0},
- .params = 0,
- },
- }
- };
- return paramed_type_dup (R);
-}
-int store_type_any (struct paramed_type *T) {
- switch (T->type->name) {
- case 0xb8d0afdf: return store_type_account_days_t_t_l (T);
- case 0x472f5020: return store_type_bare_account_days_t_t_l (T);
- case 0x9fc5ec4e: return store_type_audio (T);
- case 0x603a13b1: return store_type_bare_audio (T);
- case 0x7bf2e6f6: return store_type_authorization (T);
- case 0x840d1909: return store_type_bare_authorization (T);
- case 0x250be282: return store_type_bool (T);
- case 0xdaf41d7d: return store_type_bare_bool (T);
- case 0x75e7ea6c: return store_type_bot_command (T);
- case 0x8a181593: return store_type_bare_bot_command (T);
- case 0xb2e16f93: return store_type_bot_info (T);
- case 0x4d1e906c: return store_type_bare_bot_info (T);
- case 0x0ee1379f: return store_type_bytes (T);
- case 0xf11ec860: return store_type_bare_bytes (T);
- case 0x7bd865dc: return store_type_chat (T);
- case 0x84279a23: return store_type_bare_chat (T);
- case 0x2e02a614: return store_type_chat_full (T);
- case 0xd1fd59eb: return store_type_bare_chat_full (T);
- case 0x94f910b1: return store_type_chat_invite (T);
- case 0x6b06ef4e: return store_type_bare_chat_invite (T);
- case 0x3631cf4c: return store_type_chat_located (T);
- case 0xc9ce30b3: return store_type_bare_chat_located (T);
- case 0xc8d7493e: return store_type_chat_participant (T);
- case 0x3728b6c1: return store_type_bare_chat_participant (T);
- case 0x77930f9f: return store_type_chat_participants (T);
- case 0x886cf060: return store_type_bare_chat_participants (T);
- case 0x56922676: return store_type_chat_photo (T);
- case 0xa96dd989: return store_type_bare_chat_photo (T);
- case 0x6643b654: return store_type_client_d_h_inner_data (T);
- case 0x99bc49ab: return store_type_bare_client_d_h_inner_data (T);
- case 0x4e32b894: return store_type_config (T);
- case 0xb1cd476b: return store_type_bare_config (T);
- case 0xf911c994: return store_type_contact (T);
- case 0x06ee366b: return store_type_bare_contact (T);
- case 0x561bc879: return store_type_contact_blocked (T);
- case 0xa9e43786: return store_type_bare_contact_blocked (T);
- case 0xea879f95: return store_type_contact_found (T);
- case 0x1578606a: return store_type_bare_contact_found (T);
- case 0x522fbc63: return store_type_contact_link (T);
- case 0xadd0439c: return store_type_bare_contact_link (T);
- case 0xd3680c61: return store_type_contact_status (T);
- case 0x2c97f39e: return store_type_bare_contact_status (T);
- case 0x3de191a1: return store_type_contact_suggested (T);
- case 0xc21e6e5e: return store_type_bare_contact_suggested (T);
- case 0x2b1a62f0: return store_type_dc_option (T);
- case 0xd4e59d0f: return store_type_bare_dc_option (T);
- case 0x535b7918: return store_type_decrypted_message (T);
- case 0xaca486e7: return store_type_bare_decrypted_message (T);
- case 0x4e0eefde: return store_type_decrypted_message_action (T);
- case 0xb1f11021: return store_type_bare_decrypted_message_action (T);
- case 0x1be31789: return store_type_decrypted_message_layer (T);
- case 0xe41ce876: return store_type_bare_decrypted_message_layer (T);
- case 0x34e0d674: return store_type_decrypted_message_media (T);
- case 0xcb1f298b: return store_type_bare_decrypted_message_media (T);
- case 0xc1dd804a: return store_type_dialog (T);
- case 0x3e227fb5: return store_type_bare_dialog (T);
- case 0xae636f24: return store_type_disabled_feature (T);
- case 0x519c90db: return store_type_bare_disabled_feature (T);
- case 0x51a73418: return store_type_document (T);
- case 0xae58cbe7: return store_type_bare_document (T);
- case 0x97c637a3: return store_type_document_attribute (T);
- case 0x6839c85c: return store_type_bare_document_attribute (T);
- case 0x2210c154: return store_type_double (T);
- case 0xddef3eab: return store_type_bare_double (T);
- case 0xb1718213: return store_type_encrypted_chat (T);
- case 0x4e8e7dec: return store_type_bare_encrypted_chat (T);
- case 0x886fd032: return store_type_encrypted_file (T);
- case 0x77902fcd: return store_type_bare_encrypted_file (T);
- case 0xce6b8a1e: return store_type_encrypted_message (T);
- case 0x319475e1: return store_type_bare_encrypted_message (T);
- case 0xc4b9f9bb: return store_type_error (T);
- case 0x3b460644: return store_type_bare_error (T);
- case 0x95f132d5: return store_type_exported_chat_invite (T);
- case 0x6a0ecd2a: return store_type_bare_exported_chat_invite (T);
- case 0x2f8ffb30: return store_type_file_location (T);
- case 0xd07004cf: return store_type_bare_file_location (T);
- case 0xf67b4034: return store_type_geo_chat_message (T);
- case 0x0984bfcb: return store_type_bare_geo_chat_message (T);
- case 0x315e0a53: return store_type_geo_point (T);
- case 0xcea1f5ac: return store_type_bare_geo_point (T);
- case 0xd0028438: return store_type_imported_contact (T);
- case 0x2ffd7bc7: return store_type_bare_imported_contact (T);
- case 0x770656a8: return store_type_input_app_event (T);
- case 0x88f9a957: return store_type_bare_input_app_event (T);
- case 0xae8e9c7b: return store_type_input_audio (T);
- case 0x51716384: return store_type_bare_input_audio (T);
- case 0x3a60776d: return store_type_input_chat_photo (T);
- case 0xc59f8892: return store_type_bare_input_chat_photo (T);
- case 0xf392b7f4: return store_type_input_contact (T);
- case 0x0c6d480b: return store_type_bare_input_contact (T);
- case 0x6a8963fc: return store_type_input_document (T);
- case 0x95769c03: return store_type_bare_input_document (T);
- case 0xf141b5e1: return store_type_input_encrypted_chat (T);
- case 0x0ebe4a1e: return store_type_bare_input_encrypted_chat (T);
- case 0x0b5c064f: return store_type_input_encrypted_file (T);
- case 0xf4a3f9b0: return store_type_bare_input_encrypted_file (T);
- case 0x0f60f9ca: return store_type_input_file (T);
- case 0xf09f0635: return store_type_bare_input_file (T);
- case 0xe6daa38b: return store_type_input_file_location (T);
- case 0x19255c74: return store_type_bare_input_file_location (T);
- case 0x74d456fa: return store_type_input_geo_chat (T);
- case 0x8b2ba905: return store_type_bare_input_geo_chat (T);
- case 0x17768f1f: return store_type_input_geo_point (T);
- case 0xe88970e0: return store_type_bare_input_geo_point (T);
- case 0xb32c91dd: return store_type_input_media (T);
- case 0x4cd36e22: return store_type_bare_input_media (T);
- case 0x02b6911b: return store_type_input_notify_peer (T);
- case 0xfd496ee4: return store_type_bare_input_notify_peer (T);
- case 0x9e67268d: return store_type_input_peer (T);
- case 0x6198d972: return store_type_bare_input_peer (T);
- case 0x185a48ac: return store_type_input_peer_notify_events (T);
- case 0xe7a5b753: return store_type_bare_input_peer_notify_events (T);
- case 0x46a2ce98: return store_type_input_peer_notify_settings (T);
- case 0xb95d3167: return store_type_bare_input_peer_notify_settings (T);
- case 0xe74279c9: return store_type_input_photo (T);
- case 0x18bd8636: return store_type_bare_input_photo (T);
- case 0x7477e321: return store_type_input_photo_crop (T);
- case 0x8b881cde: return store_type_bare_input_photo_crop (T);
- case 0x4f96cb18: return store_type_input_privacy_key (T);
- case 0xb06934e7: return store_type_bare_input_privacy_key (T);
- case 0x4b815163: return store_type_input_privacy_rule (T);
- case 0xb47eae9c: return store_type_bare_input_privacy_rule (T);
- case 0xe44d415c: return store_type_input_sticker_set (T);
- case 0x1bb2bea3: return store_type_bare_input_sticker_set (T);
- case 0xadfe0c6a: return store_type_input_user (T);
- case 0x5201f395: return store_type_bare_input_user (T);
- case 0xbb5f7a27: return store_type_input_video (T);
- case 0x44a085d8: return store_type_bare_input_video (T);
- case 0xa8509bda: return store_type_int (T);
- case 0x57af6425: return store_type_bare_int (T);
- case 0x7d36c439: return store_type_int128 (T);
- case 0x82c93bc6: return store_type_bare_int128 (T);
- case 0xf2c798b3: return store_type_int256 (T);
- case 0x0d38674c: return store_type_bare_int256 (T);
- case 0xa2fa4880: return store_type_keyboard_button (T);
- case 0x5d05b77f: return store_type_bare_keyboard_button (T);
- case 0x77608b83: return store_type_keyboard_button_row (T);
- case 0x889f747c: return store_type_bare_keyboard_button_row (T);
- case 0x22076cba: return store_type_long (T);
- case 0xddf89345: return store_type_bare_long (T);
- case 0x5d652a7f: return store_type_message (T);
- case 0xa29ad580: return store_type_bare_message (T);
- case 0x383415fa: return store_type_message_action (T);
- case 0xc7cbea05: return store_type_bare_message_action (T);
- case 0x95f2471a: return store_type_message_media (T);
- case 0x6a0db8e5: return store_type_bare_message_media (T);
- case 0x80895ae0: return store_type_messages_filter (T);
- case 0x7f76a51f: return store_type_bare_messages_filter (T);
- case 0x8e1a1775: return store_type_nearest_dc (T);
- case 0x71e5e88a: return store_type_bare_nearest_dc (T);
- case 0x9fcb8237: return store_type_notify_peer (T);
- case 0x60347dc8: return store_type_bare_notify_peer (T);
- case 0x56730bcc: return store_type_null (T);
- case 0xa98cf433: return store_type_bare_null (T);
- case 0xbfa3de38: return store_type_p_q_inner_data (T);
- case 0x405c21c7: return store_type_bare_p_q_inner_data (T);
- case 0x276159d6: return store_type_peer (T);
- case 0xd89ea629: return store_type_bare_peer (T);
- case 0xc0c8d13b: return store_type_peer_notify_events (T);
- case 0x3f372ec4: return store_type_bare_peer_notify_events (T);
- case 0xfdf894fc: return store_type_peer_notify_settings (T);
- case 0x02076b03: return store_type_bare_peer_notify_settings (T);
- case 0xc207550a: return store_type_photo (T);
- case 0x3df8aaf5: return store_type_bare_photo (T);
- case 0x900f60dd: return store_type_photo_size (T);
- case 0x6ff09f22: return store_type_bare_photo_size (T);
- case 0xbc2eab30: return store_type_privacy_key (T);
- case 0x43d154cf: return store_type_bare_privacy_key (T);
- case 0xa8638aec: return store_type_privacy_rule (T);
- case 0x579c7513: return store_type_bare_privacy_rule (T);
- case 0xa384b779: return store_type_received_notify_message (T);
- case 0x5c7b4886: return store_type_bare_received_notify_message (T);
- case 0x612ca4a9: return store_type_reply_markup (T);
- case 0x9ed35b56: return store_type_bare_reply_markup (T);
- case 0x05162463: return store_type_res_p_q (T);
- case 0xfae9db9c: return store_type_bare_res_p_q (T);
- case 0x70541c7e: return store_type_send_message_action (T);
- case 0x8fabe381: return store_type_bare_send_message_action (T);
- case 0xa9230301: return store_type_server_d_h_params (T);
- case 0x56dcfcfe: return store_type_bare_server_d_h_params (T);
- case 0xb5890dba: return store_type_server_d_h_inner_data (T);
- case 0x4a76f245: return store_type_bare_server_d_h_inner_data (T);
- case 0xdb8a468f: return store_type_set_client_d_h_params_answer (T);
- case 0x2475b970: return store_type_bare_set_client_d_h_params_answer (T);
- case 0x12b299d4: return store_type_sticker_pack (T);
- case 0xed4d662b: return store_type_bare_sticker_pack (T);
- case 0xa7a43b17: return store_type_sticker_set (T);
- case 0x585bc4e8: return store_type_bare_sticker_set (T);
- case 0xb5286e24: return store_type_string (T);
- case 0x4ad791db: return store_type_bare_string (T);
- case 0x2e02b27e: return store_type_update (T);
- case 0xd1fd4d81: return store_type_bare_update (T);
- case 0x22499d27: return store_type_updates (T);
- case 0xddb662d8: return store_type_bare_updates (T);
- case 0x02e6c0c8: return store_type_user (T);
- case 0xfd193f37: return store_type_bare_user (T);
- case 0x5a89ac5b: return store_type_user_full (T);
- case 0xa57653a4: return store_type_bare_user_full (T);
- case 0x9a486229: return store_type_user_profile_photo (T);
- case 0x65b79dd6: return store_type_bare_user_profile_photo (T);
- case 0x76de9570: return store_type_user_status (T);
- case 0x89216a8f: return store_type_bare_user_status (T);
- case 0x1cb5c415: return store_type_vector (T);
- case 0xe34a3bea: return store_type_bare_vector (T);
- case 0x1716b174: return store_type_video (T);
- case 0xe8e94e8b: return store_type_bare_video (T);
- case 0xafa14973: return store_type_wall_paper (T);
- case 0x505eb68c: return store_type_bare_wall_paper (T);
- case 0x8d8c0d41: return store_type_web_page (T);
- case 0x7273f2be: return store_type_bare_web_page (T);
- case 0x1250abde: return store_type_account_authorizations (T);
- case 0xedaf5421: return store_type_bare_account_authorizations (T);
- case 0xeac2a804: return store_type_account_password (T);
- case 0x153d57fb: return store_type_bare_account_password (T);
- case 0xbcfc532c: return store_type_account_password_input_settings (T);
- case 0x4303acd3: return store_type_bare_account_password_input_settings (T);
- case 0xb7b72ab3: return store_type_account_password_settings (T);
- case 0x4848d54c: return store_type_bare_account_password_settings (T);
- case 0x554abb6f: return store_type_account_privacy_rules (T);
- case 0xaab54490: return store_type_bare_account_privacy_rules (T);
- case 0xa4f58c4c: return store_type_account_sent_change_phone_code (T);
- case 0x5b0a73b3: return store_type_bare_account_sent_change_phone_code (T);
- case 0xff036af1: return store_type_auth_authorization (T);
- case 0x00fc950e: return store_type_bare_auth_authorization (T);
- case 0x811ea28e: return store_type_auth_checked_phone (T);
- case 0x7ee15d71: return store_type_bare_auth_checked_phone (T);
- case 0xdf969c2d: return store_type_auth_exported_authorization (T);
- case 0x206963d2: return store_type_bare_auth_exported_authorization (T);
- case 0x137948a5: return store_type_auth_password_recovery (T);
- case 0xec86b75a: return store_type_bare_auth_password_recovery (T);
- case 0x0cc8bc16: return store_type_auth_sent_code (T);
- case 0xf33743e9: return store_type_bare_auth_sent_code (T);
- case 0x0377168f: return store_type_binlog_encr_key (T);
- case 0xfc88e970: return store_type_bare_binlog_encr_key (T);
- case 0x66ff03a6: return store_type_binlog_update (T);
- case 0x9900fc59: return store_type_bare_binlog_update (T);
- case 0x8c1b8fb4: return store_type_contacts_blocked (T);
- case 0x73e4704b: return store_type_bare_contacts_blocked (T);
- case 0xd8c02560: return store_type_contacts_contacts (T);
- case 0x273fda9f: return store_type_bare_contacts_contacts (T);
- case 0x0566000e: return store_type_contacts_found (T);
- case 0xfa99fff1: return store_type_bare_contacts_found (T);
- case 0xad524315: return store_type_contacts_imported_contacts (T);
- case 0x52adbcea: return store_type_bare_contacts_imported_contacts (T);
- case 0x3ace484c: return store_type_contacts_link (T);
- case 0xc531b7b3: return store_type_bare_contacts_link (T);
- case 0x5649dcc5: return store_type_contacts_suggested (T);
- case 0xa9b6233a: return store_type_bare_contacts_suggested (T);
- case 0x48feb267: return store_type_geochats_located (T);
- case 0xb7014d98: return store_type_bare_geochats_located (T);
- case 0x6d0a0e59: return store_type_geochats_messages (T);
- case 0x92f5f1a6: return store_type_bare_geochats_messages (T);
- case 0x17b1578b: return store_type_geochats_stated_message (T);
- case 0xe84ea874: return store_type_bare_geochats_stated_message (T);
- case 0x4ddd9627: return store_type_help_app_update (T);
- case 0xb22269d8: return store_type_bare_help_app_update (T);
- case 0x18cb9f78: return store_type_help_invite_text (T);
- case 0xe7346087: return store_type_bare_help_invite_text (T);
- case 0x17c6b5f6: return store_type_help_support (T);
- case 0xe8394a09: return store_type_bare_help_support (T);
- case 0xb45c69d1: return store_type_messages_affected_history (T);
- case 0x4ba3962e: return store_type_bare_messages_affected_history (T);
- case 0x84d19185: return store_type_messages_affected_messages (T);
- case 0x7b2e6e7a: return store_type_bare_messages_affected_messages (T);
- case 0xb485502f: return store_type_messages_all_stickers (T);
- case 0x4b7aafd0: return store_type_bare_messages_all_stickers (T);
- case 0xe5d7d19c: return store_type_messages_chat_full (T);
- case 0x1a282e63: return store_type_bare_messages_chat_full (T);
- case 0x64ff9fd5: return store_type_messages_chats (T);
- case 0x9b00602a: return store_type_bare_messages_chats (T);
- case 0xecc058e8: return store_type_messages_dh_config (T);
- case 0x133fa717: return store_type_bare_messages_dh_config (T);
- case 0x645af8b3: return store_type_messages_dialogs (T);
- case 0x9ba5074c: return store_type_bare_messages_dialogs (T);
- case 0x3f4e0648: return store_type_messages_message (T);
- case 0xc0b1f9b7: return store_type_bare_messages_message (T);
- case 0x8735e464: return store_type_messages_messages (T);
- case 0x78ca1b9b: return store_type_bare_messages_messages (T);
- case 0xc29c7607: return store_type_messages_sent_encrypted_message (T);
- case 0x3d6389f8: return store_type_bare_messages_sent_encrypted_message (T);
- case 0x799ce190: return store_type_messages_sent_message (T);
- case 0x86631e6f: return store_type_bare_messages_sent_message (T);
- case 0xb60a24a6: return store_type_messages_sticker_set (T);
- case 0x49f5db59: return store_type_bare_messages_sticker_set (T);
- case 0x7bfa5710: return store_type_messages_stickers (T);
- case 0x8405a8ef: return store_type_bare_messages_stickers (T);
- case 0x20212ca8: return store_type_photos_photo (T);
- case 0xdfded357: return store_type_bare_photos_photo (T);
- case 0x98cf75f1: return store_type_photos_photos (T);
- case 0x67308a0e: return store_type_bare_photos_photos (T);
- case 0x3e2838a8: return store_type_storage_file_type (T);
- case 0xc1d7c757: return store_type_bare_storage_file_type (T);
- case 0xf57a2419: return store_type_updates_difference (T);
- case 0x0a85dbe6: return store_type_bare_updates_difference (T);
- case 0xa56c2a3e: return store_type_updates_state (T);
- case 0x5a93d5c1: return store_type_bare_updates_state (T);
- case 0x096a18d5: return store_type_upload_file (T);
- case 0xf695e72a: return store_type_bare_upload_file (T);
- default: return -1; }
-}
-struct paramed_type *store_function_any (void) {
- if (cur_token_len != 1 || *cur_token != '(') { return 0; }
- local_next_token ();
- if (cur_token_len == 1 || *cur_token == '.') {
- local_next_token ();
- if (cur_token_len != 1 || *cur_token != '=') { return 0; }
- local_next_token ();
- };
- if (cur_token_len < 0) { return 0; }
- if (cur_token_len == 19 && !memcmp (cur_token, "account.changePhone", cur_token_len)) {
- out_int (0x70c32edb);
- local_next_token ();
- struct paramed_type *P = store_function_account_change_phone ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "account.checkUsername", cur_token_len)) {
- out_int (0x2714d86c);
- local_next_token ();
- struct paramed_type *P = store_function_account_check_username ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "account.deleteAccount", cur_token_len)) {
- out_int (0x418d4e0b);
- local_next_token ();
- struct paramed_type *P = store_function_account_delete_account ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "account.getAccountTTL", cur_token_len)) {
- out_int (0x08fc711d);
- local_next_token ();
- struct paramed_type *P = store_function_account_get_account_t_t_l ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "account.getAuthorizations", cur_token_len)) {
- out_int (0xe320c158);
- local_next_token ();
- struct paramed_type *P = store_function_account_get_authorizations ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "account.getNotifySettings", cur_token_len)) {
- out_int (0x12b3ad31);
- local_next_token ();
- struct paramed_type *P = store_function_account_get_notify_settings ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "account.getPassword", cur_token_len)) {
- out_int (0x548a30f5);
- local_next_token ();
- struct paramed_type *P = store_function_account_get_password ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "account.getPasswordSettings", cur_token_len)) {
- out_int (0xbc8d11bb);
- local_next_token ();
- struct paramed_type *P = store_function_account_get_password_settings ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "account.getPrivacy", cur_token_len)) {
- out_int (0xdadbc950);
- local_next_token ();
- struct paramed_type *P = store_function_account_get_privacy ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "account.getWallPapers", cur_token_len)) {
- out_int (0xc04cfac2);
- local_next_token ();
- struct paramed_type *P = store_function_account_get_wall_papers ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "account.registerDevice", cur_token_len)) {
- out_int (0x446c712c);
- local_next_token ();
- struct paramed_type *P = store_function_account_register_device ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "account.resetAuthorization", cur_token_len)) {
- out_int (0xdf77f3bc);
- local_next_token ();
- struct paramed_type *P = store_function_account_reset_authorization ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "account.resetNotifySettings", cur_token_len)) {
- out_int (0xdb7e1747);
- local_next_token ();
- struct paramed_type *P = store_function_account_reset_notify_settings ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "account.sendChangePhoneCode", cur_token_len)) {
- out_int (0xa407a8f4);
- local_next_token ();
- struct paramed_type *P = store_function_account_send_change_phone_code ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "account.setAccountTTL", cur_token_len)) {
- out_int (0x2442485e);
- local_next_token ();
- struct paramed_type *P = store_function_account_set_account_t_t_l ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "account.setPrivacy", cur_token_len)) {
- out_int (0xc9f81ce8);
- local_next_token ();
- struct paramed_type *P = store_function_account_set_privacy ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "account.unregisterDevice", cur_token_len)) {
- out_int (0x65c55b40);
- local_next_token ();
- struct paramed_type *P = store_function_account_unregister_device ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "account.updateDeviceLocked", cur_token_len)) {
- out_int (0x38df3532);
- local_next_token ();
- struct paramed_type *P = store_function_account_update_device_locked ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "account.updateNotifySettings", cur_token_len)) {
- out_int (0x84be5b93);
- local_next_token ();
- struct paramed_type *P = store_function_account_update_notify_settings ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 30 && !memcmp (cur_token, "account.updatePasswordSettings", cur_token_len)) {
- out_int (0xfa7c4b86);
- local_next_token ();
- struct paramed_type *P = store_function_account_update_password_settings ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "account.updateProfile", cur_token_len)) {
- out_int (0xf0888d68);
- local_next_token ();
- struct paramed_type *P = store_function_account_update_profile ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "account.updateStatus", cur_token_len)) {
- out_int (0x6628562c);
- local_next_token ();
- struct paramed_type *P = store_function_account_update_status ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "account.updateUsername", cur_token_len)) {
- out_int (0x3e0bdd7c);
- local_next_token ();
- struct paramed_type *P = store_function_account_update_username ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "auth.bindTempAuthKey", cur_token_len)) {
- out_int (0xcdd42a05);
- local_next_token ();
- struct paramed_type *P = store_function_auth_bind_temp_auth_key ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "auth.checkPassword", cur_token_len)) {
- out_int (0x0a63011e);
- local_next_token ();
- struct paramed_type *P = store_function_auth_check_password ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "auth.checkPhone", cur_token_len)) {
- out_int (0x6fe51dfb);
- local_next_token ();
- struct paramed_type *P = store_function_auth_check_phone ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "auth.exportAuthorization", cur_token_len)) {
- out_int (0xe5bfffcd);
- local_next_token ();
- struct paramed_type *P = store_function_auth_export_authorization ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "auth.importAuthorization", cur_token_len)) {
- out_int (0xe3ef9613);
- local_next_token ();
- struct paramed_type *P = store_function_auth_import_authorization ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "auth.importBotAuthorization", cur_token_len)) {
- out_int (0x67a3ff2c);
- local_next_token ();
- struct paramed_type *P = store_function_auth_import_bot_authorization ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "auth.logOut", cur_token_len)) {
- out_int (0x5717da40);
- local_next_token ();
- struct paramed_type *P = store_function_auth_log_out ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "auth.recoverPassword", cur_token_len)) {
- out_int (0x4ea56e92);
- local_next_token ();
- struct paramed_type *P = store_function_auth_recover_password ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "auth.requestPasswordRecovery", cur_token_len)) {
- out_int (0xd897bc66);
- local_next_token ();
- struct paramed_type *P = store_function_auth_request_password_recovery ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "auth.resetAuthorizations", cur_token_len)) {
- out_int (0x9fab0d1a);
- local_next_token ();
- struct paramed_type *P = store_function_auth_reset_authorizations ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "auth.sendCall", cur_token_len)) {
- out_int (0x03c51564);
- local_next_token ();
- struct paramed_type *P = store_function_auth_send_call ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "auth.sendCode", cur_token_len)) {
- out_int (0x768d5f4d);
- local_next_token ();
- struct paramed_type *P = store_function_auth_send_code ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "auth.sendInvites", cur_token_len)) {
- out_int (0x771c1d97);
- local_next_token ();
- struct paramed_type *P = store_function_auth_send_invites ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 12 && !memcmp (cur_token, "auth.sendSms", cur_token_len)) {
- out_int (0x0da9f3e8);
- local_next_token ();
- struct paramed_type *P = store_function_auth_send_sms ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "auth.signIn", cur_token_len)) {
- out_int (0xbcd51581);
- local_next_token ();
- struct paramed_type *P = store_function_auth_sign_in ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 11 && !memcmp (cur_token, "auth.signUp", cur_token_len)) {
- out_int (0x1b067634);
- local_next_token ();
- struct paramed_type *P = store_function_auth_sign_up ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "contacts.block", cur_token_len)) {
- out_int (0x332b49fc);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_block ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "contacts.deleteContact", cur_token_len)) {
- out_int (0x8e953744);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_delete_contact ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "contacts.deleteContacts", cur_token_len)) {
- out_int (0x59ab389e);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_delete_contacts ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "contacts.exportCard", cur_token_len)) {
- out_int (0x84e53737);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_export_card ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "contacts.getBlocked", cur_token_len)) {
- out_int (0xf57c350f);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_get_blocked ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "contacts.getContacts", cur_token_len)) {
- out_int (0x22c6aa08);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_get_contacts ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "contacts.getStatuses", cur_token_len)) {
- out_int (0xc4a353ee);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_get_statuses ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "contacts.getSuggested", cur_token_len)) {
- out_int (0xcd773428);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_get_suggested ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "contacts.importCard", cur_token_len)) {
- out_int (0x4fe196fe);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_import_card ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "contacts.importContacts", cur_token_len)) {
- out_int (0xda30b32d);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_import_contacts ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "contacts.resolveUsername", cur_token_len)) {
- out_int (0x0bf0131c);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_resolve_username ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "contacts.search", cur_token_len)) {
- out_int (0x11f812d8);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_search ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "contacts.unblock", cur_token_len)) {
- out_int (0xe54100bd);
- local_next_token ();
- struct paramed_type *P = store_function_contacts_unblock ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "geochats.checkin", cur_token_len)) {
- out_int (0x55b3e8fb);
- local_next_token ();
- struct paramed_type *P = store_function_geochats_checkin ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.createGeoChat", cur_token_len)) {
- out_int (0x0e092e16);
- local_next_token ();
- struct paramed_type *P = store_function_geochats_create_geo_chat ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.editChatPhoto", cur_token_len)) {
- out_int (0x35d81a95);
- local_next_token ();
- struct paramed_type *P = store_function_geochats_edit_chat_photo ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "geochats.editChatTitle", cur_token_len)) {
- out_int (0x4c8e2273);
- local_next_token ();
- struct paramed_type *P = store_function_geochats_edit_chat_title ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "geochats.getFullChat", cur_token_len)) {
- out_int (0x6722dd6f);
- local_next_token ();
- struct paramed_type *P = store_function_geochats_get_full_chat ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "geochats.getHistory", cur_token_len)) {
- out_int (0xb53f7a68);
- local_next_token ();
- struct paramed_type *P = store_function_geochats_get_history ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "geochats.getLocated", cur_token_len)) {
- out_int (0x7f192d8f);
- local_next_token ();
- struct paramed_type *P = store_function_geochats_get_located ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "geochats.getRecents", cur_token_len)) {
- out_int (0xe1427e6f);
- local_next_token ();
- struct paramed_type *P = store_function_geochats_get_recents ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "geochats.search", cur_token_len)) {
- out_int (0xcfcdc44d);
- local_next_token ();
- struct paramed_type *P = store_function_geochats_search ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "geochats.sendMedia", cur_token_len)) {
- out_int (0xb8f0deff);
- local_next_token ();
- struct paramed_type *P = store_function_geochats_send_media ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "geochats.sendMessage", cur_token_len)) {
- out_int (0x061b0044);
- local_next_token ();
- struct paramed_type *P = store_function_geochats_send_message ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "geochats.setTyping", cur_token_len)) {
- out_int (0x08b8a729);
- local_next_token ();
- struct paramed_type *P = store_function_geochats_set_typing ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "help.getAppUpdate", cur_token_len)) {
- out_int (0xc812ac7e);
- local_next_token ();
- struct paramed_type *P = store_function_help_get_app_update ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "help.getConfig", cur_token_len)) {
- out_int (0xc4f9186b);
- local_next_token ();
- struct paramed_type *P = store_function_help_get_config ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "help.getInviteText", cur_token_len)) {
- out_int (0xa4a95186);
- local_next_token ();
- struct paramed_type *P = store_function_help_get_invite_text ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "help.getNearestDc", cur_token_len)) {
- out_int (0x1fb33026);
- local_next_token ();
- struct paramed_type *P = store_function_help_get_nearest_dc ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "help.getSupport", cur_token_len)) {
- out_int (0x9cdf08cd);
- local_next_token ();
- struct paramed_type *P = store_function_help_get_support ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "help.saveAppLog", cur_token_len)) {
- out_int (0x6f02f748);
- local_next_token ();
- struct paramed_type *P = store_function_help_save_app_log ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "initConnection", cur_token_len)) {
- out_int (0x69796de9);
- local_next_token ();
- struct paramed_type *P = store_function_init_connection ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "invokeAfterMsg", cur_token_len)) {
- out_int (0xcb9f372d);
- local_next_token ();
- struct paramed_type *P = store_function_invoke_after_msg ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "invokeAfterMsgs", cur_token_len)) {
- out_int (0x3dc4b4f0);
- local_next_token ();
- struct paramed_type *P = store_function_invoke_after_msgs ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "invokeWithLayer", cur_token_len)) {
- out_int (0xda9b0d0d);
- local_next_token ();
- struct paramed_type *P = store_function_invoke_with_layer ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "invokeWithoutUpdates", cur_token_len)) {
- out_int (0xbf9459b7);
- local_next_token ();
- struct paramed_type *P = store_function_invoke_without_updates ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "messages.acceptEncryption", cur_token_len)) {
- out_int (0x3dbc0415);
- local_next_token ();
- struct paramed_type *P = store_function_messages_accept_encryption ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.addChatUser", cur_token_len)) {
- out_int (0xf9a0aa09);
- local_next_token ();
- struct paramed_type *P = store_function_messages_add_chat_user ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "messages.checkChatInvite", cur_token_len)) {
- out_int (0x3eadb1bb);
- local_next_token ();
- struct paramed_type *P = store_function_messages_check_chat_invite ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messages.createChat", cur_token_len)) {
- out_int (0x09cb126e);
- local_next_token ();
- struct paramed_type *P = store_function_messages_create_chat ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messages.deleteChatUser", cur_token_len)) {
- out_int (0xe0611f16);
- local_next_token ();
- struct paramed_type *P = store_function_messages_delete_chat_user ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.deleteHistory", cur_token_len)) {
- out_int (0xf4f8fb61);
- local_next_token ();
- struct paramed_type *P = store_function_messages_delete_history ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messages.deleteMessages", cur_token_len)) {
- out_int (0xa5f18925);
- local_next_token ();
- struct paramed_type *P = store_function_messages_delete_messages ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.discardEncryption", cur_token_len)) {
- out_int (0xedd923c5);
- local_next_token ();
- struct paramed_type *P = store_function_messages_discard_encryption ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.editChatPhoto", cur_token_len)) {
- out_int (0xca4c79d8);
- local_next_token ();
- struct paramed_type *P = store_function_messages_edit_chat_photo ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.editChatTitle", cur_token_len)) {
- out_int (0xdc452855);
- local_next_token ();
- struct paramed_type *P = store_function_messages_edit_chat_title ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "messages.exportChatInvite", cur_token_len)) {
- out_int (0x7d885289);
- local_next_token ();
- struct paramed_type *P = store_function_messages_export_chat_invite ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messages.forwardMessage", cur_token_len)) {
- out_int (0x33963bf9);
- local_next_token ();
- struct paramed_type *P = store_function_messages_forward_message ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 24 && !memcmp (cur_token, "messages.forwardMessages", cur_token_len)) {
- out_int (0x55e1728d);
- local_next_token ();
- struct paramed_type *P = store_function_messages_forward_messages ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 23 && !memcmp (cur_token, "messages.getAllStickers", cur_token_len)) {
- out_int (0xaa3bc868);
- local_next_token ();
- struct paramed_type *P = store_function_messages_get_all_stickers ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.getChats", cur_token_len)) {
- out_int (0x3c6aa187);
- local_next_token ();
- struct paramed_type *P = store_function_messages_get_chats ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.getDhConfig", cur_token_len)) {
- out_int (0x26cf8950);
- local_next_token ();
- struct paramed_type *P = store_function_messages_get_dh_config ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messages.getDialogs", cur_token_len)) {
- out_int (0xeccf1df6);
- local_next_token ();
- struct paramed_type *P = store_function_messages_get_dialogs ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.getFullChat", cur_token_len)) {
- out_int (0x3b831c66);
- local_next_token ();
- struct paramed_type *P = store_function_messages_get_full_chat ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "messages.getHistory", cur_token_len)) {
- out_int (0x92a1df2f);
- local_next_token ();
- struct paramed_type *P = store_function_messages_get_history ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.getMessages", cur_token_len)) {
- out_int (0x4222fa74);
- local_next_token ();
- struct paramed_type *P = store_function_messages_get_messages ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.getStickerSet", cur_token_len)) {
- out_int (0x2619a90e);
- local_next_token ();
- struct paramed_type *P = store_function_messages_get_sticker_set ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.getStickers", cur_token_len)) {
- out_int (0xae22e045);
- local_next_token ();
- struct paramed_type *P = store_function_messages_get_stickers ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.getWebPagePreview", cur_token_len)) {
- out_int (0x25223e24);
- local_next_token ();
- struct paramed_type *P = store_function_messages_get_web_page_preview ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "messages.importChatInvite", cur_token_len)) {
- out_int (0x6c50051c);
- local_next_token ();
- struct paramed_type *P = store_function_messages_import_chat_invite ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.installStickerSet", cur_token_len)) {
- out_int (0xefbbfae9);
- local_next_token ();
- struct paramed_type *P = store_function_messages_install_sticker_set ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "messages.readEncryptedHistory", cur_token_len)) {
- out_int (0x7f4b690a);
- local_next_token ();
- struct paramed_type *P = store_function_messages_read_encrypted_history ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.readHistory", cur_token_len)) {
- out_int (0xb04f2510);
- local_next_token ();
- struct paramed_type *P = store_function_messages_read_history ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "messages.readMessageContents", cur_token_len)) {
- out_int (0x36a73f77);
- local_next_token ();
- struct paramed_type *P = store_function_messages_read_message_contents ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "messages.receivedMessages", cur_token_len)) {
- out_int (0x05a954c0);
- local_next_token ();
- struct paramed_type *P = store_function_messages_received_messages ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.receivedQueue", cur_token_len)) {
- out_int (0x55a5bb66);
- local_next_token ();
- struct paramed_type *P = store_function_messages_received_queue ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.requestEncryption", cur_token_len)) {
- out_int (0xf64daf43);
- local_next_token ();
- struct paramed_type *P = store_function_messages_request_encryption ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 15 && !memcmp (cur_token, "messages.search", cur_token_len)) {
- out_int (0x07e9f2ab);
- local_next_token ();
- struct paramed_type *P = store_function_messages_search ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.sendBroadcast", cur_token_len)) {
- out_int (0xbf73f4da);
- local_next_token ();
- struct paramed_type *P = store_function_messages_send_broadcast ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "messages.sendEncrypted", cur_token_len)) {
- out_int (0xa9776773);
- local_next_token ();
- struct paramed_type *P = store_function_messages_send_encrypted ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 26 && !memcmp (cur_token, "messages.sendEncryptedFile", cur_token_len)) {
- out_int (0x9a901b66);
- local_next_token ();
- struct paramed_type *P = store_function_messages_send_encrypted_file ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 29 && !memcmp (cur_token, "messages.sendEncryptedService", cur_token_len)) {
- out_int (0x32d439a4);
- local_next_token ();
- struct paramed_type *P = store_function_messages_send_encrypted_service ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "messages.sendMedia", cur_token_len)) {
- out_int (0xc8f16791);
- local_next_token ();
- struct paramed_type *P = store_function_messages_send_media ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "messages.sendMessage", cur_token_len)) {
- out_int (0xfc55e6b5);
- local_next_token ();
- struct paramed_type *P = store_function_messages_send_message ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 27 && !memcmp (cur_token, "messages.setEncryptedTyping", cur_token_len)) {
- out_int (0x791451ed);
- local_next_token ();
- struct paramed_type *P = store_function_messages_set_encrypted_typing ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 18 && !memcmp (cur_token, "messages.setTyping", cur_token_len)) {
- out_int (0xa3825e50);
- local_next_token ();
- struct paramed_type *P = store_function_messages_set_typing ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "messages.startBot", cur_token_len)) {
- out_int (0x1b3e0ffc);
- local_next_token ();
- struct paramed_type *P = store_function_messages_start_bot ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 28 && !memcmp (cur_token, "messages.uninstallStickerSet", cur_token_len)) {
- out_int (0xf96e55de);
- local_next_token ();
- struct paramed_type *P = store_function_messages_uninstall_sticker_set ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "photos.deletePhotos", cur_token_len)) {
- out_int (0x87cf7f2f);
- local_next_token ();
- struct paramed_type *P = store_function_photos_delete_photos ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "photos.getUserPhotos", cur_token_len)) {
- out_int (0xb7ee553c);
- local_next_token ();
- struct paramed_type *P = store_function_photos_get_user_photos ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "photos.updateProfilePhoto", cur_token_len)) {
- out_int (0xeef579a0);
- local_next_token ();
- struct paramed_type *P = store_function_photos_update_profile_photo ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 25 && !memcmp (cur_token, "photos.uploadProfilePhoto", cur_token_len)) {
- out_int (0xd50f9c88);
- local_next_token ();
- struct paramed_type *P = store_function_photos_upload_profile_photo ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 13 && !memcmp (cur_token, "req_DH_params", cur_token_len)) {
- out_int (0xd712e4be);
- local_next_token ();
- struct paramed_type *P = store_function_req_d_h_params ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 6 && !memcmp (cur_token, "req_pq", cur_token_len)) {
- out_int (0x60469778);
- local_next_token ();
- struct paramed_type *P = store_function_req_pq ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 20 && !memcmp (cur_token, "set_client_DH_params", cur_token_len)) {
- out_int (0xf5045f1f);
- local_next_token ();
- struct paramed_type *P = store_function_set_client_d_h_params ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 21 && !memcmp (cur_token, "updates.getDifference", cur_token_len)) {
- out_int (0x0a041495);
- local_next_token ();
- struct paramed_type *P = store_function_updates_get_difference ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 16 && !memcmp (cur_token, "updates.getState", cur_token_len)) {
- out_int (0xedd4882a);
- local_next_token ();
- struct paramed_type *P = store_function_updates_get_state ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "upload.getFile", cur_token_len)) {
- out_int (0xe3a6cfb5);
- local_next_token ();
- struct paramed_type *P = store_function_upload_get_file ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 22 && !memcmp (cur_token, "upload.saveBigFilePart", cur_token_len)) {
- out_int (0xde7b673d);
- local_next_token ();
- struct paramed_type *P = store_function_upload_save_big_file_part ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 19 && !memcmp (cur_token, "upload.saveFilePart", cur_token_len)) {
- out_int (0xb304a621);
- local_next_token ();
- struct paramed_type *P = store_function_upload_save_file_part ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 17 && !memcmp (cur_token, "users.getFullUser", cur_token_len)) {
- out_int (0xca30a5b1);
- local_next_token ();
- struct paramed_type *P = store_function_users_get_full_user ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- if (cur_token_len == 14 && !memcmp (cur_token, "users.getUsers", cur_token_len)) {
- out_int (0x0d91a548);
- local_next_token ();
- struct paramed_type *P = store_function_users_get_users ();
- if (!P) { return 0; }
- if (cur_token_len != 1 || *cur_token != ')') { return 0; }
- local_next_token ();
- return P;
- }
- return 0;
-}
diff --git a/protocols/Telegram/src/tgl/auto/auto-store.h b/protocols/Telegram/src/tgl/auto/auto-store.h
deleted file mode 100644
index 9a7a737ad2..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-store.h
+++ /dev/null
@@ -1,848 +0,0 @@
-#ifdef _MSC_VER
-#include "..\auto.h"
-#else
-#include "auto.h"
-#endif
-#include <assert.h>
-struct paramed_type *tglf_extf_store (struct tgl_state *TLS, const char *data, int data_len);
-int tglf_store_type (struct tgl_state *TLS, const char *work, int work_len, struct paramed_type *P);
-int store_constructor_account_days_t_t_l (struct paramed_type *T);
-int store_constructor_audio_empty (struct paramed_type *T);
-int store_constructor_audio (struct paramed_type *T);
-int store_constructor_authorization (struct paramed_type *T);
-int store_constructor_bool_false (struct paramed_type *T);
-int store_constructor_bool_true (struct paramed_type *T);
-int store_constructor_bot_command (struct paramed_type *T);
-int store_constructor_bot_command_old (struct paramed_type *T);
-int store_constructor_bot_info_empty (struct paramed_type *T);
-int store_constructor_bot_info (struct paramed_type *T);
-int store_constructor_bytes (struct paramed_type *T);
-int store_constructor_chat_empty (struct paramed_type *T);
-int store_constructor_chat (struct paramed_type *T);
-int store_constructor_chat_forbidden (struct paramed_type *T);
-int store_constructor_geo_chat (struct paramed_type *T);
-int store_constructor_chat_full (struct paramed_type *T);
-int store_constructor_chat_invite_already (struct paramed_type *T);
-int store_constructor_chat_invite (struct paramed_type *T);
-int store_constructor_chat_located (struct paramed_type *T);
-int store_constructor_chat_participant (struct paramed_type *T);
-int store_constructor_chat_participants_forbidden (struct paramed_type *T);
-int store_constructor_chat_participants (struct paramed_type *T);
-int store_constructor_chat_photo_empty (struct paramed_type *T);
-int store_constructor_chat_photo (struct paramed_type *T);
-int store_constructor_client_d_h_inner_data (struct paramed_type *T);
-int store_constructor_config (struct paramed_type *T);
-int store_constructor_contact (struct paramed_type *T);
-int store_constructor_contact_blocked (struct paramed_type *T);
-int store_constructor_contact_found (struct paramed_type *T);
-int store_constructor_contact_link_unknown (struct paramed_type *T);
-int store_constructor_contact_link_none (struct paramed_type *T);
-int store_constructor_contact_link_has_phone (struct paramed_type *T);
-int store_constructor_contact_link_contact (struct paramed_type *T);
-int store_constructor_contact_status (struct paramed_type *T);
-int store_constructor_contact_suggested (struct paramed_type *T);
-int store_constructor_dc_option_l28 (struct paramed_type *T);
-int store_constructor_dc_option (struct paramed_type *T);
-int store_constructor_decrypted_message (struct paramed_type *T);
-int store_constructor_decrypted_message_service (struct paramed_type *T);
-int store_constructor_decrypted_message_action_set_message_t_t_l (struct paramed_type *T);
-int store_constructor_decrypted_message_action_read_messages (struct paramed_type *T);
-int store_constructor_decrypted_message_action_delete_messages (struct paramed_type *T);
-int store_constructor_decrypted_message_action_screenshot_messages (struct paramed_type *T);
-int store_constructor_decrypted_message_action_flush_history (struct paramed_type *T);
-int store_constructor_decrypted_message_action_resend (struct paramed_type *T);
-int store_constructor_decrypted_message_action_notify_layer (struct paramed_type *T);
-int store_constructor_decrypted_message_action_typing (struct paramed_type *T);
-int store_constructor_decrypted_message_action_request_key (struct paramed_type *T);
-int store_constructor_decrypted_message_action_accept_key (struct paramed_type *T);
-int store_constructor_decrypted_message_action_abort_key (struct paramed_type *T);
-int store_constructor_decrypted_message_action_commit_key (struct paramed_type *T);
-int store_constructor_decrypted_message_action_noop (struct paramed_type *T);
-int store_constructor_decrypted_message_layer (struct paramed_type *T);
-int store_constructor_decrypted_message_media_empty (struct paramed_type *T);
-int store_constructor_decrypted_message_media_photo (struct paramed_type *T);
-int store_constructor_decrypted_message_media_geo_point (struct paramed_type *T);
-int store_constructor_decrypted_message_media_contact (struct paramed_type *T);
-int store_constructor_decrypted_message_media_document (struct paramed_type *T);
-int store_constructor_decrypted_message_media_video (struct paramed_type *T);
-int store_constructor_decrypted_message_media_audio (struct paramed_type *T);
-int store_constructor_decrypted_message_media_external_document (struct paramed_type *T);
-int store_constructor_decrypted_message_media_video_l12 (struct paramed_type *T);
-int store_constructor_decrypted_message_media_audio_l12 (struct paramed_type *T);
-int store_constructor_dialog (struct paramed_type *T);
-int store_constructor_disabled_feature (struct paramed_type *T);
-int store_constructor_document_empty (struct paramed_type *T);
-int store_constructor_document (struct paramed_type *T);
-int store_constructor_document_l19 (struct paramed_type *T);
-int store_constructor_document_attribute_image_size (struct paramed_type *T);
-int store_constructor_document_attribute_animated (struct paramed_type *T);
-int store_constructor_document_attribute_sticker_l28 (struct paramed_type *T);
-int store_constructor_document_attribute_sticker (struct paramed_type *T);
-int store_constructor_document_attribute_video (struct paramed_type *T);
-int store_constructor_document_attribute_audio (struct paramed_type *T);
-int store_constructor_document_attribute_filename (struct paramed_type *T);
-int store_constructor_double (struct paramed_type *T);
-int store_constructor_encrypted_chat_empty (struct paramed_type *T);
-int store_constructor_encrypted_chat_waiting (struct paramed_type *T);
-int store_constructor_encrypted_chat_requested (struct paramed_type *T);
-int store_constructor_encrypted_chat (struct paramed_type *T);
-int store_constructor_encrypted_chat_discarded (struct paramed_type *T);
-int store_constructor_encrypted_file_empty (struct paramed_type *T);
-int store_constructor_encrypted_file (struct paramed_type *T);
-int store_constructor_encrypted_message (struct paramed_type *T);
-int store_constructor_encrypted_message_service (struct paramed_type *T);
-int store_constructor_error (struct paramed_type *T);
-int store_constructor_chat_invite_empty (struct paramed_type *T);
-int store_constructor_chat_invite_exported (struct paramed_type *T);
-int store_constructor_file_location_unavailable (struct paramed_type *T);
-int store_constructor_file_location (struct paramed_type *T);
-int store_constructor_geo_chat_message_empty (struct paramed_type *T);
-int store_constructor_geo_chat_message (struct paramed_type *T);
-int store_constructor_geo_chat_message_service (struct paramed_type *T);
-int store_constructor_geo_point_empty (struct paramed_type *T);
-int store_constructor_geo_point (struct paramed_type *T);
-int store_constructor_imported_contact (struct paramed_type *T);
-int store_constructor_input_app_event (struct paramed_type *T);
-int store_constructor_input_audio_empty (struct paramed_type *T);
-int store_constructor_input_audio (struct paramed_type *T);
-int store_constructor_input_chat_photo_empty (struct paramed_type *T);
-int store_constructor_input_chat_uploaded_photo (struct paramed_type *T);
-int store_constructor_input_chat_photo (struct paramed_type *T);
-int store_constructor_input_phone_contact (struct paramed_type *T);
-int store_constructor_input_document_empty (struct paramed_type *T);
-int store_constructor_input_document (struct paramed_type *T);
-int store_constructor_input_encrypted_chat (struct paramed_type *T);
-int store_constructor_input_encrypted_file_empty (struct paramed_type *T);
-int store_constructor_input_encrypted_file_uploaded (struct paramed_type *T);
-int store_constructor_input_encrypted_file (struct paramed_type *T);
-int store_constructor_input_encrypted_file_big_uploaded (struct paramed_type *T);
-int store_constructor_input_file (struct paramed_type *T);
-int store_constructor_input_file_big (struct paramed_type *T);
-int store_constructor_input_file_location (struct paramed_type *T);
-int store_constructor_input_video_file_location (struct paramed_type *T);
-int store_constructor_input_encrypted_file_location (struct paramed_type *T);
-int store_constructor_input_audio_file_location (struct paramed_type *T);
-int store_constructor_input_document_file_location (struct paramed_type *T);
-int store_constructor_input_geo_chat (struct paramed_type *T);
-int store_constructor_input_geo_point_empty (struct paramed_type *T);
-int store_constructor_input_geo_point (struct paramed_type *T);
-int store_constructor_input_media_empty (struct paramed_type *T);
-int store_constructor_input_media_uploaded_photo (struct paramed_type *T);
-int store_constructor_input_media_photo (struct paramed_type *T);
-int store_constructor_input_media_geo_point (struct paramed_type *T);
-int store_constructor_input_media_contact (struct paramed_type *T);
-int store_constructor_input_media_uploaded_video (struct paramed_type *T);
-int store_constructor_input_media_uploaded_thumb_video (struct paramed_type *T);
-int store_constructor_input_media_video (struct paramed_type *T);
-int store_constructor_input_media_uploaded_audio (struct paramed_type *T);
-int store_constructor_input_media_audio (struct paramed_type *T);
-int store_constructor_input_media_uploaded_document (struct paramed_type *T);
-int store_constructor_input_media_uploaded_thumb_document (struct paramed_type *T);
-int store_constructor_input_media_document (struct paramed_type *T);
-int store_constructor_input_media_venue (struct paramed_type *T);
-int store_constructor_input_notify_peer (struct paramed_type *T);
-int store_constructor_input_notify_users (struct paramed_type *T);
-int store_constructor_input_notify_chats (struct paramed_type *T);
-int store_constructor_input_notify_all (struct paramed_type *T);
-int store_constructor_input_notify_geo_chat_peer (struct paramed_type *T);
-int store_constructor_input_peer_empty (struct paramed_type *T);
-int store_constructor_input_peer_self (struct paramed_type *T);
-int store_constructor_input_peer_contact (struct paramed_type *T);
-int store_constructor_input_peer_foreign (struct paramed_type *T);
-int store_constructor_input_peer_chat (struct paramed_type *T);
-int store_constructor_input_peer_notify_events_empty (struct paramed_type *T);
-int store_constructor_input_peer_notify_events_all (struct paramed_type *T);
-int store_constructor_input_peer_notify_settings (struct paramed_type *T);
-int store_constructor_input_photo_empty (struct paramed_type *T);
-int store_constructor_input_photo (struct paramed_type *T);
-int store_constructor_input_photo_crop_auto (struct paramed_type *T);
-int store_constructor_input_photo_crop (struct paramed_type *T);
-int store_constructor_input_privacy_key_status_timestamp (struct paramed_type *T);
-int store_constructor_input_privacy_value_allow_contacts (struct paramed_type *T);
-int store_constructor_input_privacy_value_allow_all (struct paramed_type *T);
-int store_constructor_input_privacy_value_allow_users (struct paramed_type *T);
-int store_constructor_input_privacy_value_disallow_contacts (struct paramed_type *T);
-int store_constructor_input_privacy_value_disallow_all (struct paramed_type *T);
-int store_constructor_input_privacy_value_disallow_users (struct paramed_type *T);
-int store_constructor_input_sticker_set_empty (struct paramed_type *T);
-int store_constructor_input_sticker_set_i_d (struct paramed_type *T);
-int store_constructor_input_sticker_set_short_name (struct paramed_type *T);
-int store_constructor_input_user_empty (struct paramed_type *T);
-int store_constructor_input_user_self (struct paramed_type *T);
-int store_constructor_input_user_contact (struct paramed_type *T);
-int store_constructor_input_user_foreign (struct paramed_type *T);
-int store_constructor_input_video_empty (struct paramed_type *T);
-int store_constructor_input_video (struct paramed_type *T);
-int store_constructor_int (struct paramed_type *T);
-int store_constructor_int128 (struct paramed_type *T);
-int store_constructor_int256 (struct paramed_type *T);
-int store_constructor_keyboard_button (struct paramed_type *T);
-int store_constructor_keyboard_button_row (struct paramed_type *T);
-int store_constructor_long (struct paramed_type *T);
-int store_constructor_message_empty (struct paramed_type *T);
-int store_constructor_message (struct paramed_type *T);
-int store_constructor_message_service (struct paramed_type *T);
-int store_constructor_message_action_empty (struct paramed_type *T);
-int store_constructor_message_action_chat_create (struct paramed_type *T);
-int store_constructor_message_action_chat_edit_title (struct paramed_type *T);
-int store_constructor_message_action_chat_edit_photo (struct paramed_type *T);
-int store_constructor_message_action_chat_delete_photo (struct paramed_type *T);
-int store_constructor_message_action_chat_add_user (struct paramed_type *T);
-int store_constructor_message_action_chat_delete_user (struct paramed_type *T);
-int store_constructor_message_action_geo_chat_create (struct paramed_type *T);
-int store_constructor_message_action_geo_chat_checkin (struct paramed_type *T);
-int store_constructor_message_action_chat_joined_by_link (struct paramed_type *T);
-int store_constructor_message_media_empty (struct paramed_type *T);
-int store_constructor_message_media_photo (struct paramed_type *T);
-int store_constructor_message_media_video (struct paramed_type *T);
-int store_constructor_message_media_geo (struct paramed_type *T);
-int store_constructor_message_media_contact (struct paramed_type *T);
-int store_constructor_message_media_unsupported (struct paramed_type *T);
-int store_constructor_message_media_document (struct paramed_type *T);
-int store_constructor_message_media_audio (struct paramed_type *T);
-int store_constructor_message_media_web_page (struct paramed_type *T);
-int store_constructor_message_media_venue (struct paramed_type *T);
-int store_constructor_message_media_photo_l27 (struct paramed_type *T);
-int store_constructor_message_media_video_l27 (struct paramed_type *T);
-int store_constructor_input_messages_filter_empty (struct paramed_type *T);
-int store_constructor_input_messages_filter_photos (struct paramed_type *T);
-int store_constructor_input_messages_filter_video (struct paramed_type *T);
-int store_constructor_input_messages_filter_photo_video (struct paramed_type *T);
-int store_constructor_input_messages_filter_photo_video_documents (struct paramed_type *T);
-int store_constructor_input_messages_filter_document (struct paramed_type *T);
-int store_constructor_input_messages_filter_audio (struct paramed_type *T);
-int store_constructor_nearest_dc (struct paramed_type *T);
-int store_constructor_notify_peer (struct paramed_type *T);
-int store_constructor_notify_users (struct paramed_type *T);
-int store_constructor_notify_chats (struct paramed_type *T);
-int store_constructor_notify_all (struct paramed_type *T);
-int store_constructor_null (struct paramed_type *T);
-int store_constructor_p_q_inner_data (struct paramed_type *T);
-int store_constructor_p_q_inner_data_temp (struct paramed_type *T);
-int store_constructor_peer_user (struct paramed_type *T);
-int store_constructor_peer_chat (struct paramed_type *T);
-int store_constructor_peer_notify_events_empty (struct paramed_type *T);
-int store_constructor_peer_notify_events_all (struct paramed_type *T);
-int store_constructor_peer_notify_settings_empty (struct paramed_type *T);
-int store_constructor_peer_notify_settings (struct paramed_type *T);
-int store_constructor_photo_empty (struct paramed_type *T);
-int store_constructor_photo (struct paramed_type *T);
-int store_constructor_photo_l27 (struct paramed_type *T);
-int store_constructor_photo_size_empty (struct paramed_type *T);
-int store_constructor_photo_size (struct paramed_type *T);
-int store_constructor_photo_cached_size (struct paramed_type *T);
-int store_constructor_privacy_key_status_timestamp (struct paramed_type *T);
-int store_constructor_privacy_value_allow_contacts (struct paramed_type *T);
-int store_constructor_privacy_value_allow_all (struct paramed_type *T);
-int store_constructor_privacy_value_allow_users (struct paramed_type *T);
-int store_constructor_privacy_value_disallow_contacts (struct paramed_type *T);
-int store_constructor_privacy_value_disallow_all (struct paramed_type *T);
-int store_constructor_privacy_value_disallow_users (struct paramed_type *T);
-int store_constructor_received_notify_message (struct paramed_type *T);
-int store_constructor_reply_keyboard_hide (struct paramed_type *T);
-int store_constructor_reply_keyboard_force_reply (struct paramed_type *T);
-int store_constructor_reply_keyboard_markup (struct paramed_type *T);
-int store_constructor_res_p_q (struct paramed_type *T);
-int store_constructor_send_message_typing_action (struct paramed_type *T);
-int store_constructor_send_message_cancel_action (struct paramed_type *T);
-int store_constructor_send_message_record_video_action (struct paramed_type *T);
-int store_constructor_send_message_upload_video_action_l27 (struct paramed_type *T);
-int store_constructor_send_message_upload_video_action (struct paramed_type *T);
-int store_constructor_send_message_record_audio_action (struct paramed_type *T);
-int store_constructor_send_message_upload_audio_action_l27 (struct paramed_type *T);
-int store_constructor_send_message_upload_audio_action (struct paramed_type *T);
-int store_constructor_send_message_upload_photo_action (struct paramed_type *T);
-int store_constructor_send_message_upload_document_action_l27 (struct paramed_type *T);
-int store_constructor_send_message_upload_document_action (struct paramed_type *T);
-int store_constructor_send_message_geo_location_action (struct paramed_type *T);
-int store_constructor_send_message_choose_contact_action (struct paramed_type *T);
-int store_constructor_server_d_h_params_fail (struct paramed_type *T);
-int store_constructor_server_d_h_params_ok (struct paramed_type *T);
-int store_constructor_server_d_h_inner_data (struct paramed_type *T);
-int store_constructor_dh_gen_ok (struct paramed_type *T);
-int store_constructor_dh_gen_retry (struct paramed_type *T);
-int store_constructor_dh_gen_fail (struct paramed_type *T);
-int store_constructor_sticker_pack (struct paramed_type *T);
-int store_constructor_sticker_set (struct paramed_type *T);
-int store_constructor_string (struct paramed_type *T);
-int store_constructor_update_new_message (struct paramed_type *T);
-int store_constructor_update_message_i_d (struct paramed_type *T);
-int store_constructor_update_delete_messages (struct paramed_type *T);
-int store_constructor_update_user_typing (struct paramed_type *T);
-int store_constructor_update_chat_user_typing (struct paramed_type *T);
-int store_constructor_update_chat_participants (struct paramed_type *T);
-int store_constructor_update_user_status (struct paramed_type *T);
-int store_constructor_update_user_name (struct paramed_type *T);
-int store_constructor_update_user_photo (struct paramed_type *T);
-int store_constructor_update_contact_registered (struct paramed_type *T);
-int store_constructor_update_contact_link (struct paramed_type *T);
-int store_constructor_update_new_authorization (struct paramed_type *T);
-int store_constructor_update_new_geo_chat_message (struct paramed_type *T);
-int store_constructor_update_new_encrypted_message (struct paramed_type *T);
-int store_constructor_update_encrypted_chat_typing (struct paramed_type *T);
-int store_constructor_update_encryption (struct paramed_type *T);
-int store_constructor_update_encrypted_messages_read (struct paramed_type *T);
-int store_constructor_update_chat_participant_add (struct paramed_type *T);
-int store_constructor_update_chat_participant_delete (struct paramed_type *T);
-int store_constructor_update_dc_options (struct paramed_type *T);
-int store_constructor_update_user_blocked (struct paramed_type *T);
-int store_constructor_update_notify_settings (struct paramed_type *T);
-int store_constructor_update_service_notification (struct paramed_type *T);
-int store_constructor_update_privacy (struct paramed_type *T);
-int store_constructor_update_user_phone (struct paramed_type *T);
-int store_constructor_update_read_history_inbox (struct paramed_type *T);
-int store_constructor_update_read_history_outbox (struct paramed_type *T);
-int store_constructor_update_web_page (struct paramed_type *T);
-int store_constructor_update_read_messages_contents (struct paramed_type *T);
-int store_constructor_update_msg_update (struct paramed_type *T);
-int store_constructor_updates_too_long (struct paramed_type *T);
-int store_constructor_update_short_message (struct paramed_type *T);
-int store_constructor_update_short_chat_message (struct paramed_type *T);
-int store_constructor_update_short (struct paramed_type *T);
-int store_constructor_updates_combined (struct paramed_type *T);
-int store_constructor_updates (struct paramed_type *T);
-int store_constructor_user_empty (struct paramed_type *T);
-int store_constructor_user (struct paramed_type *T);
-int store_constructor_user_full (struct paramed_type *T);
-int store_constructor_user_profile_photo_empty (struct paramed_type *T);
-int store_constructor_user_profile_photo (struct paramed_type *T);
-int store_constructor_user_status_empty (struct paramed_type *T);
-int store_constructor_user_status_online (struct paramed_type *T);
-int store_constructor_user_status_offline (struct paramed_type *T);
-int store_constructor_user_status_recently (struct paramed_type *T);
-int store_constructor_user_status_last_week (struct paramed_type *T);
-int store_constructor_user_status_last_month (struct paramed_type *T);
-int store_constructor_vector (struct paramed_type *T);
-int store_constructor_video_empty (struct paramed_type *T);
-int store_constructor_video (struct paramed_type *T);
-int store_constructor_video_l27 (struct paramed_type *T);
-int store_constructor_wall_paper (struct paramed_type *T);
-int store_constructor_wall_paper_solid (struct paramed_type *T);
-int store_constructor_web_page_empty (struct paramed_type *T);
-int store_constructor_web_page_pending (struct paramed_type *T);
-int store_constructor_web_page (struct paramed_type *T);
-int store_constructor_account_authorizations (struct paramed_type *T);
-int store_constructor_account_no_password (struct paramed_type *T);
-int store_constructor_account_password (struct paramed_type *T);
-int store_constructor_account_password_input_settings (struct paramed_type *T);
-int store_constructor_account_password_settings (struct paramed_type *T);
-int store_constructor_account_privacy_rules (struct paramed_type *T);
-int store_constructor_account_sent_change_phone_code (struct paramed_type *T);
-int store_constructor_auth_authorization (struct paramed_type *T);
-int store_constructor_auth_checked_phone (struct paramed_type *T);
-int store_constructor_auth_exported_authorization (struct paramed_type *T);
-int store_constructor_auth_password_recovery (struct paramed_type *T);
-int store_constructor_auth_sent_code (struct paramed_type *T);
-int store_constructor_auth_sent_app_code (struct paramed_type *T);
-int store_constructor_binlog_encr_key (struct paramed_type *T);
-int store_constructor_binlog_start (struct paramed_type *T);
-int store_constructor_binlog_dc_option (struct paramed_type *T);
-int store_constructor_binlog_dc_option_new (struct paramed_type *T);
-int store_constructor_binlog_auth_key (struct paramed_type *T);
-int store_constructor_binlog_default_dc (struct paramed_type *T);
-int store_constructor_binlog_dc_signed (struct paramed_type *T);
-int store_constructor_binlog_our_id (struct paramed_type *T);
-int store_constructor_binlog_set_dh_params (struct paramed_type *T);
-int store_constructor_binlog_set_pts (struct paramed_type *T);
-int store_constructor_binlog_set_qts (struct paramed_type *T);
-int store_constructor_binlog_set_date (struct paramed_type *T);
-int store_constructor_binlog_set_seq (struct paramed_type *T);
-int store_constructor_binlog_encr_chat_delete (struct paramed_type *T);
-int store_constructor_binlog_encr_chat_new (struct paramed_type *T);
-int store_constructor_binlog_encr_chat_exchange_new (struct paramed_type *T);
-int store_constructor_binlog_user_delete (struct paramed_type *T);
-int store_constructor_binlog_user_new (struct paramed_type *T);
-int store_constructor_binlog_chat_new (struct paramed_type *T);
-int store_constructor_binlog_chat_add_participant (struct paramed_type *T);
-int store_constructor_binlog_chat_del_participant (struct paramed_type *T);
-int store_constructor_binlog_set_msg_id (struct paramed_type *T);
-int store_constructor_binlog_message_delete (struct paramed_type *T);
-int store_constructor_binlog_message_new (struct paramed_type *T);
-int store_constructor_binlog_message_encr_new (struct paramed_type *T);
-int store_constructor_binlog_msg_update (struct paramed_type *T);
-int store_constructor_binlog_reset_authorization (struct paramed_type *T);
-int store_constructor_contacts_blocked (struct paramed_type *T);
-int store_constructor_contacts_blocked_slice (struct paramed_type *T);
-int store_constructor_contacts_contacts_not_modified (struct paramed_type *T);
-int store_constructor_contacts_contacts (struct paramed_type *T);
-int store_constructor_contacts_found (struct paramed_type *T);
-int store_constructor_contacts_imported_contacts (struct paramed_type *T);
-int store_constructor_contacts_link (struct paramed_type *T);
-int store_constructor_contacts_suggested (struct paramed_type *T);
-int store_constructor_geochats_located (struct paramed_type *T);
-int store_constructor_geochats_messages (struct paramed_type *T);
-int store_constructor_geochats_messages_slice (struct paramed_type *T);
-int store_constructor_geochats_stated_message (struct paramed_type *T);
-int store_constructor_help_app_update (struct paramed_type *T);
-int store_constructor_help_no_app_update (struct paramed_type *T);
-int store_constructor_help_invite_text (struct paramed_type *T);
-int store_constructor_help_support (struct paramed_type *T);
-int store_constructor_messages_affected_history (struct paramed_type *T);
-int store_constructor_messages_affected_messages (struct paramed_type *T);
-int store_constructor_messages_all_stickers_not_modified (struct paramed_type *T);
-int store_constructor_messages_all_stickers (struct paramed_type *T);
-int store_constructor_messages_chat_full (struct paramed_type *T);
-int store_constructor_messages_chats (struct paramed_type *T);
-int store_constructor_messages_dh_config_not_modified (struct paramed_type *T);
-int store_constructor_messages_dh_config (struct paramed_type *T);
-int store_constructor_messages_dialogs (struct paramed_type *T);
-int store_constructor_messages_dialogs_slice (struct paramed_type *T);
-int store_constructor_messages_message_empty (struct paramed_type *T);
-int store_constructor_messages_messages (struct paramed_type *T);
-int store_constructor_messages_messages_slice (struct paramed_type *T);
-int store_constructor_messages_sent_encrypted_message (struct paramed_type *T);
-int store_constructor_messages_sent_encrypted_file (struct paramed_type *T);
-int store_constructor_messages_sent_message (struct paramed_type *T);
-int store_constructor_messages_sent_message_link (struct paramed_type *T);
-int store_constructor_messages_sticker_set (struct paramed_type *T);
-int store_constructor_messages_stickers_not_modified (struct paramed_type *T);
-int store_constructor_messages_stickers (struct paramed_type *T);
-int store_constructor_photos_photo (struct paramed_type *T);
-int store_constructor_photos_photos (struct paramed_type *T);
-int store_constructor_photos_photos_slice (struct paramed_type *T);
-int store_constructor_storage_file_unknown (struct paramed_type *T);
-int store_constructor_storage_file_jpeg (struct paramed_type *T);
-int store_constructor_storage_file_gif (struct paramed_type *T);
-int store_constructor_storage_file_png (struct paramed_type *T);
-int store_constructor_storage_file_pdf (struct paramed_type *T);
-int store_constructor_storage_file_mp3 (struct paramed_type *T);
-int store_constructor_storage_file_mov (struct paramed_type *T);
-int store_constructor_storage_file_partial (struct paramed_type *T);
-int store_constructor_storage_file_mp4 (struct paramed_type *T);
-int store_constructor_storage_file_webp (struct paramed_type *T);
-int store_constructor_updates_difference_empty (struct paramed_type *T);
-int store_constructor_updates_difference (struct paramed_type *T);
-int store_constructor_updates_difference_slice (struct paramed_type *T);
-int store_constructor_updates_state (struct paramed_type *T);
-int store_constructor_upload_file (struct paramed_type *T);
-int store_type_account_days_t_t_l (struct paramed_type *T);
-int store_type_bare_account_days_t_t_l (struct paramed_type *T);
-int store_type_audio (struct paramed_type *T);
-int store_type_bare_audio (struct paramed_type *T);
-int store_type_authorization (struct paramed_type *T);
-int store_type_bare_authorization (struct paramed_type *T);
-int store_type_bool (struct paramed_type *T);
-int store_type_bare_bool (struct paramed_type *T);
-int store_type_bot_command (struct paramed_type *T);
-int store_type_bare_bot_command (struct paramed_type *T);
-int store_type_bot_info (struct paramed_type *T);
-int store_type_bare_bot_info (struct paramed_type *T);
-int store_type_bytes (struct paramed_type *T);
-int store_type_bare_bytes (struct paramed_type *T);
-int store_type_chat (struct paramed_type *T);
-int store_type_bare_chat (struct paramed_type *T);
-int store_type_chat_full (struct paramed_type *T);
-int store_type_bare_chat_full (struct paramed_type *T);
-int store_type_chat_invite (struct paramed_type *T);
-int store_type_bare_chat_invite (struct paramed_type *T);
-int store_type_chat_located (struct paramed_type *T);
-int store_type_bare_chat_located (struct paramed_type *T);
-int store_type_chat_participant (struct paramed_type *T);
-int store_type_bare_chat_participant (struct paramed_type *T);
-int store_type_chat_participants (struct paramed_type *T);
-int store_type_bare_chat_participants (struct paramed_type *T);
-int store_type_chat_photo (struct paramed_type *T);
-int store_type_bare_chat_photo (struct paramed_type *T);
-int store_type_client_d_h_inner_data (struct paramed_type *T);
-int store_type_bare_client_d_h_inner_data (struct paramed_type *T);
-int store_type_config (struct paramed_type *T);
-int store_type_bare_config (struct paramed_type *T);
-int store_type_contact (struct paramed_type *T);
-int store_type_bare_contact (struct paramed_type *T);
-int store_type_contact_blocked (struct paramed_type *T);
-int store_type_bare_contact_blocked (struct paramed_type *T);
-int store_type_contact_found (struct paramed_type *T);
-int store_type_bare_contact_found (struct paramed_type *T);
-int store_type_contact_link (struct paramed_type *T);
-int store_type_bare_contact_link (struct paramed_type *T);
-int store_type_contact_status (struct paramed_type *T);
-int store_type_bare_contact_status (struct paramed_type *T);
-int store_type_contact_suggested (struct paramed_type *T);
-int store_type_bare_contact_suggested (struct paramed_type *T);
-int store_type_dc_option (struct paramed_type *T);
-int store_type_bare_dc_option (struct paramed_type *T);
-int store_type_decrypted_message (struct paramed_type *T);
-int store_type_bare_decrypted_message (struct paramed_type *T);
-int store_type_decrypted_message_action (struct paramed_type *T);
-int store_type_bare_decrypted_message_action (struct paramed_type *T);
-int store_type_decrypted_message_layer (struct paramed_type *T);
-int store_type_bare_decrypted_message_layer (struct paramed_type *T);
-int store_type_decrypted_message_media (struct paramed_type *T);
-int store_type_bare_decrypted_message_media (struct paramed_type *T);
-int store_type_dialog (struct paramed_type *T);
-int store_type_bare_dialog (struct paramed_type *T);
-int store_type_disabled_feature (struct paramed_type *T);
-int store_type_bare_disabled_feature (struct paramed_type *T);
-int store_type_document (struct paramed_type *T);
-int store_type_bare_document (struct paramed_type *T);
-int store_type_document_attribute (struct paramed_type *T);
-int store_type_bare_document_attribute (struct paramed_type *T);
-int store_type_double (struct paramed_type *T);
-int store_type_bare_double (struct paramed_type *T);
-int store_type_encrypted_chat (struct paramed_type *T);
-int store_type_bare_encrypted_chat (struct paramed_type *T);
-int store_type_encrypted_file (struct paramed_type *T);
-int store_type_bare_encrypted_file (struct paramed_type *T);
-int store_type_encrypted_message (struct paramed_type *T);
-int store_type_bare_encrypted_message (struct paramed_type *T);
-int store_type_error (struct paramed_type *T);
-int store_type_bare_error (struct paramed_type *T);
-int store_type_exported_chat_invite (struct paramed_type *T);
-int store_type_bare_exported_chat_invite (struct paramed_type *T);
-int store_type_file_location (struct paramed_type *T);
-int store_type_bare_file_location (struct paramed_type *T);
-int store_type_geo_chat_message (struct paramed_type *T);
-int store_type_bare_geo_chat_message (struct paramed_type *T);
-int store_type_geo_point (struct paramed_type *T);
-int store_type_bare_geo_point (struct paramed_type *T);
-int store_type_imported_contact (struct paramed_type *T);
-int store_type_bare_imported_contact (struct paramed_type *T);
-int store_type_input_app_event (struct paramed_type *T);
-int store_type_bare_input_app_event (struct paramed_type *T);
-int store_type_input_audio (struct paramed_type *T);
-int store_type_bare_input_audio (struct paramed_type *T);
-int store_type_input_chat_photo (struct paramed_type *T);
-int store_type_bare_input_chat_photo (struct paramed_type *T);
-int store_type_input_contact (struct paramed_type *T);
-int store_type_bare_input_contact (struct paramed_type *T);
-int store_type_input_document (struct paramed_type *T);
-int store_type_bare_input_document (struct paramed_type *T);
-int store_type_input_encrypted_chat (struct paramed_type *T);
-int store_type_bare_input_encrypted_chat (struct paramed_type *T);
-int store_type_input_encrypted_file (struct paramed_type *T);
-int store_type_bare_input_encrypted_file (struct paramed_type *T);
-int store_type_input_file (struct paramed_type *T);
-int store_type_bare_input_file (struct paramed_type *T);
-int store_type_input_file_location (struct paramed_type *T);
-int store_type_bare_input_file_location (struct paramed_type *T);
-int store_type_input_geo_chat (struct paramed_type *T);
-int store_type_bare_input_geo_chat (struct paramed_type *T);
-int store_type_input_geo_point (struct paramed_type *T);
-int store_type_bare_input_geo_point (struct paramed_type *T);
-int store_type_input_media (struct paramed_type *T);
-int store_type_bare_input_media (struct paramed_type *T);
-int store_type_input_notify_peer (struct paramed_type *T);
-int store_type_bare_input_notify_peer (struct paramed_type *T);
-int store_type_input_peer (struct paramed_type *T);
-int store_type_bare_input_peer (struct paramed_type *T);
-int store_type_input_peer_notify_events (struct paramed_type *T);
-int store_type_bare_input_peer_notify_events (struct paramed_type *T);
-int store_type_input_peer_notify_settings (struct paramed_type *T);
-int store_type_bare_input_peer_notify_settings (struct paramed_type *T);
-int store_type_input_photo (struct paramed_type *T);
-int store_type_bare_input_photo (struct paramed_type *T);
-int store_type_input_photo_crop (struct paramed_type *T);
-int store_type_bare_input_photo_crop (struct paramed_type *T);
-int store_type_input_privacy_key (struct paramed_type *T);
-int store_type_bare_input_privacy_key (struct paramed_type *T);
-int store_type_input_privacy_rule (struct paramed_type *T);
-int store_type_bare_input_privacy_rule (struct paramed_type *T);
-int store_type_input_sticker_set (struct paramed_type *T);
-int store_type_bare_input_sticker_set (struct paramed_type *T);
-int store_type_input_user (struct paramed_type *T);
-int store_type_bare_input_user (struct paramed_type *T);
-int store_type_input_video (struct paramed_type *T);
-int store_type_bare_input_video (struct paramed_type *T);
-int store_type_int (struct paramed_type *T);
-int store_type_bare_int (struct paramed_type *T);
-int store_type_int128 (struct paramed_type *T);
-int store_type_bare_int128 (struct paramed_type *T);
-int store_type_int256 (struct paramed_type *T);
-int store_type_bare_int256 (struct paramed_type *T);
-int store_type_keyboard_button (struct paramed_type *T);
-int store_type_bare_keyboard_button (struct paramed_type *T);
-int store_type_keyboard_button_row (struct paramed_type *T);
-int store_type_bare_keyboard_button_row (struct paramed_type *T);
-int store_type_long (struct paramed_type *T);
-int store_type_bare_long (struct paramed_type *T);
-int store_type_message (struct paramed_type *T);
-int store_type_bare_message (struct paramed_type *T);
-int store_type_message_action (struct paramed_type *T);
-int store_type_bare_message_action (struct paramed_type *T);
-int store_type_message_media (struct paramed_type *T);
-int store_type_bare_message_media (struct paramed_type *T);
-int store_type_messages_filter (struct paramed_type *T);
-int store_type_bare_messages_filter (struct paramed_type *T);
-int store_type_nearest_dc (struct paramed_type *T);
-int store_type_bare_nearest_dc (struct paramed_type *T);
-int store_type_notify_peer (struct paramed_type *T);
-int store_type_bare_notify_peer (struct paramed_type *T);
-int store_type_null (struct paramed_type *T);
-int store_type_bare_null (struct paramed_type *T);
-int store_type_p_q_inner_data (struct paramed_type *T);
-int store_type_bare_p_q_inner_data (struct paramed_type *T);
-int store_type_peer (struct paramed_type *T);
-int store_type_bare_peer (struct paramed_type *T);
-int store_type_peer_notify_events (struct paramed_type *T);
-int store_type_bare_peer_notify_events (struct paramed_type *T);
-int store_type_peer_notify_settings (struct paramed_type *T);
-int store_type_bare_peer_notify_settings (struct paramed_type *T);
-int store_type_photo (struct paramed_type *T);
-int store_type_bare_photo (struct paramed_type *T);
-int store_type_photo_size (struct paramed_type *T);
-int store_type_bare_photo_size (struct paramed_type *T);
-int store_type_privacy_key (struct paramed_type *T);
-int store_type_bare_privacy_key (struct paramed_type *T);
-int store_type_privacy_rule (struct paramed_type *T);
-int store_type_bare_privacy_rule (struct paramed_type *T);
-int store_type_received_notify_message (struct paramed_type *T);
-int store_type_bare_received_notify_message (struct paramed_type *T);
-int store_type_reply_markup (struct paramed_type *T);
-int store_type_bare_reply_markup (struct paramed_type *T);
-int store_type_res_p_q (struct paramed_type *T);
-int store_type_bare_res_p_q (struct paramed_type *T);
-int store_type_send_message_action (struct paramed_type *T);
-int store_type_bare_send_message_action (struct paramed_type *T);
-int store_type_server_d_h_params (struct paramed_type *T);
-int store_type_bare_server_d_h_params (struct paramed_type *T);
-int store_type_server_d_h_inner_data (struct paramed_type *T);
-int store_type_bare_server_d_h_inner_data (struct paramed_type *T);
-int store_type_set_client_d_h_params_answer (struct paramed_type *T);
-int store_type_bare_set_client_d_h_params_answer (struct paramed_type *T);
-int store_type_sticker_pack (struct paramed_type *T);
-int store_type_bare_sticker_pack (struct paramed_type *T);
-int store_type_sticker_set (struct paramed_type *T);
-int store_type_bare_sticker_set (struct paramed_type *T);
-int store_type_string (struct paramed_type *T);
-int store_type_bare_string (struct paramed_type *T);
-int store_type_update (struct paramed_type *T);
-int store_type_bare_update (struct paramed_type *T);
-int store_type_updates (struct paramed_type *T);
-int store_type_bare_updates (struct paramed_type *T);
-int store_type_user (struct paramed_type *T);
-int store_type_bare_user (struct paramed_type *T);
-int store_type_user_full (struct paramed_type *T);
-int store_type_bare_user_full (struct paramed_type *T);
-int store_type_user_profile_photo (struct paramed_type *T);
-int store_type_bare_user_profile_photo (struct paramed_type *T);
-int store_type_user_status (struct paramed_type *T);
-int store_type_bare_user_status (struct paramed_type *T);
-int store_type_vector (struct paramed_type *T);
-int store_type_bare_vector (struct paramed_type *T);
-int store_type_video (struct paramed_type *T);
-int store_type_bare_video (struct paramed_type *T);
-int store_type_wall_paper (struct paramed_type *T);
-int store_type_bare_wall_paper (struct paramed_type *T);
-int store_type_web_page (struct paramed_type *T);
-int store_type_bare_web_page (struct paramed_type *T);
-int store_type_account_authorizations (struct paramed_type *T);
-int store_type_bare_account_authorizations (struct paramed_type *T);
-int store_type_account_password (struct paramed_type *T);
-int store_type_bare_account_password (struct paramed_type *T);
-int store_type_account_password_input_settings (struct paramed_type *T);
-int store_type_bare_account_password_input_settings (struct paramed_type *T);
-int store_type_account_password_settings (struct paramed_type *T);
-int store_type_bare_account_password_settings (struct paramed_type *T);
-int store_type_account_privacy_rules (struct paramed_type *T);
-int store_type_bare_account_privacy_rules (struct paramed_type *T);
-int store_type_account_sent_change_phone_code (struct paramed_type *T);
-int store_type_bare_account_sent_change_phone_code (struct paramed_type *T);
-int store_type_auth_authorization (struct paramed_type *T);
-int store_type_bare_auth_authorization (struct paramed_type *T);
-int store_type_auth_checked_phone (struct paramed_type *T);
-int store_type_bare_auth_checked_phone (struct paramed_type *T);
-int store_type_auth_exported_authorization (struct paramed_type *T);
-int store_type_bare_auth_exported_authorization (struct paramed_type *T);
-int store_type_auth_password_recovery (struct paramed_type *T);
-int store_type_bare_auth_password_recovery (struct paramed_type *T);
-int store_type_auth_sent_code (struct paramed_type *T);
-int store_type_bare_auth_sent_code (struct paramed_type *T);
-int store_type_binlog_encr_key (struct paramed_type *T);
-int store_type_bare_binlog_encr_key (struct paramed_type *T);
-int store_type_binlog_update (struct paramed_type *T);
-int store_type_bare_binlog_update (struct paramed_type *T);
-int store_type_contacts_blocked (struct paramed_type *T);
-int store_type_bare_contacts_blocked (struct paramed_type *T);
-int store_type_contacts_contacts (struct paramed_type *T);
-int store_type_bare_contacts_contacts (struct paramed_type *T);
-int store_type_contacts_found (struct paramed_type *T);
-int store_type_bare_contacts_found (struct paramed_type *T);
-int store_type_contacts_imported_contacts (struct paramed_type *T);
-int store_type_bare_contacts_imported_contacts (struct paramed_type *T);
-int store_type_contacts_link (struct paramed_type *T);
-int store_type_bare_contacts_link (struct paramed_type *T);
-int store_type_contacts_suggested (struct paramed_type *T);
-int store_type_bare_contacts_suggested (struct paramed_type *T);
-int store_type_geochats_located (struct paramed_type *T);
-int store_type_bare_geochats_located (struct paramed_type *T);
-int store_type_geochats_messages (struct paramed_type *T);
-int store_type_bare_geochats_messages (struct paramed_type *T);
-int store_type_geochats_stated_message (struct paramed_type *T);
-int store_type_bare_geochats_stated_message (struct paramed_type *T);
-int store_type_help_app_update (struct paramed_type *T);
-int store_type_bare_help_app_update (struct paramed_type *T);
-int store_type_help_invite_text (struct paramed_type *T);
-int store_type_bare_help_invite_text (struct paramed_type *T);
-int store_type_help_support (struct paramed_type *T);
-int store_type_bare_help_support (struct paramed_type *T);
-int store_type_messages_affected_history (struct paramed_type *T);
-int store_type_bare_messages_affected_history (struct paramed_type *T);
-int store_type_messages_affected_messages (struct paramed_type *T);
-int store_type_bare_messages_affected_messages (struct paramed_type *T);
-int store_type_messages_all_stickers (struct paramed_type *T);
-int store_type_bare_messages_all_stickers (struct paramed_type *T);
-int store_type_messages_chat_full (struct paramed_type *T);
-int store_type_bare_messages_chat_full (struct paramed_type *T);
-int store_type_messages_chats (struct paramed_type *T);
-int store_type_bare_messages_chats (struct paramed_type *T);
-int store_type_messages_dh_config (struct paramed_type *T);
-int store_type_bare_messages_dh_config (struct paramed_type *T);
-int store_type_messages_dialogs (struct paramed_type *T);
-int store_type_bare_messages_dialogs (struct paramed_type *T);
-int store_type_messages_message (struct paramed_type *T);
-int store_type_bare_messages_message (struct paramed_type *T);
-int store_type_messages_messages (struct paramed_type *T);
-int store_type_bare_messages_messages (struct paramed_type *T);
-int store_type_messages_sent_encrypted_message (struct paramed_type *T);
-int store_type_bare_messages_sent_encrypted_message (struct paramed_type *T);
-int store_type_messages_sent_message (struct paramed_type *T);
-int store_type_bare_messages_sent_message (struct paramed_type *T);
-int store_type_messages_sticker_set (struct paramed_type *T);
-int store_type_bare_messages_sticker_set (struct paramed_type *T);
-int store_type_messages_stickers (struct paramed_type *T);
-int store_type_bare_messages_stickers (struct paramed_type *T);
-int store_type_photos_photo (struct paramed_type *T);
-int store_type_bare_photos_photo (struct paramed_type *T);
-int store_type_photos_photos (struct paramed_type *T);
-int store_type_bare_photos_photos (struct paramed_type *T);
-int store_type_storage_file_type (struct paramed_type *T);
-int store_type_bare_storage_file_type (struct paramed_type *T);
-int store_type_updates_difference (struct paramed_type *T);
-int store_type_bare_updates_difference (struct paramed_type *T);
-int store_type_updates_state (struct paramed_type *T);
-int store_type_bare_updates_state (struct paramed_type *T);
-int store_type_upload_file (struct paramed_type *T);
-int store_type_bare_upload_file (struct paramed_type *T);
-struct paramed_type *store_function_account_change_phone (void);
-struct paramed_type *store_function_account_check_username (void);
-struct paramed_type *store_function_account_delete_account (void);
-struct paramed_type *store_function_account_get_account_t_t_l (void);
-struct paramed_type *store_function_account_get_authorizations (void);
-struct paramed_type *store_function_account_get_notify_settings (void);
-struct paramed_type *store_function_account_get_password (void);
-struct paramed_type *store_function_account_get_password_settings (void);
-struct paramed_type *store_function_account_get_privacy (void);
-struct paramed_type *store_function_account_get_wall_papers (void);
-struct paramed_type *store_function_account_register_device (void);
-struct paramed_type *store_function_account_reset_authorization (void);
-struct paramed_type *store_function_account_reset_notify_settings (void);
-struct paramed_type *store_function_account_send_change_phone_code (void);
-struct paramed_type *store_function_account_set_account_t_t_l (void);
-struct paramed_type *store_function_account_set_privacy (void);
-struct paramed_type *store_function_account_unregister_device (void);
-struct paramed_type *store_function_account_update_device_locked (void);
-struct paramed_type *store_function_account_update_notify_settings (void);
-struct paramed_type *store_function_account_update_password_settings (void);
-struct paramed_type *store_function_account_update_profile (void);
-struct paramed_type *store_function_account_update_status (void);
-struct paramed_type *store_function_account_update_username (void);
-struct paramed_type *store_function_auth_bind_temp_auth_key (void);
-struct paramed_type *store_function_auth_check_password (void);
-struct paramed_type *store_function_auth_check_phone (void);
-struct paramed_type *store_function_auth_export_authorization (void);
-struct paramed_type *store_function_auth_import_authorization (void);
-struct paramed_type *store_function_auth_import_bot_authorization (void);
-struct paramed_type *store_function_auth_log_out (void);
-struct paramed_type *store_function_auth_recover_password (void);
-struct paramed_type *store_function_auth_request_password_recovery (void);
-struct paramed_type *store_function_auth_reset_authorizations (void);
-struct paramed_type *store_function_auth_send_call (void);
-struct paramed_type *store_function_auth_send_code (void);
-struct paramed_type *store_function_auth_send_invites (void);
-struct paramed_type *store_function_auth_send_sms (void);
-struct paramed_type *store_function_auth_sign_in (void);
-struct paramed_type *store_function_auth_sign_up (void);
-struct paramed_type *store_function_contacts_block (void);
-struct paramed_type *store_function_contacts_delete_contact (void);
-struct paramed_type *store_function_contacts_delete_contacts (void);
-struct paramed_type *store_function_contacts_export_card (void);
-struct paramed_type *store_function_contacts_get_blocked (void);
-struct paramed_type *store_function_contacts_get_contacts (void);
-struct paramed_type *store_function_contacts_get_statuses (void);
-struct paramed_type *store_function_contacts_get_suggested (void);
-struct paramed_type *store_function_contacts_import_card (void);
-struct paramed_type *store_function_contacts_import_contacts (void);
-struct paramed_type *store_function_contacts_resolve_username (void);
-struct paramed_type *store_function_contacts_search (void);
-struct paramed_type *store_function_contacts_unblock (void);
-struct paramed_type *store_function_geochats_checkin (void);
-struct paramed_type *store_function_geochats_create_geo_chat (void);
-struct paramed_type *store_function_geochats_edit_chat_photo (void);
-struct paramed_type *store_function_geochats_edit_chat_title (void);
-struct paramed_type *store_function_geochats_get_full_chat (void);
-struct paramed_type *store_function_geochats_get_history (void);
-struct paramed_type *store_function_geochats_get_located (void);
-struct paramed_type *store_function_geochats_get_recents (void);
-struct paramed_type *store_function_geochats_search (void);
-struct paramed_type *store_function_geochats_send_media (void);
-struct paramed_type *store_function_geochats_send_message (void);
-struct paramed_type *store_function_geochats_set_typing (void);
-struct paramed_type *store_function_help_get_app_update (void);
-struct paramed_type *store_function_help_get_config (void);
-struct paramed_type *store_function_help_get_invite_text (void);
-struct paramed_type *store_function_help_get_nearest_dc (void);
-struct paramed_type *store_function_help_get_support (void);
-struct paramed_type *store_function_help_save_app_log (void);
-struct paramed_type *store_function_init_connection (void);
-struct paramed_type *store_function_invoke_after_msg (void);
-struct paramed_type *store_function_invoke_after_msgs (void);
-struct paramed_type *store_function_invoke_with_layer (void);
-struct paramed_type *store_function_invoke_without_updates (void);
-struct paramed_type *store_function_messages_accept_encryption (void);
-struct paramed_type *store_function_messages_add_chat_user (void);
-struct paramed_type *store_function_messages_check_chat_invite (void);
-struct paramed_type *store_function_messages_create_chat (void);
-struct paramed_type *store_function_messages_delete_chat_user (void);
-struct paramed_type *store_function_messages_delete_history (void);
-struct paramed_type *store_function_messages_delete_messages (void);
-struct paramed_type *store_function_messages_discard_encryption (void);
-struct paramed_type *store_function_messages_edit_chat_photo (void);
-struct paramed_type *store_function_messages_edit_chat_title (void);
-struct paramed_type *store_function_messages_export_chat_invite (void);
-struct paramed_type *store_function_messages_forward_message (void);
-struct paramed_type *store_function_messages_forward_messages (void);
-struct paramed_type *store_function_messages_get_all_stickers (void);
-struct paramed_type *store_function_messages_get_chats (void);
-struct paramed_type *store_function_messages_get_dh_config (void);
-struct paramed_type *store_function_messages_get_dialogs (void);
-struct paramed_type *store_function_messages_get_full_chat (void);
-struct paramed_type *store_function_messages_get_history (void);
-struct paramed_type *store_function_messages_get_messages (void);
-struct paramed_type *store_function_messages_get_sticker_set (void);
-struct paramed_type *store_function_messages_get_stickers (void);
-struct paramed_type *store_function_messages_get_web_page_preview (void);
-struct paramed_type *store_function_messages_import_chat_invite (void);
-struct paramed_type *store_function_messages_install_sticker_set (void);
-struct paramed_type *store_function_messages_read_encrypted_history (void);
-struct paramed_type *store_function_messages_read_history (void);
-struct paramed_type *store_function_messages_read_message_contents (void);
-struct paramed_type *store_function_messages_received_messages (void);
-struct paramed_type *store_function_messages_received_queue (void);
-struct paramed_type *store_function_messages_request_encryption (void);
-struct paramed_type *store_function_messages_search (void);
-struct paramed_type *store_function_messages_send_broadcast (void);
-struct paramed_type *store_function_messages_send_encrypted (void);
-struct paramed_type *store_function_messages_send_encrypted_file (void);
-struct paramed_type *store_function_messages_send_encrypted_service (void);
-struct paramed_type *store_function_messages_send_media (void);
-struct paramed_type *store_function_messages_send_message (void);
-struct paramed_type *store_function_messages_set_encrypted_typing (void);
-struct paramed_type *store_function_messages_set_typing (void);
-struct paramed_type *store_function_messages_start_bot (void);
-struct paramed_type *store_function_messages_uninstall_sticker_set (void);
-struct paramed_type *store_function_photos_delete_photos (void);
-struct paramed_type *store_function_photos_get_user_photos (void);
-struct paramed_type *store_function_photos_update_profile_photo (void);
-struct paramed_type *store_function_photos_upload_profile_photo (void);
-struct paramed_type *store_function_req_d_h_params (void);
-struct paramed_type *store_function_req_pq (void);
-struct paramed_type *store_function_set_client_d_h_params (void);
-struct paramed_type *store_function_updates_get_difference (void);
-struct paramed_type *store_function_updates_get_state (void);
-struct paramed_type *store_function_upload_get_file (void);
-struct paramed_type *store_function_upload_save_big_file_part (void);
-struct paramed_type *store_function_upload_save_file_part (void);
-struct paramed_type *store_function_users_get_full_user (void);
-struct paramed_type *store_function_users_get_users (void);
-int store_type_any (struct paramed_type *T);
-struct paramed_type *store_function_any (void);
diff --git a/protocols/Telegram/src/tgl/auto/auto-types.c b/protocols/Telegram/src/tgl/auto/auto-types.c
deleted file mode 100644
index 5521ddde8c..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-types.c
+++ /dev/null
@@ -1,1793 +0,0 @@
-#ifdef _MSC_VER
-#include "../auto.h"
-#else
-#include "auto.h"
-#endif
-struct tl_type_descr tl_type_account_days_t_t_l = {
- .name = 0xb8d0afdf,
- .id = "AccountDaysTTL"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_account_days_t_t_l = {
- .name = 0x472f5020,
- .id = "Bare_AccountDaysTTL",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_audio = {
- .name = 0x9fc5ec4e,
- .id = "Audio"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_audio = {
- .name = 0x603a13b1,
- .id = "Bare_Audio",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_authorization = {
- .name = 0x7bf2e6f6,
- .id = "Authorization"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_authorization = {
- .name = 0x840d1909,
- .id = "Bare_Authorization",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bool = {
- .name = 0x250be282,
- .id = "Bool"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_bool = {
- .name = 0xdaf41d7d,
- .id = "Bare_Bool",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bot_command = {
- .name = 0x75e7ea6c,
- .id = "BotCommand"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_bot_command = {
- .name = 0x8a181593,
- .id = "Bare_BotCommand",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bot_info = {
- .name = 0xb2e16f93,
- .id = "BotInfo"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_bot_info = {
- .name = 0x4d1e906c,
- .id = "Bare_BotInfo",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bytes = {
- .name = 0x0ee1379f,
- .id = "Bytes"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_bytes = {
- .name = 0xf11ec860,
- .id = "Bare_Bytes",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_chat = {
- .name = 0x7bd865dc,
- .id = "Chat"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_chat = {
- .name = 0x84279a23,
- .id = "Bare_Chat",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_chat_full = {
- .name = 0x2e02a614,
- .id = "ChatFull"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_chat_full = {
- .name = 0xd1fd59eb,
- .id = "Bare_ChatFull",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_chat_invite = {
- .name = 0x94f910b1,
- .id = "ChatInvite"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_chat_invite = {
- .name = 0x6b06ef4e,
- .id = "Bare_ChatInvite",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_chat_located = {
- .name = 0x3631cf4c,
- .id = "ChatLocated"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_chat_located = {
- .name = 0xc9ce30b3,
- .id = "Bare_ChatLocated",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_chat_participant = {
- .name = 0xc8d7493e,
- .id = "ChatParticipant"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_chat_participant = {
- .name = 0x3728b6c1,
- .id = "Bare_ChatParticipant",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_chat_participants = {
- .name = 0x77930f9f,
- .id = "ChatParticipants"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_chat_participants = {
- .name = 0x886cf060,
- .id = "Bare_ChatParticipants",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_chat_photo = {
- .name = 0x56922676,
- .id = "ChatPhoto"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_chat_photo = {
- .name = 0xa96dd989,
- .id = "Bare_ChatPhoto",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_client_d_h_inner_data = {
- .name = 0x6643b654,
- .id = "Client_DH_Inner_Data"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_client_d_h_inner_data = {
- .name = 0x99bc49ab,
- .id = "Bare_Client_DH_Inner_Data",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_config = {
- .name = 0x4e32b894,
- .id = "Config"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_config = {
- .name = 0xb1cd476b,
- .id = "Bare_Config",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_contact = {
- .name = 0xf911c994,
- .id = "Contact"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_contact = {
- .name = 0x06ee366b,
- .id = "Bare_Contact",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_contact_blocked = {
- .name = 0x561bc879,
- .id = "ContactBlocked"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_contact_blocked = {
- .name = 0xa9e43786,
- .id = "Bare_ContactBlocked",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_contact_found = {
- .name = 0xea879f95,
- .id = "ContactFound"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_contact_found = {
- .name = 0x1578606a,
- .id = "Bare_ContactFound",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_contact_link = {
- .name = 0x522fbc63,
- .id = "ContactLink"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_contact_link = {
- .name = 0xadd0439c,
- .id = "Bare_ContactLink",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_contact_status = {
- .name = 0xd3680c61,
- .id = "ContactStatus"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_contact_status = {
- .name = 0x2c97f39e,
- .id = "Bare_ContactStatus",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_contact_suggested = {
- .name = 0x3de191a1,
- .id = "ContactSuggested"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_contact_suggested = {
- .name = 0xc21e6e5e,
- .id = "Bare_ContactSuggested",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_dc_option = {
- .name = 0x2b1a62f0,
- .id = "DcOption"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_dc_option = {
- .name = 0xd4e59d0f,
- .id = "Bare_DcOption",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_decrypted_message = {
- .name = 0x535b7918,
- .id = "DecryptedMessage"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_decrypted_message = {
- .name = 0xaca486e7,
- .id = "Bare_DecryptedMessage",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_decrypted_message_action = {
- .name = 0x4e0eefde,
- .id = "DecryptedMessageAction"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_decrypted_message_action = {
- .name = 0xb1f11021,
- .id = "Bare_DecryptedMessageAction",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_decrypted_message_layer = {
- .name = 0x1be31789,
- .id = "DecryptedMessageLayer"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_decrypted_message_layer = {
- .name = 0xe41ce876,
- .id = "Bare_DecryptedMessageLayer",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_decrypted_message_media = {
- .name = 0x34e0d674,
- .id = "DecryptedMessageMedia"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_decrypted_message_media = {
- .name = 0xcb1f298b,
- .id = "Bare_DecryptedMessageMedia",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_dialog = {
- .name = 0xc1dd804a,
- .id = "Dialog"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_dialog = {
- .name = 0x3e227fb5,
- .id = "Bare_Dialog",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_disabled_feature = {
- .name = 0xae636f24,
- .id = "DisabledFeature"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_disabled_feature = {
- .name = 0x519c90db,
- .id = "Bare_DisabledFeature",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_document = {
- .name = 0x51a73418,
- .id = "Document"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_document = {
- .name = 0xae58cbe7,
- .id = "Bare_Document",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_document_attribute = {
- .name = 0x97c637a3,
- .id = "DocumentAttribute"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_document_attribute = {
- .name = 0x6839c85c,
- .id = "Bare_DocumentAttribute",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_double = {
- .name = 0x2210c154,
- .id = "Double"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_double = {
- .name = 0xddef3eab,
- .id = "Bare_Double",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_encrypted_chat = {
- .name = 0xb1718213,
- .id = "EncryptedChat"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_encrypted_chat = {
- .name = 0x4e8e7dec,
- .id = "Bare_EncryptedChat",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_encrypted_file = {
- .name = 0x886fd032,
- .id = "EncryptedFile"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_encrypted_file = {
- .name = 0x77902fcd,
- .id = "Bare_EncryptedFile",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_encrypted_message = {
- .name = 0xce6b8a1e,
- .id = "EncryptedMessage"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_encrypted_message = {
- .name = 0x319475e1,
- .id = "Bare_EncryptedMessage",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_error = {
- .name = 0xc4b9f9bb,
- .id = "Error"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_error = {
- .name = 0x3b460644,
- .id = "Bare_Error",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_exported_chat_invite = {
- .name = 0x95f132d5,
- .id = "ExportedChatInvite"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_exported_chat_invite = {
- .name = 0x6a0ecd2a,
- .id = "Bare_ExportedChatInvite",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_file_location = {
- .name = 0x2f8ffb30,
- .id = "FileLocation"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_file_location = {
- .name = 0xd07004cf,
- .id = "Bare_FileLocation",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_geo_chat_message = {
- .name = 0xf67b4034,
- .id = "GeoChatMessage"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_geo_chat_message = {
- .name = 0x0984bfcb,
- .id = "Bare_GeoChatMessage",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_geo_point = {
- .name = 0x315e0a53,
- .id = "GeoPoint"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_geo_point = {
- .name = 0xcea1f5ac,
- .id = "Bare_GeoPoint",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_imported_contact = {
- .name = 0xd0028438,
- .id = "ImportedContact"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_imported_contact = {
- .name = 0x2ffd7bc7,
- .id = "Bare_ImportedContact",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_app_event = {
- .name = 0x770656a8,
- .id = "InputAppEvent"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_app_event = {
- .name = 0x88f9a957,
- .id = "Bare_InputAppEvent",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_audio = {
- .name = 0xae8e9c7b,
- .id = "InputAudio"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_audio = {
- .name = 0x51716384,
- .id = "Bare_InputAudio",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_chat_photo = {
- .name = 0x3a60776d,
- .id = "InputChatPhoto"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_chat_photo = {
- .name = 0xc59f8892,
- .id = "Bare_InputChatPhoto",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_contact = {
- .name = 0xf392b7f4,
- .id = "InputContact"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_contact = {
- .name = 0x0c6d480b,
- .id = "Bare_InputContact",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_document = {
- .name = 0x6a8963fc,
- .id = "InputDocument"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_document = {
- .name = 0x95769c03,
- .id = "Bare_InputDocument",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_encrypted_chat = {
- .name = 0xf141b5e1,
- .id = "InputEncryptedChat"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_encrypted_chat = {
- .name = 0x0ebe4a1e,
- .id = "Bare_InputEncryptedChat",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_encrypted_file = {
- .name = 0x0b5c064f,
- .id = "InputEncryptedFile"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_encrypted_file = {
- .name = 0xf4a3f9b0,
- .id = "Bare_InputEncryptedFile",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_file = {
- .name = 0x0f60f9ca,
- .id = "InputFile"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_file = {
- .name = 0xf09f0635,
- .id = "Bare_InputFile",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_file_location = {
- .name = 0xe6daa38b,
- .id = "InputFileLocation"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_file_location = {
- .name = 0x19255c74,
- .id = "Bare_InputFileLocation",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_geo_chat = {
- .name = 0x74d456fa,
- .id = "InputGeoChat"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_geo_chat = {
- .name = 0x8b2ba905,
- .id = "Bare_InputGeoChat",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_geo_point = {
- .name = 0x17768f1f,
- .id = "InputGeoPoint"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_geo_point = {
- .name = 0xe88970e0,
- .id = "Bare_InputGeoPoint",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_media = {
- .name = 0xb32c91dd,
- .id = "InputMedia"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_media = {
- .name = 0x4cd36e22,
- .id = "Bare_InputMedia",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_notify_peer = {
- .name = 0x02b6911b,
- .id = "InputNotifyPeer"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_notify_peer = {
- .name = 0xfd496ee4,
- .id = "Bare_InputNotifyPeer",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_peer = {
- .name = 0x9e67268d,
- .id = "InputPeer"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_peer = {
- .name = 0x6198d972,
- .id = "Bare_InputPeer",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_peer_notify_events = {
- .name = 0x185a48ac,
- .id = "InputPeerNotifyEvents"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_peer_notify_events = {
- .name = 0xe7a5b753,
- .id = "Bare_InputPeerNotifyEvents",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_peer_notify_settings = {
- .name = 0x46a2ce98,
- .id = "InputPeerNotifySettings"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_peer_notify_settings = {
- .name = 0xb95d3167,
- .id = "Bare_InputPeerNotifySettings",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_photo = {
- .name = 0xe74279c9,
- .id = "InputPhoto"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_photo = {
- .name = 0x18bd8636,
- .id = "Bare_InputPhoto",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_photo_crop = {
- .name = 0x7477e321,
- .id = "InputPhotoCrop"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_photo_crop = {
- .name = 0x8b881cde,
- .id = "Bare_InputPhotoCrop",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_privacy_key = {
- .name = 0x4f96cb18,
- .id = "InputPrivacyKey"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_privacy_key = {
- .name = 0xb06934e7,
- .id = "Bare_InputPrivacyKey",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_privacy_rule = {
- .name = 0x4b815163,
- .id = "InputPrivacyRule"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_privacy_rule = {
- .name = 0xb47eae9c,
- .id = "Bare_InputPrivacyRule",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_sticker_set = {
- .name = 0xe44d415c,
- .id = "InputStickerSet"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_sticker_set = {
- .name = 0x1bb2bea3,
- .id = "Bare_InputStickerSet",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_user = {
- .name = 0xadfe0c6a,
- .id = "InputUser"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_user = {
- .name = 0x5201f395,
- .id = "Bare_InputUser",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_input_video = {
- .name = 0xbb5f7a27,
- .id = "InputVideo"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_input_video = {
- .name = 0x44a085d8,
- .id = "Bare_InputVideo",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_int = {
- .name = 0xa8509bda,
- .id = "Int"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_int = {
- .name = 0x57af6425,
- .id = "Bare_Int",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_int128 = {
- .name = 0x7d36c439,
- .id = "Int128"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_int128 = {
- .name = 0x82c93bc6,
- .id = "Bare_Int128",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_int256 = {
- .name = 0xf2c798b3,
- .id = "Int256"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_int256 = {
- .name = 0x0d38674c,
- .id = "Bare_Int256",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_keyboard_button = {
- .name = 0xa2fa4880,
- .id = "KeyboardButton"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_keyboard_button = {
- .name = 0x5d05b77f,
- .id = "Bare_KeyboardButton",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_keyboard_button_row = {
- .name = 0x77608b83,
- .id = "KeyboardButtonRow"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_keyboard_button_row = {
- .name = 0x889f747c,
- .id = "Bare_KeyboardButtonRow",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_long = {
- .name = 0x22076cba,
- .id = "Long"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_long = {
- .name = 0xddf89345,
- .id = "Bare_Long",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_message = {
- .name = 0x5d652a7f,
- .id = "Message"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_message = {
- .name = 0xa29ad580,
- .id = "Bare_Message",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_message_action = {
- .name = 0x383415fa,
- .id = "MessageAction"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_message_action = {
- .name = 0xc7cbea05,
- .id = "Bare_MessageAction",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_message_media = {
- .name = 0x95f2471a,
- .id = "MessageMedia"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_message_media = {
- .name = 0x6a0db8e5,
- .id = "Bare_MessageMedia",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_filter = {
- .name = 0x80895ae0,
- .id = "MessagesFilter"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_filter = {
- .name = 0x7f76a51f,
- .id = "Bare_MessagesFilter",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_nearest_dc = {
- .name = 0x8e1a1775,
- .id = "NearestDc"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_nearest_dc = {
- .name = 0x71e5e88a,
- .id = "Bare_NearestDc",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_notify_peer = {
- .name = 0x9fcb8237,
- .id = "NotifyPeer"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_notify_peer = {
- .name = 0x60347dc8,
- .id = "Bare_NotifyPeer",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_null = {
- .name = 0x56730bcc,
- .id = "Null"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_null = {
- .name = 0xa98cf433,
- .id = "Bare_Null",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_p_q_inner_data = {
- .name = 0xbfa3de38,
- .id = "P_Q_inner_data"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_p_q_inner_data = {
- .name = 0x405c21c7,
- .id = "Bare_P_Q_inner_data",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_peer = {
- .name = 0x276159d6,
- .id = "Peer"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_peer = {
- .name = 0xd89ea629,
- .id = "Bare_Peer",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_peer_notify_events = {
- .name = 0xc0c8d13b,
- .id = "PeerNotifyEvents"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_peer_notify_events = {
- .name = 0x3f372ec4,
- .id = "Bare_PeerNotifyEvents",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_peer_notify_settings = {
- .name = 0xfdf894fc,
- .id = "PeerNotifySettings"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_peer_notify_settings = {
- .name = 0x02076b03,
- .id = "Bare_PeerNotifySettings",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_photo = {
- .name = 0xc207550a,
- .id = "Photo"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_photo = {
- .name = 0x3df8aaf5,
- .id = "Bare_Photo",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_photo_size = {
- .name = 0x900f60dd,
- .id = "PhotoSize"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_photo_size = {
- .name = 0x6ff09f22,
- .id = "Bare_PhotoSize",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_privacy_key = {
- .name = 0xbc2eab30,
- .id = "PrivacyKey"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_privacy_key = {
- .name = 0x43d154cf,
- .id = "Bare_PrivacyKey",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_privacy_rule = {
- .name = 0xa8638aec,
- .id = "PrivacyRule"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_privacy_rule = {
- .name = 0x579c7513,
- .id = "Bare_PrivacyRule",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_received_notify_message = {
- .name = 0xa384b779,
- .id = "ReceivedNotifyMessage"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_received_notify_message = {
- .name = 0x5c7b4886,
- .id = "Bare_ReceivedNotifyMessage",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_reply_markup = {
- .name = 0x612ca4a9,
- .id = "ReplyMarkup"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_reply_markup = {
- .name = 0x9ed35b56,
- .id = "Bare_ReplyMarkup",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_res_p_q = {
- .name = 0x05162463,
- .id = "ResPQ"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_res_p_q = {
- .name = 0xfae9db9c,
- .id = "Bare_ResPQ",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_send_message_action = {
- .name = 0x70541c7e,
- .id = "SendMessageAction"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_send_message_action = {
- .name = 0x8fabe381,
- .id = "Bare_SendMessageAction",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_server_d_h_params = {
- .name = 0xa9230301,
- .id = "Server_DH_Params"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_server_d_h_params = {
- .name = 0x56dcfcfe,
- .id = "Bare_Server_DH_Params",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_server_d_h_inner_data = {
- .name = 0xb5890dba,
- .id = "Server_DH_inner_data"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_server_d_h_inner_data = {
- .name = 0x4a76f245,
- .id = "Bare_Server_DH_inner_data",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_set_client_d_h_params_answer = {
- .name = 0xdb8a468f,
- .id = "Set_client_DH_params_answer"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_set_client_d_h_params_answer = {
- .name = 0x2475b970,
- .id = "Bare_Set_client_DH_params_answer",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_sticker_pack = {
- .name = 0x12b299d4,
- .id = "StickerPack"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_sticker_pack = {
- .name = 0xed4d662b,
- .id = "Bare_StickerPack",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_sticker_set = {
- .name = 0xa7a43b17,
- .id = "StickerSet"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_sticker_set = {
- .name = 0x585bc4e8,
- .id = "Bare_StickerSet",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_string = {
- .name = 0xb5286e24,
- .id = "String"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_string = {
- .name = 0x4ad791db,
- .id = "Bare_String",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_update = {
- .name = 0x2e02b27e,
- .id = "Update"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_update = {
- .name = 0xd1fd4d81,
- .id = "Bare_Update",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_updates = {
- .name = 0x22499d27,
- .id = "Updates"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_updates = {
- .name = 0xddb662d8,
- .id = "Bare_Updates",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_user = {
- .name = 0x02e6c0c8,
- .id = "User"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_user = {
- .name = 0xfd193f37,
- .id = "Bare_User",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_user_full = {
- .name = 0x5a89ac5b,
- .id = "UserFull"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_user_full = {
- .name = 0xa57653a4,
- .id = "Bare_UserFull",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_user_profile_photo = {
- .name = 0x9a486229,
- .id = "UserProfilePhoto"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_user_profile_photo = {
- .name = 0x65b79dd6,
- .id = "Bare_UserProfilePhoto",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_user_status = {
- .name = 0x76de9570,
- .id = "UserStatus"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_user_status = {
- .name = 0x89216a8f,
- .id = "Bare_UserStatus",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_vector = {
- .name = 0x1cb5c415,
- .id = "Vector"
-, .params_num = 1,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_vector = {
- .name = 0xe34a3bea,
- .id = "Bare_Vector",
- .params_num = 1,
- .params_types = 0
-};
-struct tl_type_descr tl_type_video = {
- .name = 0x1716b174,
- .id = "Video"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_video = {
- .name = 0xe8e94e8b,
- .id = "Bare_Video",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_wall_paper = {
- .name = 0xafa14973,
- .id = "WallPaper"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_wall_paper = {
- .name = 0x505eb68c,
- .id = "Bare_WallPaper",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_web_page = {
- .name = 0x8d8c0d41,
- .id = "WebPage"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_web_page = {
- .name = 0x7273f2be,
- .id = "Bare_WebPage",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_account_authorizations = {
- .name = 0x1250abde,
- .id = "account.Authorizations"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_account_authorizations = {
- .name = 0xedaf5421,
- .id = "Bare_account.Authorizations",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_account_password = {
- .name = 0xeac2a804,
- .id = "account.Password"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_account_password = {
- .name = 0x153d57fb,
- .id = "Bare_account.Password",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_account_password_input_settings = {
- .name = 0xbcfc532c,
- .id = "account.PasswordInputSettings"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_account_password_input_settings = {
- .name = 0x4303acd3,
- .id = "Bare_account.PasswordInputSettings",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_account_password_settings = {
- .name = 0xb7b72ab3,
- .id = "account.PasswordSettings"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_account_password_settings = {
- .name = 0x4848d54c,
- .id = "Bare_account.PasswordSettings",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_account_privacy_rules = {
- .name = 0x554abb6f,
- .id = "account.PrivacyRules"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_account_privacy_rules = {
- .name = 0xaab54490,
- .id = "Bare_account.PrivacyRules",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_account_sent_change_phone_code = {
- .name = 0xa4f58c4c,
- .id = "account.SentChangePhoneCode"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_account_sent_change_phone_code = {
- .name = 0x5b0a73b3,
- .id = "Bare_account.SentChangePhoneCode",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_auth_authorization = {
- .name = 0xff036af1,
- .id = "auth.Authorization"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_auth_authorization = {
- .name = 0x00fc950e,
- .id = "Bare_auth.Authorization",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_auth_checked_phone = {
- .name = 0x811ea28e,
- .id = "auth.CheckedPhone"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_auth_checked_phone = {
- .name = 0x7ee15d71,
- .id = "Bare_auth.CheckedPhone",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_auth_exported_authorization = {
- .name = 0xdf969c2d,
- .id = "auth.ExportedAuthorization"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_auth_exported_authorization = {
- .name = 0x206963d2,
- .id = "Bare_auth.ExportedAuthorization",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_auth_password_recovery = {
- .name = 0x137948a5,
- .id = "auth.PasswordRecovery"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_auth_password_recovery = {
- .name = 0xec86b75a,
- .id = "Bare_auth.PasswordRecovery",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_auth_sent_code = {
- .name = 0x0cc8bc16,
- .id = "auth.SentCode"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_auth_sent_code = {
- .name = 0xf33743e9,
- .id = "Bare_auth.SentCode",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_binlog_encr_key = {
- .name = 0x0377168f,
- .id = "binlog.EncrKey"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_binlog_encr_key = {
- .name = 0xfc88e970,
- .id = "Bare_binlog.EncrKey",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_binlog_update = {
- .name = 0x66ff03a6,
- .id = "binlog.Update"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_binlog_update = {
- .name = 0x9900fc59,
- .id = "Bare_binlog.Update",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_contacts_blocked = {
- .name = 0x8c1b8fb4,
- .id = "contacts.Blocked"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_contacts_blocked = {
- .name = 0x73e4704b,
- .id = "Bare_contacts.Blocked",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_contacts_contacts = {
- .name = 0xd8c02560,
- .id = "contacts.Contacts"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_contacts_contacts = {
- .name = 0x273fda9f,
- .id = "Bare_contacts.Contacts",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_contacts_found = {
- .name = 0x0566000e,
- .id = "contacts.Found"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_contacts_found = {
- .name = 0xfa99fff1,
- .id = "Bare_contacts.Found",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_contacts_imported_contacts = {
- .name = 0xad524315,
- .id = "contacts.ImportedContacts"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_contacts_imported_contacts = {
- .name = 0x52adbcea,
- .id = "Bare_contacts.ImportedContacts",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_contacts_link = {
- .name = 0x3ace484c,
- .id = "contacts.Link"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_contacts_link = {
- .name = 0xc531b7b3,
- .id = "Bare_contacts.Link",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_contacts_suggested = {
- .name = 0x5649dcc5,
- .id = "contacts.Suggested"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_contacts_suggested = {
- .name = 0xa9b6233a,
- .id = "Bare_contacts.Suggested",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_geochats_located = {
- .name = 0x48feb267,
- .id = "geochats.Located"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_geochats_located = {
- .name = 0xb7014d98,
- .id = "Bare_geochats.Located",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_geochats_messages = {
- .name = 0x6d0a0e59,
- .id = "geochats.Messages"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_geochats_messages = {
- .name = 0x92f5f1a6,
- .id = "Bare_geochats.Messages",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_geochats_stated_message = {
- .name = 0x17b1578b,
- .id = "geochats.StatedMessage"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_geochats_stated_message = {
- .name = 0xe84ea874,
- .id = "Bare_geochats.StatedMessage",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_help_app_update = {
- .name = 0x4ddd9627,
- .id = "help.AppUpdate"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_help_app_update = {
- .name = 0xb22269d8,
- .id = "Bare_help.AppUpdate",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_help_invite_text = {
- .name = 0x18cb9f78,
- .id = "help.InviteText"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_help_invite_text = {
- .name = 0xe7346087,
- .id = "Bare_help.InviteText",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_help_support = {
- .name = 0x17c6b5f6,
- .id = "help.Support"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_help_support = {
- .name = 0xe8394a09,
- .id = "Bare_help.Support",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_affected_history = {
- .name = 0xb45c69d1,
- .id = "messages.AffectedHistory"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_affected_history = {
- .name = 0x4ba3962e,
- .id = "Bare_messages.AffectedHistory",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_affected_messages = {
- .name = 0x84d19185,
- .id = "messages.AffectedMessages"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_affected_messages = {
- .name = 0x7b2e6e7a,
- .id = "Bare_messages.AffectedMessages",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_all_stickers = {
- .name = 0xb485502f,
- .id = "messages.AllStickers"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_all_stickers = {
- .name = 0x4b7aafd0,
- .id = "Bare_messages.AllStickers",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_chat_full = {
- .name = 0xe5d7d19c,
- .id = "messages.ChatFull"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_chat_full = {
- .name = 0x1a282e63,
- .id = "Bare_messages.ChatFull",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_chats = {
- .name = 0x64ff9fd5,
- .id = "messages.Chats"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_chats = {
- .name = 0x9b00602a,
- .id = "Bare_messages.Chats",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_dh_config = {
- .name = 0xecc058e8,
- .id = "messages.DhConfig"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_dh_config = {
- .name = 0x133fa717,
- .id = "Bare_messages.DhConfig",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_dialogs = {
- .name = 0x645af8b3,
- .id = "messages.Dialogs"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_dialogs = {
- .name = 0x9ba5074c,
- .id = "Bare_messages.Dialogs",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_message = {
- .name = 0x3f4e0648,
- .id = "messages.Message"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_message = {
- .name = 0xc0b1f9b7,
- .id = "Bare_messages.Message",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_messages = {
- .name = 0x8735e464,
- .id = "messages.Messages"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_messages = {
- .name = 0x78ca1b9b,
- .id = "Bare_messages.Messages",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_sent_encrypted_message = {
- .name = 0xc29c7607,
- .id = "messages.SentEncryptedMessage"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_sent_encrypted_message = {
- .name = 0x3d6389f8,
- .id = "Bare_messages.SentEncryptedMessage",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_sent_message = {
- .name = 0x799ce190,
- .id = "messages.SentMessage"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_sent_message = {
- .name = 0x86631e6f,
- .id = "Bare_messages.SentMessage",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_sticker_set = {
- .name = 0xb60a24a6,
- .id = "messages.StickerSet"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_sticker_set = {
- .name = 0x49f5db59,
- .id = "Bare_messages.StickerSet",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_messages_stickers = {
- .name = 0x7bfa5710,
- .id = "messages.Stickers"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_messages_stickers = {
- .name = 0x8405a8ef,
- .id = "Bare_messages.Stickers",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_photos_photo = {
- .name = 0x20212ca8,
- .id = "photos.Photo"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_photos_photo = {
- .name = 0xdfded357,
- .id = "Bare_photos.Photo",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_photos_photos = {
- .name = 0x98cf75f1,
- .id = "photos.Photos"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_photos_photos = {
- .name = 0x67308a0e,
- .id = "Bare_photos.Photos",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_storage_file_type = {
- .name = 0x3e2838a8,
- .id = "storage.FileType"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_storage_file_type = {
- .name = 0xc1d7c757,
- .id = "Bare_storage.FileType",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_updates_difference = {
- .name = 0xf57a2419,
- .id = "updates.Difference"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_updates_difference = {
- .name = 0x0a85dbe6,
- .id = "Bare_updates.Difference",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_updates_state = {
- .name = 0xa56c2a3e,
- .id = "updates.State"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_updates_state = {
- .name = 0x5a93d5c1,
- .id = "Bare_updates.State",
- .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_upload_file = {
- .name = 0x096a18d5,
- .id = "upload.File"
-, .params_num = 0,
- .params_types = 0
-};
-struct tl_type_descr tl_type_bare_upload_file = {
- .name = 0xf695e72a,
- .id = "Bare_upload.File",
- .params_num = 0,
- .params_types = 0
-};
diff --git a/protocols/Telegram/src/tgl/auto/auto-types.h b/protocols/Telegram/src/tgl/auto/auto-types.h
deleted file mode 100644
index 74e8de9039..0000000000
--- a/protocols/Telegram/src/tgl/auto/auto-types.h
+++ /dev/null
@@ -1,1589 +0,0 @@
-#ifndef __AUTO_TYPES_H__
-#define __AUTO_TYPES_H__
-#ifdef _MSC_VER
-#include "..\auto.h"
-#else
-#include "auto.h"
-#endif
-extern struct tl_type_descr tl_type_account_days_t_t_l;
-extern struct tl_type_descr tl_type_bare_account_days_t_t_l;
-extern struct tl_type_descr tl_type_audio;
-extern struct tl_type_descr tl_type_bare_audio;
-extern struct tl_type_descr tl_type_authorization;
-extern struct tl_type_descr tl_type_bare_authorization;
-extern struct tl_type_descr tl_type_bool;
-extern struct tl_type_descr tl_type_bare_bool;
-extern struct tl_type_descr tl_type_bot_command;
-extern struct tl_type_descr tl_type_bare_bot_command;
-extern struct tl_type_descr tl_type_bot_info;
-extern struct tl_type_descr tl_type_bare_bot_info;
-extern struct tl_type_descr tl_type_bytes;
-extern struct tl_type_descr tl_type_bare_bytes;
-extern struct tl_type_descr tl_type_chat;
-extern struct tl_type_descr tl_type_bare_chat;
-extern struct tl_type_descr tl_type_chat_full;
-extern struct tl_type_descr tl_type_bare_chat_full;
-extern struct tl_type_descr tl_type_chat_invite;
-extern struct tl_type_descr tl_type_bare_chat_invite;
-extern struct tl_type_descr tl_type_chat_located;
-extern struct tl_type_descr tl_type_bare_chat_located;
-extern struct tl_type_descr tl_type_chat_participant;
-extern struct tl_type_descr tl_type_bare_chat_participant;
-extern struct tl_type_descr tl_type_chat_participants;
-extern struct tl_type_descr tl_type_bare_chat_participants;
-extern struct tl_type_descr tl_type_chat_photo;
-extern struct tl_type_descr tl_type_bare_chat_photo;
-extern struct tl_type_descr tl_type_client_d_h_inner_data;
-extern struct tl_type_descr tl_type_bare_client_d_h_inner_data;
-extern struct tl_type_descr tl_type_config;
-extern struct tl_type_descr tl_type_bare_config;
-extern struct tl_type_descr tl_type_contact;
-extern struct tl_type_descr tl_type_bare_contact;
-extern struct tl_type_descr tl_type_contact_blocked;
-extern struct tl_type_descr tl_type_bare_contact_blocked;
-extern struct tl_type_descr tl_type_contact_found;
-extern struct tl_type_descr tl_type_bare_contact_found;
-extern struct tl_type_descr tl_type_contact_link;
-extern struct tl_type_descr tl_type_bare_contact_link;
-extern struct tl_type_descr tl_type_contact_status;
-extern struct tl_type_descr tl_type_bare_contact_status;
-extern struct tl_type_descr tl_type_contact_suggested;
-extern struct tl_type_descr tl_type_bare_contact_suggested;
-extern struct tl_type_descr tl_type_dc_option;
-extern struct tl_type_descr tl_type_bare_dc_option;
-extern struct tl_type_descr tl_type_decrypted_message;
-extern struct tl_type_descr tl_type_bare_decrypted_message;
-extern struct tl_type_descr tl_type_decrypted_message_action;
-extern struct tl_type_descr tl_type_bare_decrypted_message_action;
-extern struct tl_type_descr tl_type_decrypted_message_layer;
-extern struct tl_type_descr tl_type_bare_decrypted_message_layer;
-extern struct tl_type_descr tl_type_decrypted_message_media;
-extern struct tl_type_descr tl_type_bare_decrypted_message_media;
-extern struct tl_type_descr tl_type_dialog;
-extern struct tl_type_descr tl_type_bare_dialog;
-extern struct tl_type_descr tl_type_disabled_feature;
-extern struct tl_type_descr tl_type_bare_disabled_feature;
-extern struct tl_type_descr tl_type_document;
-extern struct tl_type_descr tl_type_bare_document;
-extern struct tl_type_descr tl_type_document_attribute;
-extern struct tl_type_descr tl_type_bare_document_attribute;
-extern struct tl_type_descr tl_type_double;
-extern struct tl_type_descr tl_type_bare_double;
-extern struct tl_type_descr tl_type_encrypted_chat;
-extern struct tl_type_descr tl_type_bare_encrypted_chat;
-extern struct tl_type_descr tl_type_encrypted_file;
-extern struct tl_type_descr tl_type_bare_encrypted_file;
-extern struct tl_type_descr tl_type_encrypted_message;
-extern struct tl_type_descr tl_type_bare_encrypted_message;
-extern struct tl_type_descr tl_type_error;
-extern struct tl_type_descr tl_type_bare_error;
-extern struct tl_type_descr tl_type_exported_chat_invite;
-extern struct tl_type_descr tl_type_bare_exported_chat_invite;
-extern struct tl_type_descr tl_type_file_location;
-extern struct tl_type_descr tl_type_bare_file_location;
-extern struct tl_type_descr tl_type_geo_chat_message;
-extern struct tl_type_descr tl_type_bare_geo_chat_message;
-extern struct tl_type_descr tl_type_geo_point;
-extern struct tl_type_descr tl_type_bare_geo_point;
-extern struct tl_type_descr tl_type_imported_contact;
-extern struct tl_type_descr tl_type_bare_imported_contact;
-extern struct tl_type_descr tl_type_input_app_event;
-extern struct tl_type_descr tl_type_bare_input_app_event;
-extern struct tl_type_descr tl_type_input_audio;
-extern struct tl_type_descr tl_type_bare_input_audio;
-extern struct tl_type_descr tl_type_input_chat_photo;
-extern struct tl_type_descr tl_type_bare_input_chat_photo;
-extern struct tl_type_descr tl_type_input_contact;
-extern struct tl_type_descr tl_type_bare_input_contact;
-extern struct tl_type_descr tl_type_input_document;
-extern struct tl_type_descr tl_type_bare_input_document;
-extern struct tl_type_descr tl_type_input_encrypted_chat;
-extern struct tl_type_descr tl_type_bare_input_encrypted_chat;
-extern struct tl_type_descr tl_type_input_encrypted_file;
-extern struct tl_type_descr tl_type_bare_input_encrypted_file;
-extern struct tl_type_descr tl_type_input_file;
-extern struct tl_type_descr tl_type_bare_input_file;
-extern struct tl_type_descr tl_type_input_file_location;
-extern struct tl_type_descr tl_type_bare_input_file_location;
-extern struct tl_type_descr tl_type_input_geo_chat;
-extern struct tl_type_descr tl_type_bare_input_geo_chat;
-extern struct tl_type_descr tl_type_input_geo_point;
-extern struct tl_type_descr tl_type_bare_input_geo_point;
-extern struct tl_type_descr tl_type_input_media;
-extern struct tl_type_descr tl_type_bare_input_media;
-extern struct tl_type_descr tl_type_input_notify_peer;
-extern struct tl_type_descr tl_type_bare_input_notify_peer;
-extern struct tl_type_descr tl_type_input_peer;
-extern struct tl_type_descr tl_type_bare_input_peer;
-extern struct tl_type_descr tl_type_input_peer_notify_events;
-extern struct tl_type_descr tl_type_bare_input_peer_notify_events;
-extern struct tl_type_descr tl_type_input_peer_notify_settings;
-extern struct tl_type_descr tl_type_bare_input_peer_notify_settings;
-extern struct tl_type_descr tl_type_input_photo;
-extern struct tl_type_descr tl_type_bare_input_photo;
-extern struct tl_type_descr tl_type_input_photo_crop;
-extern struct tl_type_descr tl_type_bare_input_photo_crop;
-extern struct tl_type_descr tl_type_input_privacy_key;
-extern struct tl_type_descr tl_type_bare_input_privacy_key;
-extern struct tl_type_descr tl_type_input_privacy_rule;
-extern struct tl_type_descr tl_type_bare_input_privacy_rule;
-extern struct tl_type_descr tl_type_input_sticker_set;
-extern struct tl_type_descr tl_type_bare_input_sticker_set;
-extern struct tl_type_descr tl_type_input_user;
-extern struct tl_type_descr tl_type_bare_input_user;
-extern struct tl_type_descr tl_type_input_video;
-extern struct tl_type_descr tl_type_bare_input_video;
-extern struct tl_type_descr tl_type_int;
-extern struct tl_type_descr tl_type_bare_int;
-extern struct tl_type_descr tl_type_int128;
-extern struct tl_type_descr tl_type_bare_int128;
-extern struct tl_type_descr tl_type_int256;
-extern struct tl_type_descr tl_type_bare_int256;
-extern struct tl_type_descr tl_type_keyboard_button;
-extern struct tl_type_descr tl_type_bare_keyboard_button;
-extern struct tl_type_descr tl_type_keyboard_button_row;
-extern struct tl_type_descr tl_type_bare_keyboard_button_row;
-extern struct tl_type_descr tl_type_long;
-extern struct tl_type_descr tl_type_bare_long;
-extern struct tl_type_descr tl_type_message;
-extern struct tl_type_descr tl_type_bare_message;
-extern struct tl_type_descr tl_type_message_action;
-extern struct tl_type_descr tl_type_bare_message_action;
-extern struct tl_type_descr tl_type_message_media;
-extern struct tl_type_descr tl_type_bare_message_media;
-extern struct tl_type_descr tl_type_messages_filter;
-extern struct tl_type_descr tl_type_bare_messages_filter;
-extern struct tl_type_descr tl_type_nearest_dc;
-extern struct tl_type_descr tl_type_bare_nearest_dc;
-extern struct tl_type_descr tl_type_notify_peer;
-extern struct tl_type_descr tl_type_bare_notify_peer;
-extern struct tl_type_descr tl_type_null;
-extern struct tl_type_descr tl_type_bare_null;
-extern struct tl_type_descr tl_type_p_q_inner_data;
-extern struct tl_type_descr tl_type_bare_p_q_inner_data;
-extern struct tl_type_descr tl_type_peer;
-extern struct tl_type_descr tl_type_bare_peer;
-extern struct tl_type_descr tl_type_peer_notify_events;
-extern struct tl_type_descr tl_type_bare_peer_notify_events;
-extern struct tl_type_descr tl_type_peer_notify_settings;
-extern struct tl_type_descr tl_type_bare_peer_notify_settings;
-extern struct tl_type_descr tl_type_photo;
-extern struct tl_type_descr tl_type_bare_photo;
-extern struct tl_type_descr tl_type_photo_size;
-extern struct tl_type_descr tl_type_bare_photo_size;
-extern struct tl_type_descr tl_type_privacy_key;
-extern struct tl_type_descr tl_type_bare_privacy_key;
-extern struct tl_type_descr tl_type_privacy_rule;
-extern struct tl_type_descr tl_type_bare_privacy_rule;
-extern struct tl_type_descr tl_type_received_notify_message;
-extern struct tl_type_descr tl_type_bare_received_notify_message;
-extern struct tl_type_descr tl_type_reply_markup;
-extern struct tl_type_descr tl_type_bare_reply_markup;
-extern struct tl_type_descr tl_type_res_p_q;
-extern struct tl_type_descr tl_type_bare_res_p_q;
-extern struct tl_type_descr tl_type_send_message_action;
-extern struct tl_type_descr tl_type_bare_send_message_action;
-extern struct tl_type_descr tl_type_server_d_h_params;
-extern struct tl_type_descr tl_type_bare_server_d_h_params;
-extern struct tl_type_descr tl_type_server_d_h_inner_data;
-extern struct tl_type_descr tl_type_bare_server_d_h_inner_data;
-extern struct tl_type_descr tl_type_set_client_d_h_params_answer;
-extern struct tl_type_descr tl_type_bare_set_client_d_h_params_answer;
-extern struct tl_type_descr tl_type_sticker_pack;
-extern struct tl_type_descr tl_type_bare_sticker_pack;
-extern struct tl_type_descr tl_type_sticker_set;
-extern struct tl_type_descr tl_type_bare_sticker_set;
-extern struct tl_type_descr tl_type_string;
-extern struct tl_type_descr tl_type_bare_string;
-extern struct tl_type_descr tl_type_update;
-extern struct tl_type_descr tl_type_bare_update;
-extern struct tl_type_descr tl_type_updates;
-extern struct tl_type_descr tl_type_bare_updates;
-extern struct tl_type_descr tl_type_user;
-extern struct tl_type_descr tl_type_bare_user;
-extern struct tl_type_descr tl_type_user_full;
-extern struct tl_type_descr tl_type_bare_user_full;
-extern struct tl_type_descr tl_type_user_profile_photo;
-extern struct tl_type_descr tl_type_bare_user_profile_photo;
-extern struct tl_type_descr tl_type_user_status;
-extern struct tl_type_descr tl_type_bare_user_status;
-extern struct tl_type_descr tl_type_vector;
-extern struct tl_type_descr tl_type_bare_vector;
-extern struct tl_type_descr tl_type_video;
-extern struct tl_type_descr tl_type_bare_video;
-extern struct tl_type_descr tl_type_wall_paper;
-extern struct tl_type_descr tl_type_bare_wall_paper;
-extern struct tl_type_descr tl_type_web_page;
-extern struct tl_type_descr tl_type_bare_web_page;
-extern struct tl_type_descr tl_type_account_authorizations;
-extern struct tl_type_descr tl_type_bare_account_authorizations;
-extern struct tl_type_descr tl_type_account_password;
-extern struct tl_type_descr tl_type_bare_account_password;
-extern struct tl_type_descr tl_type_account_password_input_settings;
-extern struct tl_type_descr tl_type_bare_account_password_input_settings;
-extern struct tl_type_descr tl_type_account_password_settings;
-extern struct tl_type_descr tl_type_bare_account_password_settings;
-extern struct tl_type_descr tl_type_account_privacy_rules;
-extern struct tl_type_descr tl_type_bare_account_privacy_rules;
-extern struct tl_type_descr tl_type_account_sent_change_phone_code;
-extern struct tl_type_descr tl_type_bare_account_sent_change_phone_code;
-extern struct tl_type_descr tl_type_auth_authorization;
-extern struct tl_type_descr tl_type_bare_auth_authorization;
-extern struct tl_type_descr tl_type_auth_checked_phone;
-extern struct tl_type_descr tl_type_bare_auth_checked_phone;
-extern struct tl_type_descr tl_type_auth_exported_authorization;
-extern struct tl_type_descr tl_type_bare_auth_exported_authorization;
-extern struct tl_type_descr tl_type_auth_password_recovery;
-extern struct tl_type_descr tl_type_bare_auth_password_recovery;
-extern struct tl_type_descr tl_type_auth_sent_code;
-extern struct tl_type_descr tl_type_bare_auth_sent_code;
-extern struct tl_type_descr tl_type_binlog_encr_key;
-extern struct tl_type_descr tl_type_bare_binlog_encr_key;
-extern struct tl_type_descr tl_type_binlog_update;
-extern struct tl_type_descr tl_type_bare_binlog_update;
-extern struct tl_type_descr tl_type_contacts_blocked;
-extern struct tl_type_descr tl_type_bare_contacts_blocked;
-extern struct tl_type_descr tl_type_contacts_contacts;
-extern struct tl_type_descr tl_type_bare_contacts_contacts;
-extern struct tl_type_descr tl_type_contacts_found;
-extern struct tl_type_descr tl_type_bare_contacts_found;
-extern struct tl_type_descr tl_type_contacts_imported_contacts;
-extern struct tl_type_descr tl_type_bare_contacts_imported_contacts;
-extern struct tl_type_descr tl_type_contacts_link;
-extern struct tl_type_descr tl_type_bare_contacts_link;
-extern struct tl_type_descr tl_type_contacts_suggested;
-extern struct tl_type_descr tl_type_bare_contacts_suggested;
-extern struct tl_type_descr tl_type_geochats_located;
-extern struct tl_type_descr tl_type_bare_geochats_located;
-extern struct tl_type_descr tl_type_geochats_messages;
-extern struct tl_type_descr tl_type_bare_geochats_messages;
-extern struct tl_type_descr tl_type_geochats_stated_message;
-extern struct tl_type_descr tl_type_bare_geochats_stated_message;
-extern struct tl_type_descr tl_type_help_app_update;
-extern struct tl_type_descr tl_type_bare_help_app_update;
-extern struct tl_type_descr tl_type_help_invite_text;
-extern struct tl_type_descr tl_type_bare_help_invite_text;
-extern struct tl_type_descr tl_type_help_support;
-extern struct tl_type_descr tl_type_bare_help_support;
-extern struct tl_type_descr tl_type_messages_affected_history;
-extern struct tl_type_descr tl_type_bare_messages_affected_history;
-extern struct tl_type_descr tl_type_messages_affected_messages;
-extern struct tl_type_descr tl_type_bare_messages_affected_messages;
-extern struct tl_type_descr tl_type_messages_all_stickers;
-extern struct tl_type_descr tl_type_bare_messages_all_stickers;
-extern struct tl_type_descr tl_type_messages_chat_full;
-extern struct tl_type_descr tl_type_bare_messages_chat_full;
-extern struct tl_type_descr tl_type_messages_chats;
-extern struct tl_type_descr tl_type_bare_messages_chats;
-extern struct tl_type_descr tl_type_messages_dh_config;
-extern struct tl_type_descr tl_type_bare_messages_dh_config;
-extern struct tl_type_descr tl_type_messages_dialogs;
-extern struct tl_type_descr tl_type_bare_messages_dialogs;
-extern struct tl_type_descr tl_type_messages_message;
-extern struct tl_type_descr tl_type_bare_messages_message;
-extern struct tl_type_descr tl_type_messages_messages;
-extern struct tl_type_descr tl_type_bare_messages_messages;
-extern struct tl_type_descr tl_type_messages_sent_encrypted_message;
-extern struct tl_type_descr tl_type_bare_messages_sent_encrypted_message;
-extern struct tl_type_descr tl_type_messages_sent_message;
-extern struct tl_type_descr tl_type_bare_messages_sent_message;
-extern struct tl_type_descr tl_type_messages_sticker_set;
-extern struct tl_type_descr tl_type_bare_messages_sticker_set;
-extern struct tl_type_descr tl_type_messages_stickers;
-extern struct tl_type_descr tl_type_bare_messages_stickers;
-extern struct tl_type_descr tl_type_photos_photo;
-extern struct tl_type_descr tl_type_bare_photos_photo;
-extern struct tl_type_descr tl_type_photos_photos;
-extern struct tl_type_descr tl_type_bare_photos_photos;
-extern struct tl_type_descr tl_type_storage_file_type;
-extern struct tl_type_descr tl_type_bare_storage_file_type;
-extern struct tl_type_descr tl_type_updates_difference;
-extern struct tl_type_descr tl_type_bare_updates_difference;
-extern struct tl_type_descr tl_type_updates_state;
-extern struct tl_type_descr tl_type_bare_updates_state;
-extern struct tl_type_descr tl_type_upload_file;
-extern struct tl_type_descr tl_type_bare_upload_file;
-struct tl_ds_account_days_t_t_l {
- int *days;
-};
-struct tl_ds_audio {
- unsigned magic;
- long long *id;
- long long *access_hash;
- int *user_id;
- int *date;
- int *duration;
- struct tl_ds_string *mime_type;
- int *size;
- int *dc_id;
-};
-struct tl_ds_authorization {
- long long *hash;
- int *flags;
- struct tl_ds_string *device_model;
- struct tl_ds_string *platform;
- struct tl_ds_string *system_version;
- int *api_id;
- struct tl_ds_string *app_name;
- struct tl_ds_string *app_version;
- int *date_created;
- int *date_active;
- struct tl_ds_string *ip;
- struct tl_ds_string *country;
- struct tl_ds_string *region;
-};
-struct tl_ds_bool {
- unsigned magic;
-};
-struct tl_ds_bot_command {
- unsigned magic;
- struct tl_ds_string *command;
- struct tl_ds_string *description;
- struct tl_ds_string *params;
-};
-struct tl_ds_bot_info {
- unsigned magic;
- int *user_id;
- int *version;
- struct tl_ds_string *share_text;
- struct tl_ds_string *description;
- struct {
- int *cnt;
- struct tl_ds_bot_command **data;
- } *commands;
-};
-struct tl_ds_bytes {
- int len;
- char *data;
-};
-struct tl_ds_chat {
- unsigned magic;
- int *id;
- struct tl_ds_string *title;
- struct tl_ds_chat_photo *photo;
- int *participants_count;
- int *date;
- struct tl_ds_bool *left;
- int *version;
- long long *access_hash;
- struct tl_ds_string *address;
- struct tl_ds_string *venue;
- struct tl_ds_geo_point *geo;
- struct tl_ds_bool *checked_in;
-};
-struct tl_ds_chat_full {
- int *id;
- struct tl_ds_chat_participants *participants;
- struct tl_ds_photo *chat_photo;
- struct tl_ds_peer_notify_settings *notify_settings;
- struct tl_ds_exported_chat_invite *exported_invite;
- struct {
- int *cnt;
- struct tl_ds_bot_info **data;
- } *bot_info;
-};
-struct tl_ds_chat_invite {
- unsigned magic;
- struct tl_ds_chat *chat;
- struct tl_ds_string *title;
-};
-struct tl_ds_chat_located {
- int *chat_id;
- int *distance;
-};
-struct tl_ds_chat_participant {
- int *user_id;
- int *inviter_id;
- int *date;
-};
-struct tl_ds_chat_participants {
- unsigned magic;
- int *chat_id;
- int *admin_id;
- struct {
- int *cnt;
- struct tl_ds_chat_participant **data;
- } *participants;
- int *version;
-};
-struct tl_ds_chat_photo {
- unsigned magic;
- struct tl_ds_file_location *photo_small;
- struct tl_ds_file_location *photo_big;
-};
-struct tl_ds_client_d_h_inner_data {
- struct tl_ds_int128 *nonce;
- struct tl_ds_int128 *server_nonce;
- long long *retry_id;
- struct tl_ds_string *g_b;
-};
-struct tl_ds_config {
- int *date;
- int *expires;
- struct tl_ds_bool *test_mode;
- int *this_dc;
- struct {
- int *cnt;
- struct tl_ds_dc_option **data;
- } *dc_options;
- int *chat_size_max;
- int *broadcast_size_max;
- int *forwarded_count_max;
- int *online_update_period_ms;
- int *offline_blur_timeout_ms;
- int *offline_idle_timeout_ms;
- int *online_cloud_timeout_ms;
- int *notify_cloud_delay_ms;
- int *notify_default_delay_ms;
- int *chat_big_size;
- int *push_chat_period_ms;
- int *push_chat_limit;
- struct {
- int *cnt;
- struct tl_ds_disabled_feature **data;
- } *disabled_features;
-};
-struct tl_ds_contact {
- int *user_id;
- struct tl_ds_bool *mutual;
-};
-struct tl_ds_contact_blocked {
- int *user_id;
- int *date;
-};
-struct tl_ds_contact_found {
- int *user_id;
-};
-struct tl_ds_contact_link {
- unsigned magic;
-};
-struct tl_ds_contact_status {
- int *user_id;
- struct tl_ds_user_status *status;
-};
-struct tl_ds_contact_suggested {
- int *user_id;
- int *mutual_contacts;
-};
-struct tl_ds_dc_option {
- unsigned magic;
- int *id;
- struct tl_ds_string *hostname;
- struct tl_ds_string *ip_address;
- int *port;
- int *flags;
-};
-struct tl_ds_decrypted_message {
- unsigned magic;
- long long *random_id;
- int *ttl;
- struct tl_ds_string *message;
- struct tl_ds_decrypted_message_media *media;
- struct tl_ds_decrypted_message_action *action;
-};
-struct tl_ds_decrypted_message_action {
- unsigned magic;
- int *ttl_seconds;
- struct {
- int *cnt;
- long long **data;
- } *random_ids;
- int *start_seq_no;
- int *end_seq_no;
- int *layer;
- struct tl_ds_send_message_action *action;
- long long *exchange_id;
- struct tl_ds_string *g_a;
- struct tl_ds_string *g_b;
- long long *key_fingerprint;
-};
-struct tl_ds_decrypted_message_layer {
- struct tl_ds_string *random_bytes;
- int *layer;
- int *in_seq_no;
- int *out_seq_no;
- struct tl_ds_decrypted_message *message;
-};
-struct tl_ds_decrypted_message_media {
- unsigned magic;
- struct tl_ds_string *str_thumb;
- int *thumb_w;
- int *thumb_h;
- int *w;
- int *h;
- int *size;
- struct tl_ds_string *key;
- struct tl_ds_string *iv;
- double *latitude;
- double *longitude;
- struct tl_ds_string *phone_number;
- struct tl_ds_string *first_name;
- struct tl_ds_string *last_name;
- int *user_id;
- struct tl_ds_string *file_name;
- struct tl_ds_string *mime_type;
- int *duration;
- long long *id;
- long long *access_hash;
- int *date;
- struct tl_ds_photo_size *thumb;
- int *dc_id;
- struct {
- int *cnt;
- struct tl_ds_document_attribute **data;
- } *attributes;
-};
-struct tl_ds_dialog {
- struct tl_ds_peer *peer;
- int *top_message;
- int *read_inbox_max_id;
- int *unread_count;
- struct tl_ds_peer_notify_settings *notify_settings;
-};
-struct tl_ds_disabled_feature {
- struct tl_ds_string *feature;
- struct tl_ds_string *description;
-};
-struct tl_ds_document {
- unsigned magic;
- long long *id;
- long long *access_hash;
- int *date;
- struct tl_ds_string *mime_type;
- int *size;
- struct tl_ds_photo_size *thumb;
- int *dc_id;
- struct {
- int *cnt;
- struct tl_ds_document_attribute **data;
- } *attributes;
- int *user_id;
- struct tl_ds_string *file_name;
-};
-struct tl_ds_document_attribute {
- unsigned magic;
- int *w;
- int *h;
- struct tl_ds_string *alt;
- struct tl_ds_input_sticker_set *stickerset;
- int *duration;
- struct tl_ds_string *file_name;
-};
-struct tl_ds_double {
- int : 0;
-};
-struct tl_ds_encrypted_chat {
- unsigned magic;
- int *id;
- long long *access_hash;
- int *date;
- int *admin_id;
- int *participant_id;
- struct tl_ds_string *g_a;
- struct tl_ds_string *g_a_or_b;
- long long *key_fingerprint;
-};
-struct tl_ds_encrypted_file {
- unsigned magic;
- long long *id;
- long long *access_hash;
- int *size;
- int *dc_id;
- int *key_fingerprint;
-};
-struct tl_ds_encrypted_message {
- unsigned magic;
- long long *random_id;
- int *chat_id;
- int *date;
- struct tl_ds_string *bytes;
- struct tl_ds_encrypted_file *file;
-};
-struct tl_ds_error {
- int *code;
- struct tl_ds_string *text;
-};
-struct tl_ds_exported_chat_invite {
- unsigned magic;
- struct tl_ds_string *link;
-};
-struct tl_ds_file_location {
- unsigned magic;
- long long *volume_id;
- int *local_id;
- long long *secret;
- int *dc_id;
-};
-struct tl_ds_geo_chat_message {
- unsigned magic;
- int *chat_id;
- int *id;
- int *from_id;
- int *date;
- struct tl_ds_string *message;
- struct tl_ds_message_media *media;
- struct tl_ds_message_action *action;
-};
-struct tl_ds_geo_point {
- unsigned magic;
- double *longitude;
- double *latitude;
-};
-struct tl_ds_imported_contact {
- int *user_id;
- long long *client_id;
-};
-struct tl_ds_input_app_event {
- double *time;
- struct tl_ds_string *type;
- long long *peer;
- struct tl_ds_string *data;
-};
-struct tl_ds_input_audio {
- unsigned magic;
- long long *id;
- long long *access_hash;
-};
-struct tl_ds_input_chat_photo {
- unsigned magic;
- struct tl_ds_input_file *file;
- struct tl_ds_input_photo_crop *crop;
- struct tl_ds_input_photo *id;
-};
-struct tl_ds_input_contact {
- long long *client_id;
- struct tl_ds_string *phone;
- struct tl_ds_string *first_name;
- struct tl_ds_string *last_name;
-};
-struct tl_ds_input_document {
- unsigned magic;
- long long *id;
- long long *access_hash;
-};
-struct tl_ds_input_encrypted_chat {
- int *chat_id;
- long long *access_hash;
-};
-struct tl_ds_input_encrypted_file {
- unsigned magic;
- long long *id;
- int *parts;
- struct tl_ds_string *md5_checksum;
- int *key_fingerprint;
- long long *access_hash;
-};
-struct tl_ds_input_file {
- unsigned magic;
- long long *id;
- int *parts;
- struct tl_ds_string *name;
- struct tl_ds_string *md5_checksum;
-};
-struct tl_ds_input_file_location {
- unsigned magic;
- long long *volume_id;
- int *local_id;
- long long *secret;
- long long *id;
- long long *access_hash;
-};
-struct tl_ds_input_geo_chat {
- int *chat_id;
- long long *access_hash;
-};
-struct tl_ds_input_geo_point {
- unsigned magic;
- double *latitude;
- double *longitude;
-};
-struct tl_ds_input_media {
- unsigned magic;
- struct tl_ds_input_file *file;
- struct tl_ds_string *caption;
- struct tl_ds_input_photo *id;
- struct tl_ds_input_geo_point *geo_point;
- struct tl_ds_string *phone_number;
- struct tl_ds_string *first_name;
- struct tl_ds_string *last_name;
- int *duration;
- int *w;
- int *h;
- struct tl_ds_input_file *thumb;
- struct tl_ds_input_video *video_id;
- struct tl_ds_string *mime_type;
- struct tl_ds_input_audio *audio_id;
- struct {
- int *cnt;
- struct tl_ds_document_attribute **data;
- } *attributes;
- struct tl_ds_input_document *document_id;
- struct tl_ds_string *title;
- struct tl_ds_string *address;
- struct tl_ds_string *provider;
- struct tl_ds_string *venue_id;
-};
-struct tl_ds_input_notify_peer {
- unsigned magic;
- struct tl_ds_input_peer *peer;
- struct tl_ds_input_geo_chat *geo_peer;
-};
-struct tl_ds_input_peer {
- unsigned magic;
- int *user_id;
- long long *access_hash;
- int *chat_id;
-};
-struct tl_ds_input_peer_notify_events {
- unsigned magic;
-};
-struct tl_ds_input_peer_notify_settings {
- int *mute_until;
- struct tl_ds_string *sound;
- struct tl_ds_bool *show_previews;
- int *events_mask;
-};
-struct tl_ds_input_photo {
- unsigned magic;
- long long *id;
- long long *access_hash;
-};
-struct tl_ds_input_photo_crop {
- unsigned magic;
- double *crop_left;
- double *crop_top;
- double *crop_width;
-};
-struct tl_ds_input_privacy_key {
- int : 0;
-};
-struct tl_ds_input_privacy_rule {
- unsigned magic;
- struct {
- int *cnt;
- struct tl_ds_input_user **data;
- } *users;
-};
-struct tl_ds_input_sticker_set {
- unsigned magic;
- long long *id;
- long long *access_hash;
- struct tl_ds_string *short_name;
-};
-struct tl_ds_input_user {
- unsigned magic;
- int *user_id;
- long long *access_hash;
-};
-struct tl_ds_input_video {
- unsigned magic;
- long long *id;
- long long *access_hash;
-};
-struct tl_ds_int {
- int : 0;
-};
-struct tl_ds_int128 {
- long long *f0;
- long long *f1;
-};
-struct tl_ds_int256 {
- long long *f0;
- long long *f1;
- long long *f2;
- long long *f3;
-};
-struct tl_ds_keyboard_button {
- struct tl_ds_string *text;
-};
-struct tl_ds_keyboard_button_row {
- struct {
- int *cnt;
- struct tl_ds_keyboard_button **data;
- } *buttons;
-};
-struct tl_ds_long {
- int : 0;
-};
-struct tl_ds_message {
- unsigned magic;
- int *id;
- int *flags;
- int *from_id;
- struct tl_ds_peer *to_id;
- int *fwd_from_id;
- int *fwd_date;
- int *reply_to_msg_id;
- int *date;
- struct tl_ds_string *message;
- struct tl_ds_message_media *media;
- struct tl_ds_reply_markup *reply_markup;
- struct tl_ds_message_action *action;
-};
-struct tl_ds_message_action {
- unsigned magic;
- struct tl_ds_string *title;
- struct {
- int *cnt;
- int **data;
- } *users;
- struct tl_ds_photo *photo;
- int *user_id;
- struct tl_ds_string *address;
- int *inviter_id;
-};
-struct tl_ds_message_media {
- unsigned magic;
- struct tl_ds_photo *photo;
- struct tl_ds_string *caption;
- struct tl_ds_video *video;
- struct tl_ds_geo_point *geo;
- struct tl_ds_string *phone_number;
- struct tl_ds_string *first_name;
- struct tl_ds_string *last_name;
- int *user_id;
- struct tl_ds_document *document;
- struct tl_ds_audio *audio;
- struct tl_ds_web_page *webpage;
- struct tl_ds_string *title;
- struct tl_ds_string *address;
- struct tl_ds_string *provider;
- struct tl_ds_string *venue_id;
-};
-struct tl_ds_messages_filter {
- unsigned magic;
-};
-struct tl_ds_nearest_dc {
- struct tl_ds_string *country;
- int *this_dc;
- int *nearest_dc;
-};
-struct tl_ds_notify_peer {
- unsigned magic;
- struct tl_ds_peer *peer;
-};
-struct tl_ds_null {
- int : 0;
-};
-struct tl_ds_p_q_inner_data {
- unsigned magic;
- struct tl_ds_string *pq;
- struct tl_ds_string *p;
- struct tl_ds_string *q;
- struct tl_ds_int128 *nonce;
- struct tl_ds_int128 *server_nonce;
- struct tl_ds_int256 *new_nonce;
- int *expires_in;
-};
-struct tl_ds_peer {
- unsigned magic;
- int *user_id;
- int *chat_id;
-};
-struct tl_ds_peer_notify_events {
- unsigned magic;
-};
-struct tl_ds_peer_notify_settings {
- unsigned magic;
- int *mute_until;
- struct tl_ds_string *sound;
- struct tl_ds_bool *show_previews;
- int *events_mask;
-};
-struct tl_ds_photo {
- unsigned magic;
- long long *id;
- long long *access_hash;
- int *user_id;
- int *date;
- struct tl_ds_geo_point *geo;
- struct {
- int *cnt;
- struct tl_ds_photo_size **data;
- } *sizes;
- struct tl_ds_string *caption;
-};
-struct tl_ds_photo_size {
- unsigned magic;
- struct tl_ds_string *type;
- struct tl_ds_file_location *location;
- int *w;
- int *h;
- int *size;
- struct tl_ds_string *bytes;
-};
-struct tl_ds_privacy_key {
- int : 0;
-};
-struct tl_ds_privacy_rule {
- unsigned magic;
- struct {
- int *cnt;
- int **data;
- } *users;
-};
-struct tl_ds_received_notify_message {
- int *id;
- int *flags;
-};
-struct tl_ds_reply_markup {
- unsigned magic;
- int *flags;
- struct {
- int *cnt;
- struct tl_ds_keyboard_button_row **data;
- } *rows;
-};
-struct tl_ds_res_p_q {
- struct tl_ds_int128 *nonce;
- struct tl_ds_int128 *server_nonce;
- struct tl_ds_string *pq;
- struct {
- int *cnt;
- long long **data;
- } *server_public_key_fingerprints;
-};
-struct tl_ds_send_message_action {
- unsigned magic;
- int *progress;
-};
-struct tl_ds_server_d_h_params {
- unsigned magic;
- struct tl_ds_int128 *nonce;
- struct tl_ds_int128 *server_nonce;
- struct tl_ds_int128 *new_nonce_hash;
- struct tl_ds_string *encrypted_answer;
-};
-struct tl_ds_server_d_h_inner_data {
- struct tl_ds_int128 *nonce;
- struct tl_ds_int128 *server_nonce;
- int *g;
- struct tl_ds_string *dh_prime;
- struct tl_ds_string *g_a;
- int *server_time;
-};
-struct tl_ds_set_client_d_h_params_answer {
- unsigned magic;
- struct tl_ds_int128 *nonce;
- struct tl_ds_int128 *server_nonce;
- struct tl_ds_int128 *new_nonce_hash1;
- struct tl_ds_int128 *new_nonce_hash2;
- struct tl_ds_int128 *new_nonce_hash3;
-};
-struct tl_ds_sticker_pack {
- struct tl_ds_string *emoticon;
- struct {
- int *cnt;
- long long **data;
- } *documents;
-};
-struct tl_ds_sticker_set {
- long long *id;
- long long *access_hash;
- struct tl_ds_string *title;
- struct tl_ds_string *short_name;
-};
-struct tl_ds_string {
- int len;
- char *data;
-};
-struct tl_ds_update {
- unsigned magic;
- struct tl_ds_message *message;
- int *pts;
- int *pts_count;
- int *id;
- long long *random_id;
- struct {
- int *cnt;
- int **data;
- } *messages;
- int *user_id;
- struct tl_ds_send_message_action *action;
- int *chat_id;
- struct tl_ds_chat_participants *participants;
- struct tl_ds_user_status *status;
- struct tl_ds_string *first_name;
- struct tl_ds_string *last_name;
- struct tl_ds_string *username;
- int *date;
- struct tl_ds_user_profile_photo *photo;
- struct tl_ds_bool *previous;
- struct tl_ds_contact_link *my_link;
- struct tl_ds_contact_link *foreign_link;
- long long *auth_key_id;
- struct tl_ds_string *device;
- struct tl_ds_string *location;
- struct tl_ds_geo_chat_message *geo_message;
- struct tl_ds_encrypted_message *encr_message;
- int *qts;
- struct tl_ds_encrypted_chat *encr_chat;
- int *max_date;
- int *inviter_id;
- int *version;
- struct {
- int *cnt;
- struct tl_ds_dc_option **data;
- } *dc_options;
- struct tl_ds_bool *blocked;
- struct tl_ds_notify_peer *notify_peer;
- struct tl_ds_peer_notify_settings *notify_settings;
- struct tl_ds_string *type;
- struct tl_ds_string *message_text;
- struct tl_ds_message_media *media;
- struct tl_ds_bool *popup;
- struct tl_ds_privacy_key *key;
- struct {
- int *cnt;
- struct tl_ds_privacy_rule **data;
- } *rules;
- struct tl_ds_string *phone;
- struct tl_ds_peer *peer;
- int *max_id;
- struct tl_ds_web_page *webpage;
-};
-struct tl_ds_updates {
- unsigned magic;
- int *flags;
- int *id;
- int *user_id;
- struct tl_ds_string *message;
- int *pts;
- int *pts_count;
- int *date;
- int *fwd_from_id;
- int *fwd_date;
- int *reply_to_msg_id;
- int *from_id;
- int *chat_id;
- struct tl_ds_update *update;
- struct {
- int *cnt;
- struct tl_ds_update **data;
- } *updates;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
- struct {
- int *cnt;
- struct tl_ds_chat **data;
- } *chats;
- int *seq_start;
- int *seq;
-};
-struct tl_ds_user {
- unsigned magic;
- int *id;
- int *flags;
- long long *access_hash;
- struct tl_ds_string *first_name;
- struct tl_ds_string *last_name;
- struct tl_ds_string *username;
- struct tl_ds_string *phone;
- struct tl_ds_user_profile_photo *photo;
- struct tl_ds_user_status *status;
- int *bot_info_version;
-};
-struct tl_ds_user_full {
- struct tl_ds_user *user;
- struct tl_ds_contacts_link *link;
- struct tl_ds_photo *profile_photo;
- struct tl_ds_peer_notify_settings *notify_settings;
- struct tl_ds_bool *blocked;
- struct tl_ds_bot_info *bot_info;
-};
-struct tl_ds_user_profile_photo {
- unsigned magic;
- long long *photo_id;
- struct tl_ds_file_location *photo_small;
- struct tl_ds_file_location *photo_big;
-};
-struct tl_ds_user_status {
- unsigned magic;
- int *expires;
- int *was_online;
-};
-struct tl_ds_vector {
- int *f1;
- void **f2;
-};
-struct tl_ds_video {
- unsigned magic;
- long long *id;
- long long *access_hash;
- int *user_id;
- int *date;
- int *duration;
- int *size;
- struct tl_ds_photo_size *thumb;
- int *dc_id;
- int *w;
- int *h;
- struct tl_ds_string *caption;
- struct tl_ds_string *mime_type;
-};
-struct tl_ds_wall_paper {
- unsigned magic;
- int *id;
- struct tl_ds_string *title;
- struct {
- int *cnt;
- struct tl_ds_photo_size **data;
- } *sizes;
- int *color;
- int *bg_color;
-};
-struct tl_ds_web_page {
- unsigned magic;
- long long *id;
- int *date;
- int *flags;
- struct tl_ds_string *url;
- struct tl_ds_string *display_url;
- struct tl_ds_string *type;
- struct tl_ds_string *site_name;
- struct tl_ds_string *title;
- struct tl_ds_string *description;
- struct tl_ds_photo *photo;
- struct tl_ds_string *embed_url;
- struct tl_ds_string *embed_type;
- int *embed_width;
- int *embed_height;
- int *duration;
- struct tl_ds_string *author;
-};
-struct tl_ds_account_authorizations {
- struct {
- int *cnt;
- struct tl_ds_authorization **data;
- } *authorizations;
-};
-struct tl_ds_account_password {
- unsigned magic;
- struct tl_ds_string *new_salt;
- struct tl_ds_string *email_unconfirmed_pattern;
- struct tl_ds_string *current_salt;
- struct tl_ds_string *hint;
- struct tl_ds_bool *has_recovery;
-};
-struct tl_ds_account_password_input_settings {
- int *flags;
- struct tl_ds_string *new_salt;
- struct tl_ds_string *new_password_hash;
- struct tl_ds_string *hint;
- struct tl_ds_string *email;
-};
-struct tl_ds_account_password_settings {
- struct tl_ds_string *email;
-};
-struct tl_ds_account_privacy_rules {
- struct {
- int *cnt;
- struct tl_ds_privacy_rule **data;
- } *rules;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
-};
-struct tl_ds_account_sent_change_phone_code {
- struct tl_ds_string *phone_code_hash;
- int *send_call_timeout;
-};
-struct tl_ds_auth_authorization {
- struct tl_ds_user *user;
-};
-struct tl_ds_auth_checked_phone {
- struct tl_ds_bool *phone_registered;
-};
-struct tl_ds_auth_exported_authorization {
- int *id;
- struct tl_ds_string *bytes;
-};
-struct tl_ds_auth_password_recovery {
- struct tl_ds_string *email_pattern;
-};
-struct tl_ds_auth_sent_code {
- unsigned magic;
- struct tl_ds_bool *phone_registered;
- struct tl_ds_string *phone_code_hash;
- int *send_call_timeout;
- struct tl_ds_bool *is_password;
-};
-struct tl_ds_binlog_encr_key {
- int **key;
-};
-struct tl_ds_binlog_update {
- unsigned magic;
- int *dc;
- struct tl_ds_string *name;
- struct tl_ds_string *ip;
- int *port;
- int *flags;
- struct tl_ds_binlog_encr_key *key;
- int *id;
- int *root;
- struct tl_ds_binlog_encr_key *prime;
- int *version;
- int *pts;
- int *qts;
- int *date;
- int *seq;
- long long *access_hash;
- int *admin;
- int *user_id;
- struct tl_ds_binlog_encr_key *g_key;
- int *state;
- int *ttl;
- int *layer;
- int *in_seq_no;
- int *last_in_seq_no;
- int *out_seq_no;
- long long *key_fingerprint;
- long long *exchange_id;
- struct tl_ds_string *first_name;
- struct tl_ds_string *last_name;
- struct tl_ds_string *phone;
- struct tl_ds_string *username;
- struct tl_ds_photo *photo;
- struct tl_ds_string *real_first_name;
- struct tl_ds_string *real_last_name;
- struct tl_ds_user_profile_photo *user_photo;
- int *last_read_in;
- int *last_read_out;
- struct tl_ds_bot_info *bot_info;
- struct tl_ds_string *title;
- int *user_num;
- struct {
- int *cnt;
- struct tl_ds_chat_participant **data;
- } *participants;
- struct tl_ds_chat_photo *chat_photo;
- int *inviter_id;
- long long *old_id;
- int *new_id;
- long long *lid;
- int *from_id;
- int *to_type;
- int *to_id;
- int *fwd_from_id;
- int *fwd_date;
- struct tl_ds_string *message;
- struct tl_ds_message_media *media;
- struct tl_ds_message_action *action;
- int *reply_id;
- struct tl_ds_reply_markup *reply_markup;
- struct tl_ds_decrypted_message_media *encr_media;
- struct tl_ds_decrypted_message_action *encr_action;
- struct tl_ds_encrypted_file *file;
-};
-struct tl_ds_contacts_blocked {
- unsigned magic;
- struct {
- int *cnt;
- struct tl_ds_contact_blocked **data;
- } *blocked;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
- int *count;
-};
-struct tl_ds_contacts_contacts {
- unsigned magic;
- struct {
- int *cnt;
- struct tl_ds_contact **data;
- } *contacts;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
-};
-struct tl_ds_contacts_found {
- struct {
- int *cnt;
- struct tl_ds_contact_found **data;
- } *results;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
-};
-struct tl_ds_contacts_imported_contacts {
- struct {
- int *cnt;
- struct tl_ds_imported_contact **data;
- } *imported;
- struct {
- int *cnt;
- long long **data;
- } *retry_contacts;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
-};
-struct tl_ds_contacts_link {
- struct tl_ds_contact_link *my_link;
- struct tl_ds_contact_link *foreign_link;
- struct tl_ds_user *user;
-};
-struct tl_ds_contacts_suggested {
- struct {
- int *cnt;
- struct tl_ds_contact_suggested **data;
- } *results;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
-};
-struct tl_ds_geochats_located {
- struct {
- int *cnt;
- struct tl_ds_chat_located **data;
- } *results;
- struct {
- int *cnt;
- struct tl_ds_geo_chat_message **data;
- } *messages;
- struct {
- int *cnt;
- struct tl_ds_chat **data;
- } *chats;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
-};
-struct tl_ds_geochats_messages {
- unsigned magic;
- struct {
- int *cnt;
- struct tl_ds_geo_chat_message **data;
- } *messages;
- struct {
- int *cnt;
- struct tl_ds_chat **data;
- } *chats;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
- int *count;
-};
-struct tl_ds_geochats_stated_message {
- struct tl_ds_geo_chat_message *message;
- struct {
- int *cnt;
- struct tl_ds_chat **data;
- } *chats;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
- int *seq;
-};
-struct tl_ds_help_app_update {
- unsigned magic;
- int *id;
- struct tl_ds_bool *critical;
- struct tl_ds_string *url;
- struct tl_ds_string *text;
-};
-struct tl_ds_help_invite_text {
- struct tl_ds_string *message;
-};
-struct tl_ds_help_support {
- struct tl_ds_string *phone_number;
- struct tl_ds_user *user;
-};
-struct tl_ds_messages_affected_history {
- int *pts;
- int *pts_count;
- int *offset;
-};
-struct tl_ds_messages_affected_messages {
- int *pts;
- int *pts_count;
-};
-struct tl_ds_messages_all_stickers {
- unsigned magic;
- struct tl_ds_string *hash;
- struct {
- int *cnt;
- struct tl_ds_sticker_pack **data;
- } *packs;
- struct {
- int *cnt;
- struct tl_ds_sticker_set **data;
- } *sets;
- struct {
- int *cnt;
- struct tl_ds_document **data;
- } *documents;
-};
-struct tl_ds_messages_chat_full {
- struct tl_ds_chat_full *full_chat;
- struct {
- int *cnt;
- struct tl_ds_chat **data;
- } *chats;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
-};
-struct tl_ds_messages_chats {
- struct {
- int *cnt;
- struct tl_ds_chat **data;
- } *chats;
-};
-struct tl_ds_messages_dh_config {
- unsigned magic;
- struct tl_ds_string *random;
- int *g;
- struct tl_ds_string *p;
- int *version;
-};
-struct tl_ds_messages_dialogs {
- unsigned magic;
- struct {
- int *cnt;
- struct tl_ds_dialog **data;
- } *dialogs;
- struct {
- int *cnt;
- struct tl_ds_message **data;
- } *messages;
- struct {
- int *cnt;
- struct tl_ds_chat **data;
- } *chats;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
- int *count;
-};
-struct tl_ds_messages_message {
- int : 0;
-};
-struct tl_ds_messages_messages {
- unsigned magic;
- struct {
- int *cnt;
- struct tl_ds_message **data;
- } *messages;
- struct {
- int *cnt;
- struct tl_ds_chat **data;
- } *chats;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
- int *count;
-};
-struct tl_ds_messages_sent_encrypted_message {
- unsigned magic;
- int *date;
- struct tl_ds_encrypted_file *file;
-};
-struct tl_ds_messages_sent_message {
- unsigned magic;
- int *id;
- int *date;
- struct tl_ds_message_media *media;
- int *pts;
- int *pts_count;
- struct {
- int *cnt;
- struct tl_ds_contacts_link **data;
- } *links;
- int *seq;
-};
-struct tl_ds_messages_sticker_set {
- struct tl_ds_sticker_set *set;
- struct {
- int *cnt;
- struct tl_ds_sticker_pack **data;
- } *packs;
- struct {
- int *cnt;
- struct tl_ds_document **data;
- } *documents;
-};
-struct tl_ds_messages_stickers {
- unsigned magic;
- struct tl_ds_string *hash;
- struct {
- int *cnt;
- struct tl_ds_document **data;
- } *stickers;
-};
-struct tl_ds_photos_photo {
- struct tl_ds_photo *photo;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
-};
-struct tl_ds_photos_photos {
- unsigned magic;
- struct {
- int *cnt;
- struct tl_ds_photo **data;
- } *photos;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
- int *count;
-};
-struct tl_ds_storage_file_type {
- unsigned magic;
-};
-struct tl_ds_updates_difference {
- unsigned magic;
- int *date;
- int *seq;
- struct {
- int *cnt;
- struct tl_ds_message **data;
- } *new_messages;
- struct {
- int *cnt;
- struct tl_ds_encrypted_message **data;
- } *new_encrypted_messages;
- struct {
- int *cnt;
- struct tl_ds_update **data;
- } *other_updates;
- struct {
- int *cnt;
- struct tl_ds_chat **data;
- } *chats;
- struct {
- int *cnt;
- struct tl_ds_user **data;
- } *users;
- struct tl_ds_updates_state *state;
- struct tl_ds_updates_state *intermediate_state;
-};
-struct tl_ds_updates_state {
- int *pts;
- int *qts;
- int *date;
- int *seq;
- int *unread_count;
-};
-struct tl_ds_upload_file {
- struct tl_ds_storage_file_type *type;
- int *mtime;
- struct tl_ds_string *bytes;
-};
-#endif
diff --git a/protocols/Telegram/src/tgl/auto/constants.h b/protocols/Telegram/src/tgl/auto/constants.h
deleted file mode 100644
index 643496f2d2..0000000000
--- a/protocols/Telegram/src/tgl/auto/constants.h
+++ /dev/null
@@ -1,561 +0,0 @@
-/*
- This file is part of telegram-client.
-
- Telegram-client is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- Telegram-client is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this telegram-client. If not, see <http://www.gnu.org/licenses/>.
-
- Copyright Vitaly Valtman 2013
-*/
-#ifndef CONSTANTS_H
-#define CONSTANTS_H
-#define CODE_int 0xa8509bda
-#define CODE_long 0x22076cba
-#define CODE_double 0x2210c154
-#define CODE_string 0xb5286e24
-#define CODE_bytes 0x0ee1379f
-#define CODE_int128 0x7d36c439
-#define CODE_int256 0xf2c798b3
-#define CODE_bool_false 0xbc799737
-#define CODE_bool_true 0x997275b5
-#define CODE_vector 0x1cb5c415
-#define CODE_error 0xc4b9f9bb
-#define CODE_null 0x56730bcc
-#define CODE_input_peer_empty 0x7f3b18ea
-#define CODE_input_peer_self 0x7da07ec9
-#define CODE_input_peer_contact 0x1023dbe8
-#define CODE_input_peer_foreign 0x9b447325
-#define CODE_input_peer_chat 0x179be863
-#define CODE_input_user_empty 0xb98886cf
-#define CODE_input_user_self 0xf7c1b13f
-#define CODE_input_user_contact 0x86e94f65
-#define CODE_input_user_foreign 0x655e74ff
-#define CODE_input_phone_contact 0xf392b7f4
-#define CODE_input_file 0xf52ff27f
-#define CODE_input_media_empty 0x9664f57f
-#define CODE_input_media_uploaded_photo 0xf7aff1c0
-#define CODE_input_media_photo 0xe9bfb4f3
-#define CODE_input_media_geo_point 0xf9c44144
-#define CODE_input_media_contact 0xa6e45987
-#define CODE_input_media_uploaded_video 0xe13fd4bc
-#define CODE_input_media_uploaded_thumb_video 0x96fb97dc
-#define CODE_input_media_video 0x936a4ebd
-#define CODE_input_chat_photo_empty 0x1ca48f57
-#define CODE_input_chat_uploaded_photo 0x94254732
-#define CODE_input_chat_photo 0xb2e1bf08
-#define CODE_input_geo_point_empty 0xe4c123d6
-#define CODE_input_geo_point 0xf3b7acc9
-#define CODE_input_photo_empty 0x1cd7bf0d
-#define CODE_input_photo 0xfb95c6c4
-#define CODE_input_video_empty 0x5508ec75
-#define CODE_input_video 0xee579652
-#define CODE_input_file_location 0x14637196
-#define CODE_input_video_file_location 0x3d0364ec
-#define CODE_input_photo_crop_auto 0xade6b004
-#define CODE_input_photo_crop 0xd9915325
-#define CODE_input_app_event 0x770656a8
-#define CODE_peer_user 0x9db1bc6d
-#define CODE_peer_chat 0xbad0e5bb
-#define CODE_storage_file_unknown 0xaa963b05
-#define CODE_storage_file_jpeg 0x007efe0e
-#define CODE_storage_file_gif 0xcae1aadf
-#define CODE_storage_file_png 0x0a4f63c0
-#define CODE_storage_file_pdf 0xae1e508d
-#define CODE_storage_file_mp3 0x528a0677
-#define CODE_storage_file_mov 0x4b09ebbc
-#define CODE_storage_file_partial 0x40bc6f52
-#define CODE_storage_file_mp4 0xb3cea0e4
-#define CODE_storage_file_webp 0x1081464c
-#define CODE_file_location_unavailable 0x7c596b46
-#define CODE_file_location 0x53d69076
-#define CODE_user_empty 0x200250ba
-#define CODE_user_profile_photo_empty 0x4f11bae1
-#define CODE_user_profile_photo 0xd559d8c8
-#define CODE_user_status_empty 0x09d05049
-#define CODE_user_status_online 0xedb93949
-#define CODE_user_status_offline 0x008c703f
-#define CODE_chat_empty 0x9ba2d800
-#define CODE_chat 0x6e9c9bc7
-#define CODE_chat_forbidden 0xfb0ccc41
-#define CODE_chat_full 0x2e02a614
-#define CODE_chat_participant 0xc8d7493e
-#define CODE_chat_participants_forbidden 0x0fd2bb8a
-#define CODE_chat_participants 0x7841b415
-#define CODE_chat_photo_empty 0x37c1011c
-#define CODE_chat_photo 0x6153276a
-#define CODE_message_empty 0x83e5de54
-#define CODE_message 0xc3060325
-#define CODE_message_service 0x1d86f70e
-#define CODE_message_media_empty 0x3ded6320
-#define CODE_message_media_photo 0x3d8ce53d
-#define CODE_message_media_video 0x5bcf1675
-#define CODE_message_media_geo 0x56e0d474
-#define CODE_message_media_contact 0x5e7d2f39
-#define CODE_message_media_unsupported 0x9f84f49e
-#define CODE_message_action_empty 0xb6aef7b0
-#define CODE_message_action_chat_create 0xa6638b9a
-#define CODE_message_action_chat_edit_title 0xb5a1ce5a
-#define CODE_message_action_chat_edit_photo 0x7fcb13a8
-#define CODE_message_action_chat_delete_photo 0x95e3fbef
-#define CODE_message_action_chat_add_user 0x5e3cfc4b
-#define CODE_message_action_chat_delete_user 0xb2ae9b0c
-#define CODE_dialog 0xc1dd804a
-#define CODE_photo_empty 0x2331b22d
-#define CODE_photo 0xc3838076
-#define CODE_photo_l27 0x22b56751
-#define CODE_photo_size_empty 0x0e17e23c
-#define CODE_photo_size 0x77bfb61b
-#define CODE_photo_cached_size 0xe9a734fa
-#define CODE_video_empty 0xc10658a8
-#define CODE_video 0xee9f4a4d
-#define CODE_video_l27 0x388fa391
-#define CODE_geo_point_empty 0x1117dd5f
-#define CODE_geo_point 0x2049d70c
-#define CODE_auth_checked_phone 0x811ea28e
-#define CODE_auth_sent_code 0xefed51d9
-#define CODE_auth_authorization 0xff036af1
-#define CODE_auth_exported_authorization 0xdf969c2d
-#define CODE_input_notify_peer 0xb8bc5b0c
-#define CODE_input_notify_users 0x193b4417
-#define CODE_input_notify_chats 0x4a95e84e
-#define CODE_input_notify_all 0xa429b886
-#define CODE_input_peer_notify_events_empty 0xf03064d8
-#define CODE_input_peer_notify_events_all 0xe86a2c74
-#define CODE_input_peer_notify_settings 0x46a2ce98
-#define CODE_peer_notify_events_empty 0xadd53cb3
-#define CODE_peer_notify_events_all 0x6d1ded88
-#define CODE_peer_notify_settings_empty 0x70a68512
-#define CODE_peer_notify_settings 0x8d5e11ee
-#define CODE_wall_paper 0xccb03657
-#define CODE_user_full 0x5a89ac5b
-#define CODE_contact 0xf911c994
-#define CODE_imported_contact 0xd0028438
-#define CODE_contact_blocked 0x561bc879
-#define CODE_contact_suggested 0x3de191a1
-#define CODE_contact_status 0xd3680c61
-#define CODE_chat_located 0x3631cf4c
-#define CODE_contacts_link 0x3ace484c
-#define CODE_contacts_contacts_not_modified 0xb74ba9d2
-#define CODE_contacts_contacts 0x6f8b8cb2
-#define CODE_contacts_imported_contacts 0xad524315
-#define CODE_contacts_blocked 0x1c138d15
-#define CODE_contacts_blocked_slice 0x900802a1
-#define CODE_contacts_suggested 0x5649dcc5
-#define CODE_messages_dialogs 0x15ba6c40
-#define CODE_messages_dialogs_slice 0x71e094f3
-#define CODE_messages_messages 0x8c718e87
-#define CODE_messages_messages_slice 0x0b446ae3
-#define CODE_messages_message_empty 0x3f4e0648
-#define CODE_messages_sent_message 0x4c3d47f3
-#define CODE_messages_chats 0x64ff9fd5
-#define CODE_messages_chat_full 0xe5d7d19c
-#define CODE_messages_affected_history 0xb45c69d1
-#define CODE_input_messages_filter_empty 0x57e2f66c
-#define CODE_input_messages_filter_photos 0x9609a51c
-#define CODE_input_messages_filter_video 0x9fc00e65
-#define CODE_input_messages_filter_photo_video 0x56e9f0e4
-#define CODE_input_messages_filter_photo_video_documents 0xd95e73bb
-#define CODE_input_messages_filter_document 0x9eddf188
-#define CODE_input_messages_filter_audio 0xcfc87522
-#define CODE_update_new_message 0x1f2b0afd
-#define CODE_update_message_i_d 0x4e90bfd6
-#define CODE_update_delete_messages 0xa20db0e5
-#define CODE_update_user_typing 0x5c486927
-#define CODE_update_chat_user_typing 0x9a65ea1f
-#define CODE_update_chat_participants 0x07761198
-#define CODE_update_user_status 0x1bfbd823
-#define CODE_update_user_name 0xa7332b73
-#define CODE_update_user_photo 0x95313b0c
-#define CODE_update_contact_registered 0x2575bbb9
-#define CODE_update_contact_link 0x9d2e67c5
-#define CODE_update_new_authorization 0x8f06529a
-#define CODE_updates_state 0xa56c2a3e
-#define CODE_updates_difference_empty 0x5d75a138
-#define CODE_updates_difference 0x00f49ca0
-#define CODE_updates_difference_slice 0xa8fb1981
-#define CODE_updates_too_long 0xe317af7e
-#define CODE_update_short_message 0xed5c2127
-#define CODE_update_short_chat_message 0x52238b3c
-#define CODE_update_short 0x78d4dec1
-#define CODE_updates_combined 0x725b04c3
-#define CODE_updates 0x74ae4240
-#define CODE_photos_photos 0x8dca6aa5
-#define CODE_photos_photos_slice 0x15051f54
-#define CODE_photos_photo 0x20212ca8
-#define CODE_upload_file 0x096a18d5
-#define CODE_dc_option_l28 0x2ec2a43c
-#define CODE_dc_option 0x05d8c6cc
-#define CODE_config 0x4e32b894
-#define CODE_nearest_dc 0x8e1a1775
-#define CODE_help_app_update 0x8987f311
-#define CODE_help_no_app_update 0xc45a6536
-#define CODE_help_invite_text 0x18cb9f78
-#define CODE_messages_sent_message_link 0x35a1a663
-#define CODE_input_geo_chat 0x74d456fa
-#define CODE_input_notify_geo_chat_peer 0x4d8ddec8
-#define CODE_geo_chat 0x75eaea5a
-#define CODE_geo_chat_message_empty 0x60311a9b
-#define CODE_geo_chat_message 0x4505f8e1
-#define CODE_geo_chat_message_service 0xd34fa24e
-#define CODE_geochats_stated_message 0x17b1578b
-#define CODE_geochats_located 0x48feb267
-#define CODE_geochats_messages 0xd1526db1
-#define CODE_geochats_messages_slice 0xbc5863e8
-#define CODE_message_action_geo_chat_create 0x6f038ebc
-#define CODE_message_action_geo_chat_checkin 0x0c7d53de
-#define CODE_update_new_geo_chat_message 0x5a68e3f7
-#define CODE_wall_paper_solid 0x63117f24
-#define CODE_update_new_encrypted_message 0x12bcbd9a
-#define CODE_update_encrypted_chat_typing 0x1710f156
-#define CODE_update_encryption 0xb4a2e88d
-#define CODE_update_encrypted_messages_read 0x38fe25b7
-#define CODE_encrypted_chat_empty 0xab7ec0a0
-#define CODE_encrypted_chat_waiting 0x3bf703dc
-#define CODE_encrypted_chat_requested 0xc878527e
-#define CODE_encrypted_chat 0xfa56ce36
-#define CODE_encrypted_chat_discarded 0x13d6dd27
-#define CODE_input_encrypted_chat 0xf141b5e1
-#define CODE_encrypted_file_empty 0xc21f497e
-#define CODE_encrypted_file 0x4a70994c
-#define CODE_input_encrypted_file_empty 0x1837c364
-#define CODE_input_encrypted_file_uploaded 0x64bd0306
-#define CODE_input_encrypted_file 0x5a17b5e5
-#define CODE_input_encrypted_file_location 0xf5235d55
-#define CODE_encrypted_message 0xed18c118
-#define CODE_encrypted_message_service 0x23734b06
-#define CODE_messages_dh_config_not_modified 0xc0e24635
-#define CODE_messages_dh_config 0x2c221edd
-#define CODE_messages_sent_encrypted_message 0x560f8935
-#define CODE_messages_sent_encrypted_file 0x9493ff32
-#define CODE_input_file_big 0xfa4f0bb5
-#define CODE_input_encrypted_file_big_uploaded 0x2dc173c8
-#define CODE_update_chat_participant_add 0x3a0eeb22
-#define CODE_update_chat_participant_delete 0x6e5f8c22
-#define CODE_update_dc_options 0x8e5e9873
-#define CODE_input_media_uploaded_audio 0x4e498cab
-#define CODE_input_media_audio 0x89938781
-#define CODE_input_media_uploaded_document 0xffe76b78
-#define CODE_input_media_uploaded_thumb_document 0x41481486
-#define CODE_input_media_document 0xd184e841
-#define CODE_message_media_document 0x2fda2204
-#define CODE_message_media_audio 0xc6b68300
-#define CODE_input_audio_empty 0xd95adc84
-#define CODE_input_audio 0x77d440ff
-#define CODE_input_document_empty 0x72f0eaae
-#define CODE_input_document 0x18798952
-#define CODE_input_audio_file_location 0x74dc404d
-#define CODE_input_document_file_location 0x4e45abe9
-#define CODE_audio_empty 0x586988d8
-#define CODE_audio 0xc7ac6496
-#define CODE_document_empty 0x36f8c871
-#define CODE_document 0xf9a39f4f
-#define CODE_document_l19 0x9efc6326
-#define CODE_help_support 0x17c6b5f6
-#define CODE_notify_peer 0x9fd40bd8
-#define CODE_notify_users 0xb4c83b4c
-#define CODE_notify_chats 0xc007cec3
-#define CODE_notify_all 0x74d07c60
-#define CODE_update_user_blocked 0x80ece81a
-#define CODE_update_notify_settings 0xbec268ef
-#define CODE_auth_sent_app_code 0xe325edcf
-#define CODE_send_message_typing_action 0x16bf744e
-#define CODE_send_message_cancel_action 0xfd5ec8f5
-#define CODE_send_message_record_video_action 0xa187d66f
-#define CODE_send_message_upload_video_action_l27 0x92042ff7
-#define CODE_send_message_upload_video_action 0xe9763aec
-#define CODE_send_message_record_audio_action 0xd52f73f7
-#define CODE_send_message_upload_audio_action_l27 0xe6ac8a6f
-#define CODE_send_message_upload_audio_action 0xf351d7ab
-#define CODE_send_message_upload_photo_action 0xd1d34a26
-#define CODE_send_message_upload_document_action_l27 0x8faee98e
-#define CODE_send_message_upload_document_action 0xaa0cd9e4
-#define CODE_send_message_geo_location_action 0x176f8ba1
-#define CODE_send_message_choose_contact_action 0x628cbc6f
-#define CODE_contact_found 0xea879f95
-#define CODE_contacts_found 0x0566000e
-#define CODE_update_service_notification 0x382dd3e4
-#define CODE_user_status_recently 0xe26f42f1
-#define CODE_user_status_last_week 0x07bf09fc
-#define CODE_user_status_last_month 0x77ebc742
-#define CODE_update_privacy 0xee3b272a
-#define CODE_input_privacy_key_status_timestamp 0x4f96cb18
-#define CODE_privacy_key_status_timestamp 0xbc2eab30
-#define CODE_input_privacy_value_allow_contacts 0x0d09e07b
-#define CODE_input_privacy_value_allow_all 0x184b35ce
-#define CODE_input_privacy_value_allow_users 0x131cc67f
-#define CODE_input_privacy_value_disallow_contacts 0x0ba52007
-#define CODE_input_privacy_value_disallow_all 0xd66b66c9
-#define CODE_input_privacy_value_disallow_users 0x90110467
-#define CODE_privacy_value_allow_contacts 0xfffe1bac
-#define CODE_privacy_value_allow_all 0x65427b82
-#define CODE_privacy_value_allow_users 0x4d5bbe0c
-#define CODE_privacy_value_disallow_contacts 0xf888fa1a
-#define CODE_privacy_value_disallow_all 0x8b73e763
-#define CODE_privacy_value_disallow_users 0x0c7f49b7
-#define CODE_account_privacy_rules 0x554abb6f
-#define CODE_account_days_t_t_l 0xb8d0afdf
-#define CODE_account_sent_change_phone_code 0xa4f58c4c
-#define CODE_update_user_phone 0x12b9417b
-#define CODE_document_attribute_image_size 0x6c37c15c
-#define CODE_document_attribute_animated 0x11b58939
-#define CODE_document_attribute_sticker_l28 0x994c9882
-#define CODE_document_attribute_sticker 0x3a556302
-#define CODE_document_attribute_video 0x5910cccb
-#define CODE_document_attribute_audio 0x051448e5
-#define CODE_document_attribute_filename 0x15590068
-#define CODE_messages_stickers_not_modified 0xf1749a22
-#define CODE_messages_stickers 0x8a8ecd32
-#define CODE_sticker_pack 0x12b299d4
-#define CODE_messages_all_stickers_not_modified 0xe86602c3
-#define CODE_messages_all_stickers 0x5ce352ec
-#define CODE_disabled_feature 0xae636f24
-#define CODE_update_read_history_inbox 0x9961fd5c
-#define CODE_update_read_history_outbox 0x2f2f21bf
-#define CODE_messages_affected_messages 0x84d19185
-#define CODE_contact_link_unknown 0x5f4f9247
-#define CODE_contact_link_none 0xfeedd3ad
-#define CODE_contact_link_has_phone 0x268f3f59
-#define CODE_contact_link_contact 0xd502c2d0
-#define CODE_update_web_page 0x2cc36971
-#define CODE_web_page_empty 0xeb1477e8
-#define CODE_web_page_pending 0xc586da1c
-#define CODE_web_page 0xa31ea0b5
-#define CODE_message_media_web_page 0xa32dd600
-#define CODE_authorization 0x7bf2e6f6
-#define CODE_account_authorizations 0x1250abde
-#define CODE_account_no_password 0x96dabc18
-#define CODE_account_password 0x7c18141c
-#define CODE_account_password_settings 0xb7b72ab3
-#define CODE_account_password_input_settings 0xbcfc532c
-#define CODE_auth_password_recovery 0x137948a5
-#define CODE_input_media_venue 0x2827a81a
-#define CODE_message_media_venue 0x7912b71f
-#define CODE_received_notify_message 0xa384b779
-#define CODE_chat_invite_empty 0x69df3769
-#define CODE_chat_invite_exported 0xfc2e05bc
-#define CODE_chat_invite_already 0x5a686d7c
-#define CODE_chat_invite 0xce917dcd
-#define CODE_message_action_chat_joined_by_link 0xf89cf5e8
-#define CODE_update_read_messages_contents 0x68c13933
-#define CODE_input_sticker_set_empty 0xffb62b95
-#define CODE_input_sticker_set_i_d 0x9de7a269
-#define CODE_input_sticker_set_short_name 0x861cc8a0
-#define CODE_sticker_set 0xa7a43b17
-#define CODE_messages_sticker_set 0xb60a24a6
-#define CODE_user 0x22e49072
-#define CODE_bot_command 0xc27ac8c7
-#define CODE_bot_command_old 0xb79d22ab
-#define CODE_bot_info_empty 0xbb2e37ce
-#define CODE_bot_info 0x09cf585d
-#define CODE_keyboard_button 0xa2fa4880
-#define CODE_keyboard_button_row 0x77608b83
-#define CODE_reply_keyboard_hide 0xa03e5b85
-#define CODE_reply_keyboard_force_reply 0xf4108aa0
-#define CODE_reply_keyboard_markup 0x3502758c
-#define CODE_invoke_after_msg 0xcb9f372d
-#define CODE_invoke_after_msgs 0x3dc4b4f0
-#define CODE_auth_check_phone 0x6fe51dfb
-#define CODE_auth_send_code 0x768d5f4d
-#define CODE_auth_send_call 0x03c51564
-#define CODE_auth_sign_up 0x1b067634
-#define CODE_auth_sign_in 0xbcd51581
-#define CODE_auth_log_out 0x5717da40
-#define CODE_auth_reset_authorizations 0x9fab0d1a
-#define CODE_auth_send_invites 0x771c1d97
-#define CODE_auth_export_authorization 0xe5bfffcd
-#define CODE_auth_import_authorization 0xe3ef9613
-#define CODE_auth_bind_temp_auth_key 0xcdd42a05
-#define CODE_account_register_device 0x446c712c
-#define CODE_account_unregister_device 0x65c55b40
-#define CODE_account_update_notify_settings 0x84be5b93
-#define CODE_account_get_notify_settings 0x12b3ad31
-#define CODE_account_reset_notify_settings 0xdb7e1747
-#define CODE_account_update_profile 0xf0888d68
-#define CODE_account_update_status 0x6628562c
-#define CODE_account_get_wall_papers 0xc04cfac2
-#define CODE_users_get_users 0x0d91a548
-#define CODE_users_get_full_user 0xca30a5b1
-#define CODE_contacts_get_statuses 0xc4a353ee
-#define CODE_contacts_get_contacts 0x22c6aa08
-#define CODE_contacts_import_contacts 0xda30b32d
-#define CODE_contacts_get_suggested 0xcd773428
-#define CODE_contacts_delete_contact 0x8e953744
-#define CODE_contacts_delete_contacts 0x59ab389e
-#define CODE_contacts_block 0x332b49fc
-#define CODE_contacts_unblock 0xe54100bd
-#define CODE_contacts_get_blocked 0xf57c350f
-#define CODE_contacts_export_card 0x84e53737
-#define CODE_contacts_import_card 0x4fe196fe
-#define CODE_messages_get_messages 0x4222fa74
-#define CODE_messages_get_dialogs 0xeccf1df6
-#define CODE_messages_get_history 0x92a1df2f
-#define CODE_messages_search 0x07e9f2ab
-#define CODE_messages_read_history 0xb04f2510
-#define CODE_messages_delete_history 0xf4f8fb61
-#define CODE_messages_delete_messages 0xa5f18925
-#define CODE_messages_received_messages 0x05a954c0
-#define CODE_messages_set_typing 0xa3825e50
-#define CODE_messages_send_message 0xfc55e6b5
-#define CODE_messages_send_media 0xc8f16791
-#define CODE_messages_forward_messages 0x55e1728d
-#define CODE_messages_get_chats 0x3c6aa187
-#define CODE_messages_get_full_chat 0x3b831c66
-#define CODE_messages_edit_chat_title 0xdc452855
-#define CODE_messages_edit_chat_photo 0xca4c79d8
-#define CODE_messages_add_chat_user 0xf9a0aa09
-#define CODE_messages_delete_chat_user 0xe0611f16
-#define CODE_messages_create_chat 0x09cb126e
-#define CODE_updates_get_state 0xedd4882a
-#define CODE_updates_get_difference 0x0a041495
-#define CODE_photos_update_profile_photo 0xeef579a0
-#define CODE_photos_upload_profile_photo 0xd50f9c88
-#define CODE_photos_delete_photos 0x87cf7f2f
-#define CODE_upload_save_file_part 0xb304a621
-#define CODE_upload_get_file 0xe3a6cfb5
-#define CODE_help_get_config 0xc4f9186b
-#define CODE_help_get_nearest_dc 0x1fb33026
-#define CODE_help_get_app_update 0xc812ac7e
-#define CODE_help_save_app_log 0x6f02f748
-#define CODE_help_get_invite_text 0xa4a95186
-#define CODE_photos_get_user_photos 0xb7ee553c
-#define CODE_messages_forward_message 0x33963bf9
-#define CODE_messages_send_broadcast 0xbf73f4da
-#define CODE_geochats_get_located 0x7f192d8f
-#define CODE_geochats_get_recents 0xe1427e6f
-#define CODE_geochats_checkin 0x55b3e8fb
-#define CODE_geochats_get_full_chat 0x6722dd6f
-#define CODE_geochats_edit_chat_title 0x4c8e2273
-#define CODE_geochats_edit_chat_photo 0x35d81a95
-#define CODE_geochats_search 0xcfcdc44d
-#define CODE_geochats_get_history 0xb53f7a68
-#define CODE_geochats_set_typing 0x08b8a729
-#define CODE_geochats_send_message 0x061b0044
-#define CODE_geochats_send_media 0xb8f0deff
-#define CODE_geochats_create_geo_chat 0x0e092e16
-#define CODE_messages_get_dh_config 0x26cf8950
-#define CODE_messages_request_encryption 0xf64daf43
-#define CODE_messages_accept_encryption 0x3dbc0415
-#define CODE_messages_discard_encryption 0xedd923c5
-#define CODE_messages_set_encrypted_typing 0x791451ed
-#define CODE_messages_read_encrypted_history 0x7f4b690a
-#define CODE_messages_send_encrypted 0xa9776773
-#define CODE_messages_send_encrypted_file 0x9a901b66
-#define CODE_messages_send_encrypted_service 0x32d439a4
-#define CODE_messages_received_queue 0x55a5bb66
-#define CODE_upload_save_big_file_part 0xde7b673d
-#define CODE_init_connection 0x69796de9
-#define CODE_help_get_support 0x9cdf08cd
-#define CODE_auth_send_sms 0x0da9f3e8
-#define CODE_messages_read_message_contents 0x36a73f77
-#define CODE_account_check_username 0x2714d86c
-#define CODE_account_update_username 0x3e0bdd7c
-#define CODE_contacts_search 0x11f812d8
-#define CODE_account_get_privacy 0xdadbc950
-#define CODE_account_set_privacy 0xc9f81ce8
-#define CODE_account_delete_account 0x418d4e0b
-#define CODE_account_get_account_t_t_l 0x08fc711d
-#define CODE_account_set_account_t_t_l 0x2442485e
-#define CODE_invoke_with_layer 0xda9b0d0d
-#define CODE_contacts_resolve_username 0x0bf0131c
-#define CODE_account_send_change_phone_code 0xa407a8f4
-#define CODE_account_change_phone 0x70c32edb
-#define CODE_messages_get_stickers 0xae22e045
-#define CODE_messages_get_all_stickers 0xaa3bc868
-#define CODE_account_update_device_locked 0x38df3532
-#define CODE_auth_import_bot_authorization 0x67a3ff2c
-#define CODE_messages_get_web_page_preview 0x25223e24
-#define CODE_account_get_authorizations 0xe320c158
-#define CODE_account_reset_authorization 0xdf77f3bc
-#define CODE_account_get_password 0x548a30f5
-#define CODE_account_get_password_settings 0xbc8d11bb
-#define CODE_account_update_password_settings 0xfa7c4b86
-#define CODE_auth_check_password 0x0a63011e
-#define CODE_auth_request_password_recovery 0xd897bc66
-#define CODE_auth_recover_password 0x4ea56e92
-#define CODE_invoke_without_updates 0xbf9459b7
-#define CODE_messages_export_chat_invite 0x7d885289
-#define CODE_messages_check_chat_invite 0x3eadb1bb
-#define CODE_messages_import_chat_invite 0x6c50051c
-#define CODE_messages_get_sticker_set 0x2619a90e
-#define CODE_messages_install_sticker_set 0xefbbfae9
-#define CODE_messages_uninstall_sticker_set 0xf96e55de
-#define CODE_messages_start_bot 0x1b3e0ffc
-#define CODE_decrypted_message_media_empty 0x089f5c4a
-#define CODE_decrypted_message_media_photo 0x32798a8c
-#define CODE_decrypted_message_media_geo_point 0x35480a59
-#define CODE_decrypted_message_media_contact 0x588a0a97
-#define CODE_decrypted_message_action_set_message_t_t_l 0xa1733aec
-#define CODE_decrypted_message_media_document 0xb095434b
-#define CODE_decrypted_message_action_read_messages 0x0c4f40be
-#define CODE_decrypted_message_action_delete_messages 0x65614304
-#define CODE_decrypted_message_action_screenshot_messages 0x8ac1f475
-#define CODE_decrypted_message_action_flush_history 0x6719e45c
-#define CODE_decrypted_message 0x204d3878
-#define CODE_decrypted_message_service 0x73164160
-#define CODE_decrypted_message_media_video 0x524a415d
-#define CODE_decrypted_message_media_audio 0x57e0a9cb
-#define CODE_decrypted_message_layer 0x1be31789
-#define CODE_decrypted_message_action_resend 0x511110b0
-#define CODE_decrypted_message_action_notify_layer 0xf3048883
-#define CODE_decrypted_message_action_typing 0xccb27641
-#define CODE_decrypted_message_action_request_key 0xf3c9611b
-#define CODE_decrypted_message_action_accept_key 0x6fe1735b
-#define CODE_decrypted_message_action_abort_key 0xdd05ec6b
-#define CODE_decrypted_message_action_commit_key 0xec2e0b9b
-#define CODE_decrypted_message_action_noop 0xa82fdd63
-#define CODE_decrypted_message_media_external_document 0xfa95b0dd
-#define CODE_binlog_encr_key 0x0377168f
-#define CODE_binlog_start 0x3b06de69
-#define CODE_binlog_dc_option 0xf96feb32
-#define CODE_binlog_dc_option_new 0x7c0d22d8
-#define CODE_binlog_auth_key 0x71e8c156
-#define CODE_binlog_default_dc 0x9e83dbdc
-#define CODE_binlog_dc_signed 0x26451bb5
-#define CODE_binlog_our_id 0x68a870e8
-#define CODE_binlog_set_dh_params 0xeaeb7826
-#define CODE_binlog_set_pts 0x2ca8c939
-#define CODE_binlog_set_qts 0xd95738ac
-#define CODE_binlog_set_date 0x1d0f4b52
-#define CODE_binlog_set_seq 0x6eeb2989
-#define CODE_binlog_encr_chat_delete 0xee1b38e8
-#define CODE_binlog_encr_chat_new 0x84977251
-#define CODE_binlog_encr_chat_exchange_new 0x9d49488d
-#define CODE_binlog_user_delete 0xac55d447
-#define CODE_binlog_user_new 0x127cf2f9
-#define CODE_binlog_chat_new 0x0a10aa92
-#define CODE_binlog_chat_add_participant 0x535475ea
-#define CODE_binlog_chat_del_participant 0x7dd1a1a2
-#define CODE_binlog_set_msg_id 0x3c873416
-#define CODE_binlog_message_delete 0x847e77b1
-#define CODE_binlog_message_new 0x427cfcdb
-#define CODE_binlog_message_encr_new 0x6cf7cabc
-#define CODE_binlog_msg_update 0x6dd4d85f
-#define CODE_binlog_reset_authorization 0x83327955
-#define CODE_res_p_q 0x05162463
-#define CODE_server__d_h_params_fail 0x79cb045d
-#define CODE_server__d_h_params_ok 0xd0e8075c
-#define CODE_p_q_inner_data 0x83c95aec
-#define CODE_p_q_inner_data_temp 0x3c6a84d4
-#define CODE_client__d_h_inner_data 0x6643b654
-#define CODE_dh_gen_ok 0x3bcbf734
-#define CODE_dh_gen_retry 0x46dc1fb9
-#define CODE_dh_gen_fail 0xa69dae02
-#define CODE_server__d_h_inner_data 0xb5890dba
-#define CODE_req_pq 0x60469778
-#define CODE_req__d_h_params 0xd712e4be
-#define CODE_set_client__d_h_params 0xf5045f1f
-#define CODE_decrypted_message_media_video_l12 0x4cee6ef3
-#define CODE_decrypted_message_media_audio_l12 0x6080758f
-#define CODE_update_msg_update 0x03114739
-#define CODE_message_media_photo_l27 0xc8c45a2a
-#define CODE_message_media_video_l27 0xa2d24290
-#endif
diff --git a/protocols/Telegram/src/tgl/binlog.c b/protocols/Telegram/src/tgl/binlog.c
deleted file mode 100644
index 74a47b38c2..0000000000
--- a/protocols/Telegram/src/tgl/binlog.c
+++ /dev/null
@@ -1,1830 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-
-#if defined(WIN32) || defined(_WIN32)
-#include <stdint.h>
-#include <string.h>
-#include <fcntl.h>
-#define WIN32_LEAN_AND_MEAN
-#include <windows.h>
-#undef WIN32_LEAN_AND_MEAN
-#include <io.h>
-#include <sys/locking.h>
-#else
-#include <unistd.h>
-#include <sys/file.h>
-#endif
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <stdlib.h>
-#include <fcntl.h>
-#include <share.h>
-#include <errno.h>
-#include <stdio.h>
-#include <string.h>
-#include <assert.h>
-#include <openssl/bn.h>
-
-#include "tgl-binlog.h"
-#include "mtproto-common.h"
-//#include "net.h"
-#include "mtproto-client.h"
-#include "mtproto-utils.h"
-
-#include "tgl.h"
-#include "auto.h"
-#include "auto/auto-types.h"
-#include "auto/auto-skip.h"
-#include "auto/auto-store-ds.h"
-#include "auto/auto-fetch-ds.h"
-#include "auto/auto-free-ds.h"
-
-#include "tgl-structures.h"
-#include "tgl-methods-in.h"
-
-#include <openssl/sha.h>
-
-#define BINLOG_BUFFER_SIZE (1 << 20)
-static int binlog_buffer[BINLOG_BUFFER_SIZE];
-static int *rptr;
-static int *wptr;
-//static int TLS->binlog_fd;
-static int in_replay_log; // should be used ONLY for DEBUG
-
-
-#define MAX_LOG_EVENT_SIZE (1 << 17)
-
-char *get_binlog_file_name (void);
-
-static void *alloc_log_event (int l) {
- return binlog_buffer;
-}
-
-static int mystreq1 (const char *a, const char *b, int l) {
- if ((int)strlen (a) != l) { return 1; }
- return memcmp (a, b, l);
-}
-
-static long long binlog_pos;
-
-static int fetch_comb_binlog_start (struct tgl_state *TLS, void *extra) {
- return 0;
-}
-
-/* {{{ DC option */
-static int fetch_comb_binlog_dc_option (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- vlogprintf (E_NOTICE, "DC%d '%.*s' update: %.*s:%d\n",
- DS_LVAL (DS_U->dc),
- DS_RSTR (DS_U->name),
- DS_RSTR (DS_U->ip),
- DS_LVAL (DS_U->port)
- );
-
- tglmp_alloc_dc (TLS,
- 0,
- DS_LVAL (DS_U->dc),
- DS_STR_DUP (DS_U->ip),
- DS_LVAL (DS_U->port)
- );
- return 0;
-}
-
-static int fetch_comb_binlog_dc_option_new (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- vlogprintf (E_NOTICE, "DC%d '%.*s' update: %.*s:%d\n",
- DS_LVAL (DS_U->dc),
- DS_RSTR (DS_U->name),
- DS_RSTR (DS_U->ip),
- DS_LVAL (DS_U->port)
- );
-
- tglmp_alloc_dc (TLS,
- DS_LVAL (DS_U->flags),
- DS_LVAL (DS_U->dc),
- DS_STR_DUP (DS_U->ip),
- DS_LVAL (DS_U->port)
- );
- return 0;
-}
-/* }}} */
-
-/* {{{ Auth key */
-static int fetch_comb_binlog_auth_key (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- int num = DS_LVAL (DS_U->dc);
- assert (num > 0 && num <= MAX_DC_ID);
- assert (TLS->DC_list[num]);
-
- tglf_fetch_int_tuple ((void *)TLS->DC_list[num]->auth_key, DS_U->key->key, 64);
-
- static unsigned char sha1_buffer[20];
- SHA1 ((void *)TLS->DC_list[num]->auth_key, 256, sha1_buffer);
- TLS->DC_list[num]->auth_key_id = *(long long *)(sha1_buffer + 12);
-
- TLS->DC_list[num]->flags |= TGLDCF_AUTHORIZED;
- return 0;
-}
-/* }}} */
-
-/* {{{ Default dc */
-static int fetch_comb_binlog_default_dc (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- int num = DS_LVAL (DS_U->dc);
- assert (num > 0 && num <= MAX_DC_ID);
- TLS->DC_working = TLS->DC_list[num];
- TLS->dc_working_num = num;
- return 0;
-}
-/* }}} */
-
-/* {{{ DC signed */
-static int fetch_comb_binlog_dc_signed (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- int num = DS_LVAL (DS_U->dc);
- assert (num > 0 && num <= MAX_DC_ID);
- assert (TLS->DC_list[num]);
- TLS->DC_list[num]->flags |= TGLDCF_LOGGED_IN;
- return 0;
-}
-/* }}} */
-
-/* {{{ our user_id */
-static int fetch_comb_binlog_our_id (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- TLS->our_id = DS_LVAL (DS_U->id);
- assert (TLS->our_id > 0);
- if (TLS->callback.our_id) {
- TLS->callback.our_id (TLS, TLS->our_id);
- }
- return 0;
-}
-/* }}} */
-
-/* {{{ Set DH params */
-static int fetch_comb_binlog_set_dh_params (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- if (TLS->encr_prime) { tfree (TLS->encr_prime, 256); BN_free (TLS->encr_prime_bn); }
-
- TLS->encr_root = DS_LVAL (DS_U->root);
- TLS->encr_prime = talloc (256);
- tglf_fetch_int_tuple ((void *)TLS->encr_prime, DS_U->prime->key, 64);
-
- TLS->encr_prime_bn = BN_new ();
- BN_bin2bn ((void *)TLS->encr_prime, 256, TLS->encr_prime_bn);
- TLS->encr_param_version = DS_LVAL (DS_U->version);
-
- assert (tglmp_check_DH_params (TLS, TLS->encr_prime_bn, TLS->encr_root) >= 0);
-
- return 0;
-}
-/* }}} */
-
-/* {{{ Set pts, qts, date, seq */
-static int fetch_comb_binlog_set_pts (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- TLS->pts = DS_LVAL (DS_U->pts);
- return 0;
-}
-
-static int fetch_comb_binlog_set_qts (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- TLS->qts = DS_LVAL (DS_U->qts);
- return 0;
-}
-
-static int fetch_comb_binlog_set_date (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- TLS->date = DS_LVAL (DS_U->date);
- return 0;
-}
-
-static int fetch_comb_binlog_set_seq (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- TLS->seq = DS_LVAL (DS_U->seq);
- return 0;
-}
-/* }}} */
-
-/* {{{ delete user */
-static int fetch_comb_binlog_user_delete (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- tgl_peer_id_t id = TGL_MK_USER (DS_LVAL (DS_U->id));
- tgl_peer_t *U = tgl_peer_get (TLS, id);
- assert (U);
- U->flags |= TGLUF_DELETED;
-
- if (TLS->callback.user_update) {
- TLS->callback.user_update (TLS, (void *)U, TGL_UPDATE_DELETED);
- }
- return 0;
-}
-/* }}} */
-
-/* {{{ delete secret chat */
-static int fetch_comb_binlog_encr_chat_delete (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- tgl_peer_id_t id = TGL_MK_ENCR_CHAT (DS_LVAL (DS_U->id));
- tgl_peer_t *_U = tgl_peer_get (TLS, id);
- assert (_U);
- struct tgl_secret_chat *U = &_U->encr_chat;
- memset (U->key, 0, sizeof (U->key));
- U->flags |= TGLPF_DELETED;
- U->state = sc_deleted;
- if (U->g_key) {
- tfree_secure (U->g_key, 256);
- U->g_key = 0;
- }
-
- if (TLS->callback.secret_chat_update) {
- TLS->callback.secret_chat_update (TLS, U, TGL_UPDATE_DELETED);
- }
- return 0;
-}
-/* }}} */
-
-static int fetch_comb_binlog_user_new (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- tgl_peer_id_t id = TGL_MK_USER (DS_LVAL (DS_U->id));
- tgl_peer_t *_U = tgl_peer_get (TLS, id);
-
- int flags = DS_LVAL (DS_U->flags);
-
- unsigned updates = 0;
-
- if (flags & TGLPF_CREATE) {
- if (!_U) {
- _U = talloc0 (sizeof (*_U));
- _U->id = id;
- tglp_insert_encrypted_chat (TLS, _U);
- } else {
- assert (!(_U->flags & TGLPF_CREATED));
- }
- updates |= TGL_UPDATE_CREATED;
- } else {
- assert (_U->flags & TGLPF_CREATED);
- }
-
- struct tgl_user *U = (void *)_U;
-
- if ((flags & 0xff) != (U->flags & 0xff)) {
- updates |= TGL_UPDATE_FLAGS;
- }
- U->flags = flags & 0xffff;
-
- if (DS_U->access_hash) {
- U->access_hash = DS_LVAL (DS_U->access_hash);
- updates |= TGL_UPDATE_ACCESS_HASH;
- }
-
- if (DS_U->first_name) {
- if (U->first_name) {
- tfree_str (U->first_name);
- }
- U->first_name = DS_STR_DUP (DS_U->first_name);
- if (U->last_name) {
- tfree_str (U->last_name);
- }
- U->last_name = DS_STR_DUP (DS_U->last_name);
-
- updates |= TGL_UPDATE_NAME;
-
- if (U->print_name) {
- tglp_peer_delete_name (TLS, (void *)U);
- tfree_str (U->print_name);
- }
- U->print_name = TLS->callback.create_print_name (TLS, U->id, U->first_name, U->last_name, 0, 0);
- tglp_peer_insert_name (TLS, (void *)U);
- }
-
- if (DS_U->phone) {
- if (U->phone) {
- tfree_str (U->phone);
- }
- U->phone = DS_STR_DUP (DS_U->phone);
- updates |= TGL_UPDATE_PHONE;
- }
-
- if (DS_U->username) {
- if (U->username) {
- tfree_str (U->username);
- }
- U->username = DS_STR_DUP (DS_U->username);
- updates |= TGL_UPDATE_USERNAME;
- }
-
- if (DS_U->photo) {
- if (U->photo) {
- tgls_free_photo (TLS, U->photo);
- }
- U->photo = tglf_fetch_alloc_photo_new (TLS, DS_U->photo);
- U->flags |= TGLUF_HAS_PHOTO;
- //updates |= TGL_UPDATE_PHOTO;
- }
-
- if (DS_U->user_photo) {
- U->photo_id = DS_LVAL (DS_U->user_photo->photo_id);
- tglf_fetch_file_location_new (TLS, &U->photo_big, DS_U->user_photo->photo_big);
- tglf_fetch_file_location_new (TLS, &U->photo_small, DS_U->user_photo->photo_small);
- updates |= TGL_UPDATE_PHOTO;
- }
-
- if (DS_U->real_first_name) {
- if (U->real_first_name) {
- tfree_str (U->real_first_name);
- }
- U->real_first_name = DS_STR_DUP (DS_U->real_first_name);
- if (U->real_last_name) {
- tfree_str (U->real_last_name);
- }
- U->real_last_name = DS_STR_DUP (DS_U->real_last_name);
-
- updates |= TGL_UPDATE_REAL_NAME;
- }
-
- if (DS_U->last_read_in) {
- U->last_read_in = DS_LVAL (DS_U->last_read_in);
- tgls_messages_mark_read (TLS, U->last, 0, U->last_read_in);
- }
-
- if (DS_U->last_read_out) {
- U->last_read_out = DS_LVAL (DS_U->last_read_out);
- tgls_messages_mark_read (TLS, U->last, TGLMF_OUT, U->last_read_out);
- }
-
- if (DS_U->bot_info) {
- if (U->bot_info) {
- tgls_free_bot_info (TLS, U->bot_info);
- }
- U->bot_info = tglf_fetch_alloc_bot_info (TLS, DS_U->bot_info);
- }
-
- if (TLS->callback.user_update && updates) {
- TLS->callback.user_update (TLS, U, updates);
- }
-
- return 0;
-}
-
-static int fetch_comb_binlog_encr_chat_new (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- tgl_peer_id_t id = TGL_MK_ENCR_CHAT (DS_LVAL (DS_U->id));
- tgl_peer_t *_U = tgl_peer_get (TLS, id);
-
- int flags = DS_LVAL (DS_U->flags);
-
- unsigned updates = 0;
-
- if (flags & TGLPF_CREATE) {
- if (!_U) {
- _U = talloc0 (sizeof (*_U));
- _U->id = id;
- tglp_insert_encrypted_chat (TLS, _U);
- } else {
- assert (!(_U->flags & TGLPF_CREATED));
- }
- updates |= TGL_UPDATE_CREATED;
- } else {
- assert (_U->flags & TGLPF_CREATED);
- }
-
- struct tgl_secret_chat *U = (void *)_U;
-
- if ((flags & 0xff) != (U->flags & 0xff)) {
- updates |= TGL_UPDATE_FLAGS;
- }
- U->flags = flags & 0xffff;
-
- if (DS_U->access_hash) {
- U->access_hash = DS_LVAL (DS_U->access_hash);
- updates |= TGL_UPDATE_ACCESS_HASH;
- }
-
- if (DS_U->date) {
- U->date = DS_LVAL (DS_U->date);
- }
-
- if (DS_U->admin) {
- U->admin_id = DS_LVAL (DS_U->admin);
- }
-
- if (DS_U->user_id) {
- U->user_id = DS_LVAL (DS_U->user_id);
- }
-
- if (DS_U->key_fingerprint) {
- U->key_fingerprint = DS_LVAL (DS_U->key_fingerprint);
- }
-
- if (DS_U->in_seq_no) {
- U->in_seq_no = DS_LVAL (DS_U->in_seq_no);
- U->out_seq_no = DS_LVAL (DS_U->out_seq_no);
- U->last_in_seq_no = DS_LVAL (DS_U->last_in_seq_no);
- }
-
- tgl_peer_t *Us = tgl_peer_get (TLS, TGL_MK_USER (U->user_id));
-
- if (!U->print_name) {
- if (Us) {
- U->print_name = TLS->callback.create_print_name (TLS, id, "!", Us->user.first_name, Us->user.last_name, 0);
- } else {
- static char buf[100];
- tsnprintf (buf, 99, "user#%d", U->user_id);
- U->print_name = TLS->callback.create_print_name (TLS, id, "!", buf, 0, 0);
- }
- tglp_peer_insert_name (TLS, (void *)U);
- }
-
- if (DS_U->g_key) {
- if (!U->g_key) {
- U->g_key = talloc (256);
- }
- tglf_fetch_int_tuple ((void *)U->g_key, DS_U->g_key->key, 64);
- }
-
- if (DS_U->key) {
- tglf_fetch_int_tuple (U->key, DS_U->key->key, 64);
- }
-
- if (DS_U->state) {
- if (U->state == sc_waiting && DS_LVAL (DS_U->state) == sc_ok) {
- tgl_do_create_keys_end (TLS, U);
- }
- if ((int)U->state != DS_LVAL (DS_U->state)) {
- switch (DS_LVAL (DS_U->state)) {
- case sc_request:
- updates |= TGL_UPDATE_REQUESTED;
- break;
- case sc_ok:
- updates |= TGL_UPDATE_WORKING;
- vlogprintf (E_WARNING, "Secret chat in ok state\n");
- break;
- default:
- break;
- }
- }
- U->state = DS_LVAL (DS_U->state);
- }
-
- if (TLS->callback.secret_chat_update && updates) {
- TLS->callback.secret_chat_update (TLS, U, updates);
- }
-
- return 0;
-}
-
-static int fetch_comb_binlog_chat_new (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- tgl_peer_id_t id = TGL_MK_CHAT (DS_LVAL (DS_U->id));
- tgl_peer_t *_U = tgl_peer_get (TLS, id);
-
- int flags = DS_LVAL (DS_U->flags);
-
- unsigned updates = 0;
-
- if (flags & (1 << 16)) {
- if (!_U) {
- _U = talloc0 (sizeof (*_U));
- _U->id = id;
- tglp_insert_chat (TLS, _U);
- } else {
- assert (!(_U->flags & TGLPF_CREATED));
- }
- updates |= TGL_UPDATE_CREATED;
- } else {
- assert (_U->flags & TGLPF_CREATED);
- }
-
- struct tgl_chat *C = &_U->chat;
-
- if ((flags & 0xff) != (C->flags & 0xff)) {
- updates |= TGL_UPDATE_FLAGS;
- }
- C->flags = flags & 0xffff;
-
- if (DS_U->title) {
- if (C->title) {
- tfree_str (C->title);
- }
- C->title = DS_STR_DUP (DS_U->title);
-
- if (C->print_title) {
- tglp_peer_delete_name (TLS, (void *)C);
- tfree_str (C->print_title);
- }
- C->print_title = TLS->callback.create_print_name (TLS, C->id, C->title, 0, 0, 0);
- tglp_peer_insert_name (TLS, (void *)C);
-
- updates |= TGL_UPDATE_TITLE;
- }
-
- if (DS_U->user_num) {
- C->users_num = DS_LVAL (DS_U->user_num);
- }
-
- if (DS_U->date) {
- C->date = DS_LVAL (DS_U->date);
- }
-
- if (DS_U->chat_photo) {
- tglf_fetch_file_location_new (TLS, &C->photo_big, DS_U->chat_photo->photo_big);
- tglf_fetch_file_location_new (TLS, &C->photo_small, DS_U->chat_photo->photo_small);
- updates |= TGL_UPDATE_PHOTO;
- }
-
- if (DS_U->photo) {
- if (C->photo) {
- tgls_free_photo (TLS, C->photo);
- }
- C->photo = tglf_fetch_alloc_photo_new (TLS, DS_U->photo);
- C->flags |= TGLPF_HAS_PHOTO;
- updates |= TGL_UPDATE_PHOTO;
- }
-
- if (DS_U->admin) {
- C->admin_id = DS_LVAL (DS_U->admin);
- updates |= TGL_UPDATE_ADMIN;
- }
-
- if (DS_U->version) {
- C->version = DS_LVAL (DS_U->version);
-
- if (C->user_list) { tfree (C->user_list, 12 * C->user_list_size); }
-
- C->user_list_size = DS_LVAL (DS_U->participants->cnt);
- C->user_list = talloc (12 * C->user_list_size);
-
- int i;
- for (i = 0; i < C->user_list_size; i++) {
- C->user_list[i].user_id = DS_LVAL (DS_U->participants->data[i]->user_id);
- C->user_list[i].inviter_id = DS_LVAL (DS_U->participants->data[i]->inviter_id);
- C->user_list[i].date = DS_LVAL (DS_U->participants->data[i]->date);
- }
-
- updates |= TGL_UPDATE_MEMBERS;
- }
-
- if (DS_U->last_read_in) {
- C->last_read_in = DS_LVAL (DS_U->last_read_in);
- tgls_messages_mark_read (TLS, C->last, 0, C->last_read_in);
- }
-
- if (DS_U->last_read_out) {
- C->last_read_out = DS_LVAL (DS_U->last_read_out);
- tgls_messages_mark_read (TLS, C->last, TGLMF_OUT, C->last_read_out);
- }
-
-
- if (TLS->callback.chat_update && updates) {
- TLS->callback.chat_update (TLS, C, updates);
- }
- return 0;
-}
-
-static int fetch_comb_binlog_chat_add_participant (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- tgl_peer_id_t id = TGL_MK_CHAT (DS_LVAL (DS_U->id));
- tgl_peer_t *_C = tgl_peer_get (TLS, id);
- assert (_C && (_C->flags & TGLPF_CREATED));
- struct tgl_chat *C = &_C->chat;
-
- int version = DS_LVAL (DS_U->version);
- int user = DS_LVAL (DS_U->user_id);
- int inviter = DS_LVAL (DS_U->inviter_id);
- int date = DS_LVAL (DS_U->date);
-
-
- if (C->user_list_version > version) { return 0; }
-
- int i;
- for (i = 0; i < C->user_list_size; i++) {
- if (C->user_list[i].user_id == user) {
- return 0;
- }
- }
-
- C->user_list_size ++;
- C->user_list = trealloc (C->user_list, 12 * C->user_list_size - 12, 12 * C->user_list_size);
- C->user_list[C->user_list_size - 1].user_id = user;
- C->user_list[C->user_list_size - 1].inviter_id = inviter;
- C->user_list[C->user_list_size - 1].date = date;
- C->user_list_version = version;
-
- if (TLS->callback.chat_update) {
- TLS->callback.chat_update (TLS, C, TGL_UPDATE_MEMBERS);
- }
- return 0;
-}
-
-static int fetch_comb_binlog_chat_del_participant (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- tgl_peer_id_t id = TGL_MK_CHAT (DS_LVAL (DS_U->id));
- tgl_peer_t *_C = tgl_peer_get (TLS, id);
- assert (_C && (_C->flags & TGLPF_CREATED));
- struct tgl_chat *C = &_C->chat;
-
- int version = DS_LVAL (DS_U->version);
- int user = DS_LVAL (DS_U->user_id);
- if (C->user_list_version > version) { return 0; }
-
- int i;
- for (i = 0; i < C->user_list_size; i++) {
- if (C->user_list[i].user_id == user) {
- struct tgl_chat_user t;
- t = C->user_list[i];
- C->user_list[i] = C->user_list[C->user_list_size - 1];
- C->user_list[C->user_list_size - 1] = t;
- }
- }
- if (C->user_list[C->user_list_size - 1].user_id != user) { return 0; }
-
- assert (C->user_list[C->user_list_size - 1].user_id == user);
- C->user_list_size --;
- C->user_list = trealloc (C->user_list, 12 * C->user_list_size + 12, 12 * C->user_list_size);
- C->user_list_version = version;
-
- if (TLS->callback.chat_update) {
- TLS->callback.chat_update (TLS, C, TGL_UPDATE_MEMBERS);
- }
- return 0;
-}
-
-static int fetch_comb_binlog_message_new (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- struct tgl_message *M = tgl_message_get (TLS, DS_LVAL (DS_U->lid));
- int flags = DS_LVAL (DS_U->flags);
-
- if (flags & (1 << 16)) {
- if (!M) {
- M = tglm_message_alloc (TLS, DS_LVAL (DS_U->lid));
- }
- assert (!(M->flags & TGLMF_CREATED));
- } else {
- assert (M->flags & TGLMF_CREATED);
- }
-
- assert (flags & TGLMF_CREATED);
- assert (!(M->flags & TGLMF_ENCRYPTED));
- assert (!(flags & TGLMF_ENCRYPTED));
-
- if ((M->flags & TGLMF_PENDING) && !(flags & TGLMF_PENDING)){
- tglm_message_remove_unsent (TLS, M);
- }
- if (!(M->flags & TGLMF_PENDING) && (flags & TGLMF_PENDING)){
- tglm_message_insert_unsent (TLS, M);
- }
-
- if ((M->flags & TGLMF_UNREAD) && !(flags & TGLMF_UNREAD)) {
- M->flags = (flags & 0xffff) | TGLMF_UNREAD;
- } else {
- M->flags = (flags & 0xffff);
- }
-
- if (DS_U->from_id) {
- M->from_id = TGL_MK_USER (DS_LVAL (DS_U->from_id));
- }
- if (DS_U->to_type) {
- assert (flags & 0x10000);
- M->to_id = tgl_set_peer_id (DS_LVAL (DS_U->to_type), DS_LVAL (DS_U->to_id));
- assert (DS_LVAL (DS_U->to_type) != TGL_PEER_ENCR_CHAT);
- }
-
- if (DS_U->date) {
- M->date = DS_LVAL (DS_U->date);
- }
-
- if (DS_U->fwd_from_id) {
- M->fwd_from_id = TGL_MK_USER (DS_LVAL (DS_U->fwd_from_id));
- M->fwd_date = DS_LVAL (DS_U->fwd_date);
- }
-
- if (DS_U->action) {
- tglf_fetch_message_action_new (TLS, &M->action, DS_U->action);
- M->flags |= TGLMF_SERVICE;
- }
-
- if (DS_U->message) {
- M->message_len = DS_U->message->len;
- M->message = DS_STR_DUP (DS_U->message);
- assert (!(M->flags & TGLMF_SERVICE));
- }
-
- if (DS_U->media) {
- tglf_fetch_message_media_new (TLS, &M->media, DS_U->media);
- assert (!(M->flags & TGLMF_SERVICE));
- }
-
- if (DS_U->reply_id) {
- M->reply_id = DS_LVAL (DS_U->reply_id);
- }
-
- if (flags & 0x10000) {
- tglm_message_insert (TLS, M);
- }
-
- if (!(flags & TGLMF_UNREAD) && (M->flags & TGLMF_UNREAD)) {
- tgls_messages_mark_read (TLS, M, M->flags & TGLMF_OUT, M->id);
- }
-
- if (DS_U->reply_markup) {
- M->reply_markup = tglf_fetch_alloc_reply_markup (TLS, M->next, DS_U->reply_markup);
- }
- return 0;
-}
-
-static int fetch_comb_binlog_message_encr_new (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- struct tgl_message *M = tgl_message_get (TLS, DS_LVAL (DS_U->lid));
- int flags = DS_LVAL (DS_U->flags);
-
- if (flags & (1 << 16)) {
- if (!M) {
- M = tglm_message_alloc (TLS, DS_LVAL (DS_U->lid));
- } else {
- assert (!(M->flags & TGLMF_CREATED));
- }
- assert (!(M->flags & TGLMF_CREATED));
- } else {
- assert (M->flags & TGLMF_CREATED);
- }
-
- assert (flags & TGLMF_CREATED);
- assert (flags & TGLMF_ENCRYPTED);
-
- if ((M->flags & TGLMF_PENDING) && !(flags & TGLMF_PENDING)){
- tglm_message_remove_unsent (TLS, M);
- }
- if (!(M->flags & TGLMF_PENDING) && (flags & TGLMF_PENDING)){
- tglm_message_insert_unsent (TLS, M);
- }
-
- M->flags = flags & 0xffff;
-
- if (DS_U->from_id) {
- M->from_id = TGL_MK_USER (DS_LVAL (DS_U->from_id));
- }
- if (DS_U->to_type) {
- assert (flags & 0x10000);
- M->to_id = tgl_set_peer_id (DS_LVAL (DS_U->to_type), DS_LVAL (DS_U->to_id));
- }
-
- if (DS_U->date) {
- M->date = DS_LVAL (DS_U->date);
- }
-
- struct tgl_secret_chat *E = (void *)tgl_peer_get (TLS, M->to_id);
- assert (E);
-
- if (DS_U->message) {
- M->message_len = DS_U->message->len;
- M->message = DS_STR_DUP (DS_U->message);
- assert (!(M->flags & TGLMF_SERVICE));
- }
-
- if (DS_U->encr_media) {
- tglf_fetch_message_media_encrypted_new (TLS, &M->media, DS_U->encr_media);
- assert (!(M->flags & TGLMF_SERVICE));
- }
-
- if (DS_U->encr_action) {
- tglf_fetch_message_action_encrypted_new (TLS, &M->action, DS_U->encr_action);
- M->flags |= TGLMF_SERVICE;
- }
-
- if (DS_U->file) {
- tglf_fetch_encrypted_message_file_new (TLS, &M->media, DS_U->file);
- assert (!(M->flags & TGLMF_SERVICE));
- }
-
- if (DS_U->encr_action && !(M->flags & TGLMF_OUT) && M->action.type == tgl_message_action_notify_layer) {
- E->layer = M->action.layer;
- }
-
- if ((flags & TGLMF_CREATE) && (flags & TGLMF_OUT)) {
- E->out_seq_no ++;
- }
-
- if (flags & 0x10000) {
- tglm_message_insert (TLS, M);
- }
- return 0;
-}
-
-static int fetch_comb_binlog_set_msg_id (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- struct tgl_message *M = tgl_message_get (TLS, DS_LVAL (DS_U->old_id));
- assert (M);
- if (M->flags & TGLMF_PENDING) {
- tglm_message_remove_unsent (TLS, M);
- M->flags &= ~TGLMF_PENDING;
- }
-
- tglm_message_remove_tree (TLS, M);
- tglm_message_del_peer (TLS, M);
-
- M->id = DS_LVAL (DS_U->new_id);
- if (tgl_message_get (TLS, M->id)) {
- tglm_message_del_use (TLS, M);
- tgls_free_message (TLS, M);
- } else {
- tglm_message_insert_tree (TLS, M);
- tglm_message_add_peer (TLS, M);
- }
- return 0;
-}
-
-static int fetch_comb_binlog_message_delete (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- struct tgl_message *M = tgl_message_get (TLS, DS_LVAL (DS_U->lid));
- assert (M);
- if (M->flags & TGLMF_PENDING) {
- tglm_message_remove_unsent (TLS, M);
- M->flags &= ~TGLMF_PENDING;
- }
- tglm_message_remove_tree (TLS, M);
- tglm_message_del_peer (TLS, M);
- tglm_message_del_use (TLS, M);
- tgls_free_message (TLS, M);
- return 0;
-}
-
-static int fetch_comb_binlog_msg_update (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- struct tgl_message *M = tgl_message_get (TLS, DS_LVAL (DS_U->lid));
- if (!M) { return 0; }
- assert (M);
-
- if (!(M->flags & TGLMF_ENCRYPTED)) {
- if (TLS->max_msg_id < M->id) {
- TLS->max_msg_id = M->id;
- }
- }
-
- if (TLS->callback.msg_receive) {
- TLS->callback.msg_receive (TLS, M);
- }
- return 0;
-}
-
-static int fetch_comb_binlog_reset_authorization (struct tgl_state *TLS, void *extra) {
- int i;
- for (i = 0; i <= TLS->max_dc_num; i++) if (TLS->DC_list[i]) {
- struct tgl_dc *D = TLS->DC_list[i];
- D->flags = 0;
- D->state = st_init;
- D->auth_key_id = D->temp_auth_key_id = 0;
- }
- TLS->seq = 0;
- TLS->qts = 0;
- return 0;
-}
-
-static int fetch_comb_binlog_encr_chat_exchange_new (struct tgl_state *TLS, struct tl_ds_binlog_update *DS_U) {
- tgl_peer_t *P = tgl_peer_get (TLS, TGL_MK_ENCR_CHAT (DS_LVAL (DS_U->id)));
- assert (P);
- if (DS_U->state) {
- P->encr_chat.exchange_state = DS_LVAL (DS_U->state);
- }
- if (DS_U->exchange_id) {
- P->encr_chat.exchange_id = DS_LVAL (DS_U->exchange_id);
- }
-
- static unsigned char sha_buffer[20];
- switch (P->encr_chat.exchange_state) {
- case tgl_sce_requested:
- tglf_fetch_int_tuple (P->encr_chat.exchange_key, DS_U->key->key, 64);
- break;
- case tgl_sce_accepted:
- tglf_fetch_int_tuple (P->encr_chat.exchange_key, DS_U->key->key, 64);
-
- SHA1 ((unsigned char *)P->encr_chat.exchange_key, 256, sha_buffer);
- P->encr_chat.exchange_key_fingerprint = *(long long *)(sha_buffer + 12);
- break;
- case tgl_sce_committed:
- memcpy (P->encr_chat.exchange_key, P->encr_chat.key, 256);
- P->encr_chat.exchange_key_fingerprint = P->encr_chat.key_fingerprint;
-
- tglf_fetch_int_tuple (P->encr_chat.key, DS_U->key->key, 64);
-
- SHA1 ((unsigned char *)P->encr_chat.key, 256, sha_buffer);
- P->encr_chat.key_fingerprint = *(long long *)(sha_buffer + 12);
- break;
- case tgl_sce_confirmed:
- P->encr_chat.exchange_state = tgl_sce_none;
- if (P->encr_chat.exchange_state != tgl_sce_committed) {
- memcpy (P->encr_chat.key, P->encr_chat.exchange_key, 256);
- P->encr_chat.key_fingerprint = P->encr_chat.exchange_key_fingerprint;
- }
- break;
- case tgl_sce_aborted:
- P->encr_chat.exchange_state = tgl_sce_none;
- if (P->encr_chat.exchange_state == tgl_sce_committed) {
- memcpy (P->encr_chat.key, P->encr_chat.exchange_key, 256);
- P->encr_chat.key_fingerprint = P->encr_chat.exchange_key_fingerprint;
- }
- break;
- default:
- assert (0);
- }
- return 0;
-}
-
-#define FETCH_COMBINATOR_FUNCTION(NAME) \
- case CODE_ ## NAME:\
- ok = fetch_comb_ ## NAME (TLS, DS_U); \
- break; \
-
-
-static void replay_log_event (struct tgl_state *TLS) {
- assert (rptr < wptr);
- int op = *rptr;
-
- vlogprintf (E_DEBUG, "replay_log_event: log_pos=%"_PRINTF_INT64_"d, op=0x%08x\n", binlog_pos, op);
-
- in_ptr = rptr;
- in_end = wptr;
- if (skip_type_any (TYPE_TO_PARAM (binlog_update)) < 0) {
- vlogprintf (E_ERROR, "Can not replay at %"_PRINTF_INT64_"d (magic = 0x%08x)\n", binlog_pos, *rptr);
- assert (0);
- }
- int *end = in_ptr;
- in_end = in_ptr;
- in_ptr = rptr;
- struct tl_ds_binlog_update *DS_U = fetch_ds_type_binlog_update (TYPE_TO_PARAM (binlog_update));
- assert (in_ptr == end);
-
- int ok = -1;
-
- switch (op) {
- FETCH_COMBINATOR_FUNCTION (binlog_start)
- FETCH_COMBINATOR_FUNCTION (binlog_dc_option)
- FETCH_COMBINATOR_FUNCTION (binlog_dc_option_new)
- FETCH_COMBINATOR_FUNCTION (binlog_auth_key)
- FETCH_COMBINATOR_FUNCTION (binlog_default_dc)
- FETCH_COMBINATOR_FUNCTION (binlog_dc_signed)
-
- FETCH_COMBINATOR_FUNCTION (binlog_our_id)
-
- FETCH_COMBINATOR_FUNCTION (binlog_set_dh_params)
- FETCH_COMBINATOR_FUNCTION (binlog_set_pts)
- FETCH_COMBINATOR_FUNCTION (binlog_set_qts)
- FETCH_COMBINATOR_FUNCTION (binlog_set_date)
- FETCH_COMBINATOR_FUNCTION (binlog_set_seq)
-
- FETCH_COMBINATOR_FUNCTION (binlog_user_new)
- FETCH_COMBINATOR_FUNCTION (binlog_user_delete)
-
- FETCH_COMBINATOR_FUNCTION (binlog_chat_new)
- //FETCH_COMBINATOR_FUNCTION (binlog_chat_delete)
-
- FETCH_COMBINATOR_FUNCTION (binlog_encr_chat_new)
- FETCH_COMBINATOR_FUNCTION (binlog_encr_chat_delete)
- FETCH_COMBINATOR_FUNCTION (binlog_chat_add_participant)
- FETCH_COMBINATOR_FUNCTION (binlog_chat_del_participant)
-
- FETCH_COMBINATOR_FUNCTION (binlog_message_new)
- FETCH_COMBINATOR_FUNCTION (binlog_message_encr_new)
- FETCH_COMBINATOR_FUNCTION (binlog_message_delete)
- FETCH_COMBINATOR_FUNCTION (binlog_set_msg_id)
-
- FETCH_COMBINATOR_FUNCTION (binlog_encr_chat_exchange_new)
-
- FETCH_COMBINATOR_FUNCTION (binlog_msg_update)
- FETCH_COMBINATOR_FUNCTION (binlog_reset_authorization)
- default:
- vlogprintf (E_ERROR, "Unknown op 0x%08x\n", op);
- assert (0);
- }
- assert (ok >= 0);
-
- free_ds_type_binlog_update (DS_U, TYPE_TO_PARAM (binlog_update));
- assert (in_ptr == end);
- //assert (in_ptr == in_end);
- binlog_pos += (in_ptr - rptr) * 4;
- rptr = in_ptr;
-}
-
-static void create_new_binlog (struct tgl_state *TLS) {
- clear_packet ();
- //static int s[1000];
-
- //packet_ptr = s;
- out_int (CODE_binlog_start);
- if (TLS->test_mode) {
- out_int (CODE_binlog_dc_option);
- out_int (1);
- out_string ("");
- out_string (TG_SERVER_TEST_1);
- out_int (443);
- out_int (CODE_binlog_dc_option);
- out_int (2);
- out_string ("");
- out_string (TG_SERVER_TEST_2);
- out_int (443);
- out_int (CODE_binlog_dc_option);
- out_int (3);
- out_string ("");
- out_string (TG_SERVER_TEST_3);
- out_int (443);
- out_int (CODE_binlog_default_dc);
- out_int (2);
- } else {
- out_int (CODE_binlog_dc_option);
- out_int (1);
- out_string ("");
- out_string (TG_SERVER_1);
- out_int (443);
- out_int (CODE_binlog_dc_option);
- out_int (2);
- out_string ("");
- out_string (TG_SERVER_2);
- out_int (443);
- out_int (CODE_binlog_dc_option);
- out_int (3);
- out_string ("");
- out_string (TG_SERVER_3);
- out_int (443);
- out_int (CODE_binlog_dc_option);
- out_int (4);
- out_string ("");
- out_string (TG_SERVER_4);
- out_int (443);
- out_int (CODE_binlog_dc_option);
- out_int (5);
- out_string ("");
- out_string (TG_SERVER_5);
- out_int (443);
- out_int (CODE_binlog_default_dc);
- out_int (2);
- }
-
-#if defined(_MSC_VER) && _MSC_VER >= 1400
- int fd = 0;
- if(_sopen_s (&fd, TLS->binlog_name, _O_WRONLY | _O_EXCL | _O_CREAT, _SH_DENYNO, _S_IREAD | _S_IWRITE) != 0 ) {
-#else
- int fd = open (TLS->binlog_name, O_WRONLY | O_EXCL | O_CREAT, 0600);
- if (fd < 0) {
-#endif
- perror ("Write new binlog");
- exit (2);
- }
- assert (write (fd, packet_buffer, (packet_ptr - packet_buffer) * 4) == (packet_ptr - packet_buffer) * 4);
- close (fd);
-}
-
-
-void tgl_replay_log (struct tgl_state *TLS) {
- if (!TLS->binlog_enabled) { return; }
-#if defined(WIN32) || defined(_WIN32)
- if (INVALID_FILE_ATTRIBUTES == GetFileAttributesA (TLS->binlog_name) && GetLastError () == ERROR_FILE_NOT_FOUND) {
-#else
- if (access (TLS->binlog_name, F_OK) < 0) {
-#endif
- printf ("No binlog found. Creating new one\n");
- create_new_binlog (TLS);
- }
-#if defined(_MSC_VER) && _MSC_VER >= 1400
- int fd = 0;
- if (_sopen_s(&fd, TLS->binlog_name, _O_RDONLY | _O_BINARY, _SH_DENYNO, _S_IREAD | _S_IWRITE) != 0) {
-#elif defined(WIN32) || defined(_WIN32)
- int fd = open (TLS->binlog_name, O_RDONLY | O_BINARY);
- if (fd < 0) {
-#else
- int fd = open (TLS->binlog_name, O_RDONLY);
- if (fd < 0) {
-#endif
- perror ("binlog open");
- exit (2);
- }
- int end = 0;
- in_replay_log = 1;
- while (1) {
- if (!end && wptr - rptr < MAX_LOG_EVENT_SIZE / 4) {
- if (wptr == rptr) {
- wptr = rptr = binlog_buffer;
- } else {
- int x = wptr - rptr;
- memcpy (binlog_buffer, rptr, 4 * x);
- wptr -= (rptr - binlog_buffer);
- rptr = binlog_buffer;
- }
- int l = (binlog_buffer + BINLOG_BUFFER_SIZE - wptr) * 4;
- int k = read (fd, wptr, l);
- if (k < 0) {
- perror ("read binlog");
- exit (2);
- }
- assert (!(k & 3));
- if (k < l) {
- end = 1;
- }
- wptr += (k / 4);
- }
- if (wptr == rptr) { break; }
- replay_log_event (TLS);
- }
- in_replay_log = 0;
- close (fd);
-}
-
-//static int b_packet_buffer[PACKET_BUFFER_SIZE];
-
-void tgl_reopen_binlog_for_writing (struct tgl_state *TLS) {
-#if defined(_MSC_VER) && _MSC_VER >= 1400
- if (_sopen_s (&TLS->binlog_fd, TLS->binlog_name, _O_WRONLY | _O_BINARY, _SH_DENYNO, _S_IREAD | _S_IWRITE) != 0) {
-#elif defined(WIN32) || defined(_WIN32)
- TLS->binlog_fd = open (TLS->binlog_name, O_WRONLY | _O_BINARY);
- if (TLS->binlog_fd < 0) {
-#else
- TLS->binlog_fd = open (TLS->binlog_name, O_WRONLY);
- if (TLS->binlog_fd < 0) {
-#endif
- perror ("binlog open");
- exit (2);
- }
-
- assert (lseek (TLS->binlog_fd, binlog_pos, SEEK_SET) == binlog_pos);
-#if defined(WIN32) || defined(_WIN32)
- HANDLE h = INVALID_HANDLE_VALUE;
- DWORD size_lower, size_upper;
- DWORD err = 0;
- OVERLAPPED ovlp;
- int flags = 0;
-
- h = (HANDLE)_get_osfhandle(TLS->binlog_fd);
- if (h == INVALID_HANDLE_VALUE) {
- errno = EBADF;
- goto error;
- }
-
- size_lower = GetFileSize (h, &size_upper);
- if (size_lower == INVALID_FILE_SIZE) {
- goto get_err;
- }
-
- memset (&ovlp, 0, sizeof ovlp);
- flags |= LOCKFILE_EXCLUSIVE_LOCK | LOCKFILE_FAIL_IMMEDIATELY;
-
- if (!LockFileEx (h, flags, 0, size_lower, size_upper, &ovlp)) {
- goto get_err;
- }
- return;
-
-error:
- perror ("get lock");
- exit(2);
-
-get_err:
- err = GetLastError();
- switch (err)
- {
- case ERROR_LOCK_VIOLATION:
- errno = EAGAIN;
- break;
- case ERROR_NOT_ENOUGH_MEMORY:
- errno = ENOMEM;
- break;
- case ERROR_BAD_COMMAND:
- errno = EINVAL;
- break;
- default:
- errno = err;
- }
- goto error;
-#else
- if (flock (TLS->binlog_fd, LOCK_EX | LOCK_NB) < 0) {
- perror ("get lock");
- exit (2);
- }
-#endif
-}
-
-static void add_log_event (struct tgl_state *TLS, const int *data, int len) {
- vlogprintf (E_DEBUG, "Add log event: magic = 0x%08x, len = %d\n", data[0], len);
- assert (!(len & 3));
- int *ev = talloc (len);
- memcpy (ev, data, len);
- rptr = (void *)ev;
- wptr = rptr + (len / 4);
- int *in = in_ptr;
- int *end = in_end;
- replay_log_event (TLS);
- if (rptr != wptr) {
- vlogprintf (E_ERROR, "Unread %"_PRINTF_INT64_"d ints. Len = %d\n", (long long)(wptr - rptr), len);
- assert (rptr == wptr);
- }
- if (TLS->binlog_enabled) {
- assert (TLS->binlog_fd > 0);
- assert (write (TLS->binlog_fd, ev, len) == len);
- }
- tfree (ev, len);
- in_ptr = in;
- in_end = end;
-}
-
-void bl_do_dc_option_new (struct tgl_state *TLS, int flags, int id, const char *name, int l1, const char *ip, int l2, int port) {
- struct tgl_dc *DC = TLS->DC_list[id];
-
- if (DC) {
- struct tgl_dc_option *O = DC->options[flags & 3];
- while (O) {
- if (!strncmp (O->ip, ip, l2)) {
- return;
- }
- O = O->next;
- }
- }
-
- clear_packet ();
- out_int (CODE_binlog_dc_option_new);
- out_int (flags);
- out_int (id);
-
- out_cstring (name, l1);
- out_cstring (ip, l2);
- out_int (port);
-
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_dc_option (struct tgl_state *TLS, int id, const char *name, int l1, const char *ip, int l2, int port) {
- bl_do_dc_option_new (TLS, 0, id, name, l1, ip, l2, port);
-}
-
-void bl_do_set_working_dc (struct tgl_state *TLS, int num) {
- int *ev = alloc_log_event (8);
- ev[0] = CODE_binlog_default_dc;
- ev[1] = num;
- add_log_event (TLS, ev, 8);
-}
-
-void bl_do_dc_signed (struct tgl_state *TLS, int id) {
- clear_packet ();
- out_int (CODE_binlog_dc_signed);
- out_int (id);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_set_our_id (struct tgl_state *TLS, int id) {
- if (TLS->our_id) {
- assert (TLS->our_id == id);
- return;
- }
-
- clear_packet ();
- out_int (CODE_binlog_our_id);
- out_int (id);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_set_dh_params (struct tgl_state *TLS, int root, unsigned char prime[], int version) {
- clear_packet ();
- out_int (CODE_binlog_set_dh_params);
- out_int (root);
- out_ints ((void *)prime, 64);
- out_int (version);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_set_pts (struct tgl_state *TLS, int pts) {
- if (TLS->locks & TGL_LOCK_DIFF) { return; }
- if (pts <= TLS->pts) { return; }
-
- clear_packet ();
- out_int (CODE_binlog_set_pts);
- out_int (pts);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_set_qts (struct tgl_state *TLS, int qts) {
- if (TLS->locks & TGL_LOCK_DIFF) { return; }
- if (qts <= TLS->qts) { return; }
-
- clear_packet ();
- out_int (CODE_binlog_set_qts);
- out_int (qts);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_set_date (struct tgl_state *TLS, int date) {
- if (TLS->locks & TGL_LOCK_DIFF) { return; }
- if (date <= TLS->date) { return; }
-
- clear_packet ();
- out_int (CODE_binlog_set_date);
- out_int (date);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_set_seq (struct tgl_state *TLS, int seq) {
- if (TLS->locks & TGL_LOCK_DIFF) { return; }
- if (seq <= TLS->seq) { return; }
-
- clear_packet ();
- out_int (CODE_binlog_set_seq);
- out_int (seq);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_set_msg_id (struct tgl_state *TLS, struct tgl_message *M, int id) {
- if (M->id == id) { return; }
-
- clear_packet ();
- out_int (CODE_binlog_set_msg_id);
- out_long (M->id);
- out_int (id);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_user_delete (struct tgl_state *TLS, struct tgl_user *U) {
- if (U->flags & TGLUF_DELETED) { return; }
-
- clear_packet ();
- out_int (CODE_binlog_user_delete);
- out_int (tgl_get_peer_id (U->id));
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_encr_chat_delete (struct tgl_state *TLS, struct tgl_secret_chat *U) {
- if (!(U->flags & TGLPF_CREATED) || U->state == sc_deleted || U->state == sc_none) { return; }
-
- clear_packet ();
- out_int (CODE_binlog_encr_chat_delete);
- out_int (tgl_get_peer_id (U->id));
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_chat_add_user (struct tgl_state *TLS, struct tgl_chat *C, int version, int user, int inviter, int date) {
- if (C->user_list_version >= version || !C->user_list_version) { return; }
-
- clear_packet ();
- out_int (CODE_binlog_chat_add_participant);
- out_int (tgl_get_peer_id (C->id));
- out_int (version);
- out_int (user);
- out_int (inviter);
- out_int (date);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_chat_del_user (struct tgl_state *TLS, struct tgl_chat *C, int version, int user) {
- if (C->user_list_version >= version || !C->user_list_version) { return; }
-
- clear_packet ();
- out_int (CODE_binlog_chat_del_participant);
- out_int (tgl_get_peer_id (C->id));
- out_int (version);
- out_int (user);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_create_message_new (struct tgl_state *TLS, long long id, int *from_id, int *to_type, int *to_id, int *fwd_from_id, int *fwd_date, int *date, const char *message, int message_len, struct tl_ds_message_media *media, struct tl_ds_message_action *action, int *reply_id, struct tl_ds_reply_markup *reply_markup, int flags) {
- clear_packet ();
- assert (!(flags & 0xfffe0000));
-
- out_int (CODE_binlog_message_new);
- int *flags_p = packet_ptr;
- out_int (flags);
- assert (*flags_p == flags);
-
- out_long (id);
-
- if (from_id) {
- assert (to_type);
- assert (to_id);
- (*flags_p) |= (1 << 17);
- out_int (*from_id);
- out_int (*to_type);
- out_int (*to_id);
- }
-
- if (fwd_from_id) {
- assert (fwd_date);
- (*flags_p) |= (1 << 18);
- out_int (*fwd_from_id);
- out_int (*fwd_date);
- }
-
- if (date) {
- (*flags_p) |= (1 << 19);
- out_int (*date);
- }
-
- if (message) {
- (*flags_p) |= (1 << 20);
- out_cstring (message, message_len);
- }
-
- if (media) {
- (*flags_p) |= (1 << 21);
- store_ds_type_message_media (media, TYPE_TO_PARAM (message_media));
- }
-
- if (action) {
- (*flags_p) |= (1 << 22);
-
- store_ds_type_message_action (action, TYPE_TO_PARAM (message_action));
- }
-
- if (reply_id) {
- (*flags_p) |= (1 << 23);
- out_int (*reply_id);
- }
-
- if (reply_markup) {
- (*flags_p) |= (1 << 24);
- store_ds_type_reply_markup (reply_markup, TYPE_TO_PARAM (reply_markup));
- }
-
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_create_message_encr_new (struct tgl_state *TLS, long long id, int *from_id, int *to_type, int *to_id, int *date, const char *message, int message_len, struct tl_ds_decrypted_message_media *media, struct tl_ds_decrypted_message_action *action, struct tl_ds_encrypted_file *file, int flags) {
- clear_packet ();
- assert (!(flags & 0xfffe0000));
-
- out_int (CODE_binlog_message_encr_new);
- int *flags_p = packet_ptr;
- out_int (flags);
- assert (flags & TGLMF_ENCRYPTED);
- assert (*flags_p == flags);
-
- out_long (id);
-
- if (from_id) {
- assert (to_id);
- assert (to_type);
- (*flags_p) |= (1 << 17);
- out_int (*from_id);
- out_int (*to_type);
- out_int (*to_id);
- }
-
- if (date) {
- (*flags_p) |= (1 << 19);
- out_int (*date);
- }
-
- if (message) {
- (*flags_p) |= (1 << 20);
- out_cstring (message, message_len);
- }
-
- if (media) {
- (*flags_p) |= (1 << 21);
- store_ds_type_decrypted_message_media (media, TYPE_TO_PARAM (decrypted_message_media));
- }
-
- if (action) {
- (*flags_p) |= (1 << 22);
- store_ds_type_decrypted_message_action (action, TYPE_TO_PARAM (decrypted_message_action));
- }
-
- if (file) {
- (*flags_p) |= (1 << 23);
- store_ds_type_encrypted_file (file, TYPE_TO_PARAM (encrypted_file));
- }
-
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_message_delete (struct tgl_state *TLS, struct tgl_message *M) {
- clear_packet ();
- out_int (CODE_binlog_message_delete);
- out_long (M->id);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_msg_update (struct tgl_state *TLS, long long id) {
- clear_packet ();
- out_int (CODE_binlog_msg_update);
- out_long (id);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_reset_authorization (struct tgl_state *TLS) {
- clear_packet ();
- out_int (CODE_binlog_reset_authorization);
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_encr_chat_exchange_new (struct tgl_state *TLS, struct tgl_secret_chat *E, long long *exchange_id, const void *key, int *state) {
- clear_packet ();
-
- out_int (CODE_binlog_encr_chat_exchange_new);
- out_int (tgl_get_peer_id (E->id));
-
- int *flags_p = packet_ptr;
- out_int (0);
-
- if (exchange_id) {
- *flags_p |= (1 << 17);
- out_long (*exchange_id);
- }
-
- if (key) {
- *flags_p |= (1 << 18);
- out_ints ((void *)key, 64);
- }
-
- if (state) {
- *flags_p |= (1 << 19);
- out_int (*state);
- }
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
-}
-
-void bl_do_set_auth_key (struct tgl_state *TLS, int num, unsigned char *buf) {
- int *ev = alloc_log_event (8 + 8 + 256);
- ev[0] = CODE_binlog_auth_key;
- ev[1] = num;
- //*(long long *)(ev + 2) = fingerprint;
- memcpy (ev + 2, buf, 256);
- add_log_event (TLS, ev, 8 + 256);
-}
-
-void bl_do_user_new (struct tgl_state *TLS, int id, long long *access_hash, const char *first_name, int first_name_len, const char *last_name, int last_name_len, const char *phone, int phone_len, const char *username, int username_len, struct tl_ds_photo *photo, const char *real_first_name, int real_first_name_len, const char *real_last_name, int real_last_name_len, struct tl_ds_user_profile_photo *profile_photo, int *last_read_in, int *last_read_out, struct tl_ds_bot_info *bot_info, int flags) {
- tgl_peer_t *PP = tgl_peer_get (TLS, TGL_MK_USER (id));
- struct tgl_user *P = &PP->user;
-
- if (flags == TGL_FLAGS_UNCHANGED) {
- flags = P->flags & 0xffff;
- }
-
- clear_packet ();
- out_int (CODE_binlog_user_new);
-
- int *flags_p = packet_ptr;
-
- assert (!(flags & 0xfffe0000));
- out_int (flags);
- out_int (id);
-
- if (access_hash) {
- if (!P || P->access_hash != *access_hash) {
- out_long (*access_hash);
- (*flags_p) |= (1 << 17);
- }
- }
-
- if (first_name) {
- if (!P || !P->first_name || !P->last_name || mystreq1 (P->first_name, first_name, first_name_len) || mystreq1 (P->last_name, last_name, last_name_len)) {
- out_cstring (first_name, first_name_len);
- out_cstring (last_name, last_name_len);
-
- (*flags_p) |= (1 << 18);
- }
- }
-
- if (phone) {
- if (!P || !P->phone || mystreq1 (P->phone, phone, phone_len)) {
- out_cstring (phone, phone_len);
- (*flags_p) |= (1 << 19);
- }
- }
-
- if (username) {
- if (!P || !P->username || mystreq1 (P->username, username, username_len)) {
- out_cstring (username, username_len);
- (*flags_p) |= (1 << 20);
- }
- }
-
- if (photo) {
- if (!P || !P->photo || P->photo->id != DS_LVAL (photo->id)) {
- store_ds_type_photo (photo, TYPE_TO_PARAM (photo));
- (*flags_p) |= (1 << 21);
- }
- }
-
- if (real_first_name) {
- assert (real_last_name);
- if (!P || !P->real_first_name || !P->real_last_name || mystreq1 (P->real_first_name, real_first_name, real_first_name_len) || mystreq1 (P->real_last_name, real_last_name, real_last_name_len)) {
- out_cstring (real_first_name, real_first_name_len);
- out_cstring (real_last_name, real_last_name_len);
-
- (*flags_p) |= (1 << 22);
- }
- }
-
- if (profile_photo) {
- if (!P || P->photo_id != DS_LVAL (profile_photo->photo_id)) {
- store_ds_type_user_profile_photo (profile_photo, TYPE_TO_PARAM (user_profile_photo));
- (*flags_p) |= (1 << 23);
- }
- }
-
- if (last_read_in) {
- if (!P || P->last_read_in < *last_read_in) {
- out_int (*last_read_in);
- (*flags_p) |= (1 << 24);
- }
- }
-
- if (last_read_out) {
- if (!P || P->last_read_out < *last_read_out) {
- out_int (*last_read_out);
- (*flags_p) |= (1 << 25);
- }
- }
-
- if (bot_info) {
- if (!P || !P->bot_info || P->bot_info->version != DS_LVAL (bot_info->version)) {
- store_ds_type_bot_info (bot_info, TYPE_TO_PARAM (bot_info));
- (*flags_p) |= (1 << 26);
- }
- }
-
- if (((*flags_p) & 0xffff0000) || !P || (P->flags & 0xffff) != flags) {
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
- }
-}
-
-void bl_do_chat_new (struct tgl_state *TLS, int id, const char *title, int title_len, int *user_num, int *date, int *version, struct tl_ds_vector *participants, struct tl_ds_chat_photo *chat_photo, struct tl_ds_photo *photo, int *admin, int *last_read_in, int *last_read_out, int flags) {
- tgl_peer_t *PP = tgl_peer_get (TLS, TGL_MK_CHAT (id));
- struct tgl_chat *P = &PP->chat;
-
- if (flags == TGL_FLAGS_UNCHANGED) {
- flags = P ? (P->flags & 0xffff) : 0;
- }
-
- clear_packet ();
- out_int (CODE_binlog_chat_new);
-
- int *flags_p = packet_ptr;
-
- assert (!(flags & 0xfffe0000));
- out_int (flags);
- out_int (id);
-
- if (title) {
- if (!P || !P->title || mystreq1 (P->title, title, title_len)) {
- out_cstring (title, title_len);
- (*flags_p) |= (1 << 17);
- }
- }
-
- if (user_num) {
- if (!P || P->users_num != *user_num) {
- out_int (*user_num);
- (*flags_p) |= (1 << 18);
- }
- }
-
- if (date) {
- if (!P || P->date != *date) {
- out_int (*date);
- (*flags_p) |= (1 << 19);
- }
- }
-
- if (version) {
- assert (participants);
- if (!P || *version != P->version) {
- out_int (*version);
- store_ds_type_vector (participants, TYPE_TO_PARAM_1 (vector, TYPE_TO_PARAM (chat_participant)));
- (*flags_p) |= (1 << 20);
- }
- }
-
- if (chat_photo && chat_photo->photo_big) {
- if (!P || DS_LVAL (chat_photo->photo_big->secret) != P->photo_big.secret) {
- store_ds_type_chat_photo (chat_photo, TYPE_TO_PARAM (chat_photo));
- (*flags_p) |= (1 << 21);
- }
- }
-
- if (photo) {
- if (!P || !P->photo || P->photo->id != DS_LVAL (photo->id)) {
- store_ds_type_photo (photo, TYPE_TO_PARAM (photo));
- (*flags_p) |= (1 << 22);
- }
- }
-
- if (admin) {
- if (!P || P->admin_id != *admin) {
- out_int (*admin);
- (*flags_p) |= (1 << 23);
- }
- }
-
- if (last_read_in) {
- if (!P || P->last_read_in < *last_read_in) {
- out_int (*last_read_in);
- (*flags_p) |= (1 << 24);
- }
- }
-
- if (last_read_out) {
- if (!P || P->last_read_out < *last_read_out) {
- out_int (*last_read_out);
- (*flags_p) |= (1 << 25);
- }
- }
-
- if (((*flags_p) & 0xffff0000) || !P || (P->flags & 0xffff) != flags) {
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
- }
-}
-
-void bl_do_encr_chat_new (struct tgl_state *TLS, int id, long long *access_hash, int *date, int *admin, int *user_id, void *key, void *g_key, void *first_key_id, int *state, int *ttl, int *layer, int *in_seq_no, int *last_in_seq_no, int *out_seq_no, long long *key_fingerprint, int flags) {
- tgl_peer_t *PP = tgl_peer_get (TLS, TGL_MK_ENCR_CHAT (id));
- struct tgl_secret_chat *P = PP ? &PP->encr_chat : NULL;
-
- if (flags == TGL_FLAGS_UNCHANGED) {
- flags = P->flags & 0xffff;
- }
-
- clear_packet ();
- out_int (CODE_binlog_encr_chat_new);
-
- int *flags_p = packet_ptr;
-
- assert (!(flags & 0xfffe0000));
- out_int (flags);
- out_int (id);
-
- if (access_hash) {
- if (!P || P->access_hash != *access_hash) {
- out_long (*access_hash);
- (*flags_p) |= (1 << 17);
- }
- }
-
- if (date) {
- if (!P || P->date != *date) {
- out_int (*date);
- (*flags_p) |= (1 << 18);
- }
- }
-
- if (admin) {
- if (!P || P->admin_id != *admin) {
- out_int (*admin);
- (*flags_p) |= (1 << 19);
- }
- }
-
- if (user_id) {
- if (!P || P->user_id != *user_id) {
- out_int (*user_id);
- (*flags_p) |= (1 << 20);
- }
- }
-
- if (key) {
- if (!P || memcmp (P->key, key, 256)) {
- out_ints (key, 64);
- (*flags_p) |= (1 << 21);
- }
- }
-
- if (g_key) {
- if (!P || !P->g_key || memcmp (P->g_key, g_key, 256)) {
- out_ints (g_key, 64);
- (*flags_p) |= (1 << 22);
- }
- }
-
- if (state) {
- if (!P || (int)P->state != *state) {
- out_int (*state);
- (*flags_p) |= (1 << 23);
- }
- }
-
- if (ttl) {
- if (!P || P->ttl != *ttl) {
- out_int (*ttl);
- (*flags_p) |= (1 << 24);
- }
- }
-
- if (layer) {
- if (!P || P->layer != *layer) {
- out_int (*layer);
- (*flags_p) |= (1 << 25);
- }
- }
-
- if (in_seq_no || last_in_seq_no || out_seq_no) {
- if (!P || (in_seq_no && P->in_seq_no != *in_seq_no) ||
- (out_seq_no && P->out_seq_no != *out_seq_no) ||
- (last_in_seq_no && P->last_in_seq_no != *last_in_seq_no)) {
-
- out_int (in_seq_no ? *in_seq_no : P ? P->in_seq_no : 0);
- out_int (last_in_seq_no ? *last_in_seq_no : P ? P->last_in_seq_no : 0);
- out_int (out_seq_no ? *out_seq_no : P ? P->out_seq_no : 0);
- (*flags_p) |= (1 << 26);
- }
- }
-
- if (key_fingerprint) {
- if (!P || P->key_fingerprint != *key_fingerprint) {
- out_long (*key_fingerprint);
- (*flags_p) |= (1 << 27);
- }
- }
-
- if (((*flags_p) & 0xffff0000) || !P || (P->flags & 0xffff) != flags) {
- add_log_event (TLS, packet_buffer, 4 * (packet_ptr - packet_buffer));
- }
-}
diff --git a/protocols/Telegram/src/tgl/config.h b/protocols/Telegram/src/tgl/config.h
deleted file mode 100644
index eaca5156db..0000000000
--- a/protocols/Telegram/src/tgl/config.h
+++ /dev/null
@@ -1,162 +0,0 @@
-/* config.h.in. Generated from configure.ac by autoheader. */
-
-/* disable extf queries */
-// #undef DISABLE_EXTF
-
-/* Use libevent v1 */
-//#undef EVENT_V1
-
-/* Use libevent v2 */
-#define EVENT_V2 1
-
-/* Define to 1 if you have the `alarm' function. */
-// #undef HAVE_ALARM
-
-/* Define to 1 if you have the <arpa/inet.h> header file. */
-// #undef HAVE_ARPA_INET_H
-
-/* Define to 1 if you have the `endpwent' function. */
-// #undef HAVE_ENDPWENT
-
-/* Define to 1 if you have the <execinfo.h> header file. */
-// #undef HAVE_EXECINFO_H
-
-/* Define to 1 if you have the <fcntl.h> header file. */
-#define HAVE_FCNTL_H 1
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#define HAVE_INTTYPES_H 1
-
-/* Define to 1 if you have the `event' library (-levent). */
-// #undef HAVE_LIBEVENT
-
-/* Define to 1 if you have the `m' library (-lm). */
-#define HAVE_LIBM 1
-
-/* Define to 1 if you have `z' library (-lz) */
-#define HAVE_LIBZ 1
-
-/* Define to 1 if you have the <mach/mach.h> header file. */
-// #undef HAVE_MACH_MACH_H
-
-/* Define to 1 if your system has a GNU libc compatible `malloc' function, and
- to 0 otherwise. */
-#define HAVE_MALLOC 1
-
-/* Define to 1 if you have the <malloc.h> header file. */
-#define HAVE_MALLOC_H 1
-
-/* Define to 1 if you have the `memmove' function. */
-#define HAVE_MEMMOVE 1
-
-/* Define to 1 if you have the <memory.h> header file. */
-#define HAVE_MEMORY_H 1
-
-/* Define to 1 if you have the `memset' function. */
-#define HAVE_MEMSET 1
-
-/* Define to 1 if you have the `mkdir' function. */
-#define HAVE_MKDIR 1
-
-/* Define to 1 if you have the <netdb.h> header file. */
-// #undef HAVE_NETDB_H
-
-/* Define to 1 if you have the <netinet/in.h> header file. */
-// #undef HAVE_NETINET_IN_H
-
-/* Define to 1 if your system has a GNU libc compatible `realloc' function,
- and to 0 otherwise. */
-#define HAVE_REALLOC 1
-
-/* Define to 1 if you have the `select' function. */
-#define HAVE_SELECT 1
-
-/* Define to 1 if you have the `socket' function. */
-#define HAVE_SOCKET 1
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#define HAVE_STDINT_H 1
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#define HAVE_STDLIB_H 1
-
-/* Define to 1 if you have the `strdup' function. */
-#define HAVE_STRDUP 1
-
-/* Define to 1 if you have the <strings.h> header file. */
-// #undef HAVE_STRINGS_H
-
-/* Define to 1 if you have the <string.h> header file. */
-#define HAVE_STRING_H 1
-
-/* Define to 1 if you have the `strndup' function. */
-#define HAVE_STRNDUP 1
-
-/* Define to 1 if you have the <sys/file.h> header file. */
-// #undef HAVE_SYS_FILE_H
-
-/* Define to 1 if you have the <sys/socket.h> header file. */
-// #undef HAVE_SYS_SOCKET_H
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#define HAVE_SYS_STAT_H 1
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#define HAVE_SYS_TYPES_H 1
-
-/* Define to 1 if you have the <termios.h> header file. */
-// #undef HAVE_TERMIOS_H
-
-/* Define to 1 if you have the `uname' function. */
-// #undef HAVE_UNAME
-
-/* Define to 1 if you have the <unistd.h> header file. */
-// #undef HAVE_UNISTD_H
-
-/* Define to 1 if the system has the `__builtin_bswap32' built-in function */
-// #undef HAVE___BUILTIN_BSWAP32
-
-/* Define to the address where bug reports for this package should be sent. */
-#define PACKAGE_BUGREPORT ""
-
-/* Define to the full name of this package. */
-#define PACKAGE_NAME "telegram-cli"
-
-/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "telegram-cli 1.0"
-
-/* Define to the one symbol short name of this package. */
-#define PACKAGE_TARNAME "telegram-cli"
-
-/* Define to the home page for this package. */
-#define PACKAGE_URL ""
-
-/* Define to the version of this package. */
-#define PACKAGE_VERSION "1.0"
-
-/* Define to 1 if you have the ANSI C header files. */
-#define STDC_HEADERS 1
-
-/* fixed for correct valgrind work */
-// #undef VALGRIND_FIXES
-
-/* Define to `int' if <sys/types.h> doesn't define. */
-#define gid_t int
-
-/* Define to `__inline__' or `__inline' if that's what the C compiler
- calls it, or to nothing if 'inline' is not supported under any name. */
-#ifndef __cplusplus
-#define inline __inline
-#endif
-
-/* Define to rpl_malloc if the replacement function should be used. */
-// #undef malloc
-
-/* Define to rpl_realloc if the replacement function should be used. */
-// #undef realloc
-
-/* Define to `unsigned int' if <sys/types.h> does not define. */
-// #undef size_t
-
-/* Define to `int' if <sys/types.h> doesn't define. */
-#define uid_t int
diff --git a/protocols/Telegram/src/tgl/mime-types.c b/protocols/Telegram/src/tgl/mime-types.c
deleted file mode 100644
index 0110d3fa2e..0000000000
--- a/protocols/Telegram/src/tgl/mime-types.c
+++ /dev/null
@@ -1,4421 +0,0 @@
-static char mime_types[] = {
- 0x23, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x20,
- 0x6d, 0x61, 0x70, 0x73, 0x20, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
- 0x74, 0x20, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, 0x74, 0x79, 0x70, 0x65,
- 0x73, 0x20, 0x74, 0x6f, 0x20, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x20,
- 0x66, 0x69, 0x6c, 0x65, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
- 0x6f, 0x6e, 0x28, 0x73, 0x29, 0x2e, 0x0a, 0x23, 0x20, 0x41, 0x6c, 0x74,
- 0x68, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x68, 0x74, 0x74, 0x70, 0x64, 0x2c,
- 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x20, 0x69,
- 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x6d, 0x61,
- 0x6e, 0x79, 0x20, 0x73, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x20,
- 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x6e,
- 0x64, 0x20, 0x68, 0x61, 0x73, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x20, 0x70,
- 0x6c, 0x61, 0x63, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20, 0x64, 0x6f, 0x6d, 0x61,
- 0x69, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x75, 0x6e, 0x6c, 0x69, 0x6d,
- 0x69, 0x74, 0x65, 0x64, 0x20, 0x72, 0x65, 0x64, 0x69, 0x73, 0x72, 0x69,
- 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x23, 0x0a, 0x23, 0x20,
- 0x54, 0x68, 0x65, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x62, 0x65,
- 0x6c, 0x6f, 0x77, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73,
- 0x20, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
- 0x65, 0x72, 0x65, 0x64, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x28, 0x63, 0x6f,
- 0x6d, 0x6d, 0x6f, 0x6e, 0x29, 0x20, 0x75, 0x6e, 0x72, 0x65, 0x67, 0x69,
- 0x73, 0x74, 0x65, 0x72, 0x65, 0x64, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73,
- 0x2e, 0x0a, 0x23, 0x20, 0x41, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x74,
- 0x68, 0x61, 0x74, 0x20, 0x68, 0x61, 0x73, 0x20, 0x6e, 0x6f, 0x20, 0x75,
- 0x6e, 0x69, 0x71, 0x75, 0x65, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73,
- 0x69, 0x6f, 0x6e, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x69,
- 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x20, 0x2d, 0x2d, 0x20, 0x74, 0x68,
- 0x65, 0x79, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x65,
- 0x64, 0x0a, 0x23, 0x20, 0x68, 0x65, 0x72, 0x65, 0x20, 0x74, 0x6f, 0x20,
- 0x67, 0x75, 0x69, 0x64, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x74, 0x6f, 0x77,
- 0x61, 0x72, 0x64, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x20, 0x74, 0x79,
- 0x70, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x6d,
- 0x61, 0x6b, 0x65, 0x20, 0x69, 0x74, 0x20, 0x65, 0x61, 0x73, 0x69, 0x65,
- 0x72, 0x20, 0x74, 0x6f, 0x0a, 0x23, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74,
- 0x69, 0x66, 0x79, 0x20, 0x22, 0x6e, 0x65, 0x77, 0x22, 0x20, 0x74, 0x79,
- 0x70, 0x65, 0x73, 0x2e, 0x20, 0x20, 0x46, 0x69, 0x6c, 0x65, 0x20, 0x65,
- 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x61, 0x72,
- 0x65, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f,
- 0x6e, 0x6c, 0x79, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20,
- 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x0a, 0x23, 0x20, 0x63,
- 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75,
- 0x61, 0x67, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x65, 0x6e, 0x63,
- 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x63,
- 0x68, 0x6f, 0x6f, 0x73, 0x65, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x20, 0x63,
- 0x61, 0x72, 0x65, 0x66, 0x75, 0x6c, 0x6c, 0x79, 0x2e, 0x0a, 0x23, 0x0a,
- 0x23, 0x20, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x20, 0x6d,
- 0x65, 0x64, 0x69, 0x61, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x20, 0x73,
- 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x67,
- 0x69, 0x73, 0x74, 0x65, 0x72, 0x65, 0x64, 0x20, 0x61, 0x73, 0x20, 0x64,
- 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20,
- 0x52, 0x46, 0x43, 0x20, 0x34, 0x32, 0x38, 0x38, 0x2e, 0x0a, 0x23, 0x20,
- 0x54, 0x68, 0x65, 0x20, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
- 0x20, 0x69, 0x73, 0x20, 0x61, 0x74, 0x20, 0x3c, 0x68, 0x74, 0x74, 0x70,
- 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x61, 0x6e, 0x61, 0x2e,
- 0x6f, 0x72, 0x67, 0x2f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65,
- 0x6e, 0x74, 0x73, 0x2f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x2d, 0x74, 0x79,
- 0x70, 0x65, 0x73, 0x2f, 0x3e, 0x2e, 0x0a, 0x23, 0x0a, 0x23, 0x20, 0x4d,
- 0x49, 0x4d, 0x45, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x28, 0x6c, 0x6f,
- 0x77, 0x65, 0x72, 0x63, 0x61, 0x73, 0x65, 0x64, 0x29, 0x09, 0x09, 0x09,
- 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x23,
- 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d,
- 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d,
- 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d,
- 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x09, 0x3d, 0x3d,
- 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x31,
- 0x64, 0x2d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6c, 0x65, 0x61, 0x76, 0x65,
- 0x64, 0x2d, 0x70, 0x61, 0x72, 0x69, 0x74, 0x79, 0x66, 0x65, 0x63, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x33, 0x67, 0x70, 0x70, 0x2d, 0x69, 0x6d, 0x73, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x6d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x6e, 0x64, 0x72, 0x65,
- 0x77, 0x2d, 0x69, 0x6e, 0x73, 0x65, 0x74, 0x09, 0x09, 0x09, 0x65, 0x7a,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x65, 0x66, 0x69, 0x6c, 0x65,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x78, 0x77, 0x61, 0x72, 0x65, 0x09,
- 0x09, 0x09, 0x09, 0x61, 0x77, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x74, 0x6f, 0x6d, 0x2b, 0x78,
- 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x61, 0x74, 0x6f, 0x6d, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61,
- 0x74, 0x6f, 0x6d, 0x63, 0x61, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09,
- 0x09, 0x09, 0x61, 0x74, 0x6f, 0x6d, 0x63, 0x61, 0x74, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x61, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x6d, 0x61, 0x69, 0x6c, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61,
- 0x74, 0x6f, 0x6d, 0x73, 0x76, 0x63, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09,
- 0x09, 0x09, 0x61, 0x74, 0x6f, 0x6d, 0x73, 0x76, 0x63, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x61, 0x75, 0x74, 0x68, 0x2d, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x2d,
- 0x73, 0x6d, 0x74, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x62, 0x65, 0x65, 0x70, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x63, 0x61, 0x6c, 0x65, 0x6e, 0x64,
- 0x61, 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x63, 0x61, 0x6c,
- 0x73, 0x2d, 0x31, 0x38, 0x34, 0x30, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x63, 0x63, 0x6d,
- 0x70, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x63, 0x63, 0x78, 0x6d, 0x6c, 0x2b,
- 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x63, 0x63, 0x78, 0x6d, 0x6c,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x63, 0x64, 0x6d, 0x69, 0x2d, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69,
- 0x6c, 0x69, 0x74, 0x79, 0x09, 0x09, 0x09, 0x63, 0x64, 0x6d, 0x69, 0x61,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x63, 0x64, 0x6d, 0x69, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
- 0x6e, 0x65, 0x72, 0x09, 0x09, 0x09, 0x63, 0x64, 0x6d, 0x69, 0x63, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x63, 0x64, 0x6d, 0x69, 0x2d, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x09,
- 0x09, 0x09, 0x09, 0x63, 0x64, 0x6d, 0x69, 0x64, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x63, 0x64, 0x6d,
- 0x69, 0x2d, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x09, 0x09, 0x09, 0x09,
- 0x63, 0x64, 0x6d, 0x69, 0x6f, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x63, 0x64, 0x6d, 0x69, 0x2d, 0x71,
- 0x75, 0x65, 0x75, 0x65, 0x09, 0x09, 0x09, 0x09, 0x63, 0x64, 0x6d, 0x69,
- 0x71, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x63, 0x65, 0x61, 0x2d, 0x32, 0x30, 0x31, 0x38,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x63, 0x65, 0x6c, 0x6c, 0x6d,
- 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x63, 0x66, 0x77, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x63, 0x6e, 0x72, 0x70, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x6e,
- 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e,
- 0x63, 0x65, 0x2d, 0x69, 0x6e, 0x66, 0x6f, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x63, 0x70, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x63, 0x73, 0x74, 0x61, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x63,
- 0x73, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x63, 0x75, 0x2d, 0x73, 0x65, 0x65, 0x6d, 0x65, 0x09, 0x09, 0x09, 0x09,
- 0x63, 0x75, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x63, 0x79, 0x62, 0x65, 0x72, 0x63, 0x61,
- 0x73, 0x68, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x64, 0x61, 0x76, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x2b,
- 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x64, 0x61, 0x76, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x64, 0x63, 0x61, 0x2d, 0x72, 0x66, 0x74,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x64, 0x65, 0x63, 0x2d, 0x64, 0x78, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x2d, 0x69, 0x6e, 0x66, 0x6f, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x64, 0x69, 0x63, 0x6f, 0x6d, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x64, 0x6e, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x64, 0x6f, 0x63, 0x62, 0x6f, 0x6f,
- 0x6b, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x64, 0x62, 0x6b,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x64, 0x73, 0x6b, 0x70, 0x70, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x64, 0x73, 0x73, 0x63, 0x2b, 0x64, 0x65, 0x72, 0x09, 0x09, 0x09,
- 0x09, 0x64, 0x73, 0x73, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x64, 0x73, 0x73, 0x63, 0x2b, 0x78,
- 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x78, 0x64, 0x73, 0x73, 0x63, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x64, 0x76, 0x63, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x65, 0x63, 0x6d, 0x61, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x09, 0x09, 0x09, 0x09, 0x65, 0x63, 0x6d,
- 0x61, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x65, 0x64, 0x69, 0x2d, 0x63, 0x6f, 0x6e, 0x73,
- 0x65, 0x6e, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x65, 0x64, 0x69, 0x2d, 0x78, 0x31,
- 0x32, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x65, 0x64, 0x69, 0x66, 0x61, 0x63, 0x74, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x65, 0x6d, 0x6d, 0x61, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09,
- 0x65, 0x6d, 0x6d, 0x61, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x65, 0x70, 0x70, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x65, 0x70, 0x75, 0x62, 0x2b, 0x7a, 0x69, 0x70, 0x09,
- 0x09, 0x09, 0x09, 0x65, 0x70, 0x75, 0x62, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x65, 0x73,
- 0x68, 0x6f, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c,
- 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x65, 0x78, 0x69, 0x09, 0x09, 0x09, 0x09, 0x09, 0x65, 0x78,
- 0x69, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x66, 0x61, 0x73, 0x74, 0x69, 0x6e, 0x66, 0x6f,
- 0x73, 0x65, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x66, 0x61, 0x73, 0x74, 0x73, 0x6f,
- 0x61, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x66, 0x69, 0x74, 0x73, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x66, 0x6f,
- 0x6e, 0x74, 0x2d, 0x74, 0x64, 0x70, 0x66, 0x72, 0x09, 0x09, 0x09, 0x09,
- 0x70, 0x66, 0x72, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77,
- 0x6f, 0x72, 0x6b, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74,
- 0x65, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x67, 0x6d, 0x6c, 0x2b, 0x78,
- 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x67, 0x6d, 0x6c, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x67, 0x70,
- 0x78, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x67, 0x70, 0x78,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x67, 0x78, 0x66, 0x09, 0x09, 0x09, 0x09, 0x09, 0x67, 0x78, 0x66,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x68, 0x32, 0x32, 0x34, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x68, 0x65,
- 0x6c, 0x64, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x68, 0x74, 0x74,
- 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x68, 0x79, 0x70, 0x65, 0x72, 0x73, 0x74, 0x75, 0x64, 0x69,
- 0x6f, 0x09, 0x09, 0x09, 0x09, 0x73, 0x74, 0x6b, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x69,
- 0x62, 0x65, 0x2d, 0x6b, 0x65, 0x79, 0x2d, 0x72, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x69, 0x62, 0x65,
- 0x2d, 0x70, 0x6b, 0x67, 0x2d, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x69, 0x62, 0x65, 0x2d, 0x70, 0x70, 0x2d,
- 0x64, 0x61, 0x74, 0x61, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x69, 0x67, 0x65, 0x73, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x69, 0x6d, 0x2d, 0x69, 0x73, 0x63, 0x6f, 0x6d, 0x70, 0x6f,
- 0x73, 0x69, 0x6e, 0x67, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78,
- 0x2e, 0x63, 0x6d, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78,
- 0x2e, 0x6f, 0x62, 0x6a, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78,
- 0x2e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x76, 0x6e, 0x64, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x69, 0x6e,
- 0x6b, 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x69,
- 0x6e, 0x6b, 0x20, 0x69, 0x6e, 0x6b, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x69,
- 0x6f, 0x74, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x69, 0x70, 0x66, 0x69, 0x78, 0x09, 0x09, 0x09,
- 0x09, 0x69, 0x70, 0x66, 0x69, 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x69, 0x70, 0x70,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x69, 0x73, 0x75, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6a, 0x61, 0x76, 0x61,
- 0x2d, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x09, 0x09, 0x09, 0x6a,
- 0x61, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x6a, 0x61, 0x76, 0x61, 0x2d, 0x73, 0x65, 0x72, 0x69,
- 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x2d, 0x6f, 0x62, 0x6a, 0x65, 0x63,
- 0x74, 0x09, 0x09, 0x73, 0x65, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6a, 0x61, 0x76, 0x61, 0x2d,
- 0x76, 0x6d, 0x09, 0x09, 0x09, 0x09, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x09, 0x09,
- 0x09, 0x09, 0x6a, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6a, 0x73, 0x6f, 0x6e, 0x09, 0x09, 0x09,
- 0x09, 0x6a, 0x73, 0x6f, 0x6e, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6a, 0x73, 0x6f, 0x6e, 0x6d, 0x6c,
- 0x2b, 0x6a, 0x73, 0x6f, 0x6e, 0x09, 0x09, 0x09, 0x09, 0x6a, 0x73, 0x6f,
- 0x6e, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6b, 0x70, 0x6d, 0x6c, 0x2d, 0x72,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x6b, 0x70, 0x6d, 0x6c, 0x2d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6c, 0x6f, 0x73, 0x74, 0x2b,
- 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x6c, 0x6f, 0x73, 0x74, 0x78,
- 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x6d, 0x61, 0x63, 0x2d, 0x62, 0x69, 0x6e, 0x68, 0x65,
- 0x78, 0x34, 0x30, 0x09, 0x09, 0x09, 0x68, 0x71, 0x78, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x61,
- 0x63, 0x2d, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x70, 0x72, 0x6f,
- 0x09, 0x09, 0x09, 0x63, 0x70, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x61, 0x63,
- 0x77, 0x72, 0x69, 0x74, 0x65, 0x69, 0x69, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x61, 0x64, 0x73,
- 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x6d, 0x61, 0x64, 0x73,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x6d, 0x61, 0x72, 0x63, 0x09, 0x09, 0x09, 0x09, 0x6d, 0x72, 0x63,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x6d, 0x61, 0x72, 0x63, 0x78, 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c,
- 0x09, 0x09, 0x09, 0x09, 0x6d, 0x72, 0x63, 0x78, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x61, 0x74,
- 0x68, 0x65, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, 0x09, 0x09, 0x09, 0x09,
- 0x6d, 0x61, 0x20, 0x6e, 0x62, 0x20, 0x6d, 0x62, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d,
- 0x61, 0x74, 0x68, 0x6d, 0x6c, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
- 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x61, 0x74, 0x68,
- 0x6d, 0x6c, 0x2d, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x61, 0x74, 0x68,
- 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x6d, 0x61,
- 0x74, 0x68, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x62, 0x6d, 0x73, 0x2d,
- 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x2d, 0x70,
- 0x72, 0x6f, 0x63, 0x65, 0x64, 0x75, 0x72, 0x65, 0x2d, 0x64, 0x65, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x6d, 0x62, 0x6d, 0x73, 0x2d, 0x64, 0x65, 0x72, 0x65,
- 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x6d, 0x62, 0x6d, 0x73, 0x2d, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f,
- 0x70, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x62, 0x6d,
- 0x73, 0x2d, 0x6d, 0x73, 0x6b, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x6d, 0x62, 0x6d, 0x73, 0x2d, 0x6d, 0x73, 0x6b, 0x2d, 0x72, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x6d, 0x62, 0x6d, 0x73, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x2d, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x69, 0x6f, 0x6e, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x62,
- 0x6d, 0x73, 0x2d, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e,
- 0x2d, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x6d, 0x62, 0x6d, 0x73, 0x2d, 0x72, 0x65, 0x67, 0x69, 0x73,
- 0x74, 0x65, 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x62,
- 0x6d, 0x73, 0x2d, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x2d,
- 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x6d, 0x62, 0x6d, 0x73, 0x2d, 0x75, 0x73, 0x65, 0x72,
- 0x2d, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2d, 0x64, 0x65, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x6d, 0x62, 0x6f, 0x78, 0x09, 0x09, 0x09, 0x09, 0x6d, 0x62, 0x6f,
- 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x63, 0x6f,
- 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x65,
- 0x64, 0x69, 0x61, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x63, 0x6f, 0x6e,
- 0x74, 0x72, 0x6f, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x6d, 0x73,
- 0x63, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x6c, 0x69, 0x6e, 0x6b,
- 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x6d, 0x65, 0x74, 0x61, 0x6c,
- 0x69, 0x6e, 0x6b, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x6c, 0x69, 0x6e, 0x6b,
- 0x34, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x6d, 0x65, 0x74, 0x61,
- 0x34, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x6d, 0x65, 0x74, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09,
- 0x09, 0x09, 0x6d, 0x65, 0x74, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x69, 0x6b,
- 0x65, 0x79, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x6d, 0x6f, 0x64, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x09,
- 0x09, 0x09, 0x09, 0x6d, 0x6f, 0x64, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x6f,
- 0x73, 0x73, 0x2d, 0x6b, 0x65, 0x79, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x6f,
- 0x73, 0x73, 0x2d, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x6d, 0x6f, 0x73, 0x73, 0x6b, 0x65, 0x79, 0x2d, 0x64,
- 0x61, 0x74, 0x61, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x6f, 0x73, 0x73, 0x6b, 0x65,
- 0x79, 0x2d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x70,
- 0x32, 0x31, 0x09, 0x09, 0x09, 0x09, 0x6d, 0x32, 0x31, 0x20, 0x6d, 0x70,
- 0x32, 0x31, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x6d, 0x70, 0x34, 0x09, 0x09, 0x09, 0x09, 0x09, 0x6d,
- 0x70, 0x34, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x70, 0x65, 0x67, 0x34, 0x2d,
- 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x70,
- 0x65, 0x67, 0x34, 0x2d, 0x69, 0x6f, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x70,
- 0x65, 0x67, 0x34, 0x2d, 0x69, 0x6f, 0x64, 0x2d, 0x78, 0x6d, 0x74, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x6d, 0x73, 0x63, 0x2d, 0x69, 0x76, 0x72, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x73, 0x63, 0x2d, 0x6d, 0x69, 0x78, 0x65,
- 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x73, 0x77, 0x6f, 0x72, 0x64,
- 0x09, 0x09, 0x09, 0x09, 0x64, 0x6f, 0x63, 0x20, 0x64, 0x6f, 0x74, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x6d, 0x78, 0x66, 0x09, 0x09, 0x09, 0x09, 0x09, 0x6d, 0x78, 0x66, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x6e, 0x61, 0x73, 0x64, 0x61, 0x74, 0x61, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x6e, 0x65, 0x77, 0x73, 0x2d, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x67, 0x72,
- 0x6f, 0x75, 0x70, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6e, 0x65, 0x77, 0x73, 0x2d,
- 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x66, 0x6f, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x6e, 0x65, 0x77, 0x73, 0x2d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69,
- 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6e, 0x73, 0x73, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x6f, 0x63, 0x73, 0x70, 0x2d, 0x72, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6f, 0x63, 0x73, 0x70, 0x2d, 0x72, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6f, 0x63, 0x74, 0x65, 0x74,
- 0x2d, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x09, 0x62, 0x69, 0x6e, 0x20,
- 0x64, 0x6d, 0x73, 0x20, 0x6c, 0x72, 0x66, 0x20, 0x6d, 0x61, 0x72, 0x20,
- 0x73, 0x6f, 0x20, 0x64, 0x69, 0x73, 0x74, 0x20, 0x64, 0x69, 0x73, 0x74,
- 0x7a, 0x20, 0x70, 0x6b, 0x67, 0x20, 0x62, 0x70, 0x6b, 0x20, 0x64, 0x75,
- 0x6d, 0x70, 0x20, 0x65, 0x6c, 0x63, 0x20, 0x64, 0x65, 0x70, 0x6c, 0x6f,
- 0x79, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x6f, 0x64, 0x61, 0x09, 0x09, 0x09, 0x09, 0x09, 0x6f, 0x64,
- 0x61, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x6f, 0x65, 0x62, 0x70, 0x73, 0x2d, 0x70, 0x61, 0x63, 0x6b,
- 0x61, 0x67, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x6f, 0x70,
- 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x6f, 0x67, 0x67, 0x09, 0x09, 0x09, 0x09, 0x09, 0x6f, 0x67,
- 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x6f, 0x6d, 0x64, 0x6f, 0x63, 0x2b, 0x78, 0x6d, 0x6c, 0x09,
- 0x09, 0x09, 0x09, 0x6f, 0x6d, 0x64, 0x6f, 0x63, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6f, 0x6e, 0x65,
- 0x6e, 0x6f, 0x74, 0x65, 0x09, 0x09, 0x09, 0x09, 0x6f, 0x6e, 0x65, 0x74,
- 0x6f, 0x63, 0x20, 0x6f, 0x6e, 0x65, 0x74, 0x6f, 0x63, 0x32, 0x20, 0x6f,
- 0x6e, 0x65, 0x74, 0x6d, 0x70, 0x20, 0x6f, 0x6e, 0x65, 0x70, 0x6b, 0x67,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x6f, 0x78, 0x70, 0x73, 0x09, 0x09, 0x09, 0x09, 0x6f, 0x78, 0x70,
- 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x69, 0x74, 0x79, 0x66, 0x65,
- 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x70, 0x61, 0x74, 0x63, 0x68, 0x2d, 0x6f, 0x70, 0x73, 0x2d,
- 0x65, 0x72, 0x72, 0x6f, 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09,
- 0x78, 0x65, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x64, 0x66, 0x09, 0x09, 0x09, 0x09, 0x09,
- 0x70, 0x64, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x67, 0x70, 0x2d, 0x65, 0x6e, 0x63, 0x72,
- 0x79, 0x70, 0x74, 0x65, 0x64, 0x09, 0x09, 0x09, 0x70, 0x67, 0x70, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x70, 0x67, 0x70, 0x2d, 0x6b, 0x65, 0x79, 0x73, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70,
- 0x67, 0x70, 0x2d, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
- 0x09, 0x09, 0x09, 0x61, 0x73, 0x63, 0x20, 0x73, 0x69, 0x67, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70,
- 0x69, 0x63, 0x73, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x09, 0x09, 0x09,
- 0x09, 0x70, 0x72, 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x69, 0x64, 0x66, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x69, 0x64, 0x66, 0x2d, 0x64,
- 0x69, 0x66, 0x66, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x6b, 0x63, 0x73,
- 0x31, 0x30, 0x09, 0x09, 0x09, 0x09, 0x70, 0x31, 0x30, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x6b,
- 0x63, 0x73, 0x37, 0x2d, 0x6d, 0x69, 0x6d, 0x65, 0x09, 0x09, 0x09, 0x09,
- 0x70, 0x37, 0x6d, 0x20, 0x70, 0x37, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x6b, 0x63, 0x73,
- 0x37, 0x2d, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x09,
- 0x09, 0x09, 0x70, 0x37, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x6b, 0x63, 0x73, 0x38, 0x09,
- 0x09, 0x09, 0x09, 0x70, 0x38, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x6b, 0x69, 0x78, 0x2d, 0x61,
- 0x74, 0x74, 0x72, 0x2d, 0x63, 0x65, 0x72, 0x74, 0x09, 0x09, 0x09, 0x61,
- 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x70, 0x6b, 0x69, 0x78, 0x2d, 0x63, 0x65, 0x72, 0x74, 0x09,
- 0x09, 0x09, 0x09, 0x63, 0x65, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x6b, 0x69, 0x78, 0x2d,
- 0x63, 0x72, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x63, 0x72, 0x6c, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70,
- 0x6b, 0x69, 0x78, 0x2d, 0x70, 0x6b, 0x69, 0x70, 0x61, 0x74, 0x68, 0x09,
- 0x09, 0x09, 0x70, 0x6b, 0x69, 0x70, 0x61, 0x74, 0x68, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x6b,
- 0x69, 0x78, 0x63, 0x6d, 0x70, 0x09, 0x09, 0x09, 0x09, 0x70, 0x6b, 0x69,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x70, 0x6c, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09,
- 0x70, 0x6c, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x6f, 0x63, 0x2d, 0x73, 0x65,
- 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70,
- 0x6f, 0x73, 0x74, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x09, 0x09, 0x09,
- 0x09, 0x61, 0x69, 0x20, 0x65, 0x70, 0x73, 0x20, 0x70, 0x73, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x70, 0x72, 0x73, 0x2e, 0x61, 0x6c, 0x76, 0x65, 0x73, 0x74, 0x72,
- 0x61, 0x6e, 0x64, 0x2e, 0x74, 0x69, 0x74, 0x72, 0x61, 0x78, 0x2d, 0x73,
- 0x68, 0x65, 0x65, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x72, 0x73, 0x2e, 0x63, 0x77, 0x77,
- 0x09, 0x09, 0x09, 0x09, 0x63, 0x77, 0x77, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x72,
- 0x73, 0x2e, 0x6e, 0x70, 0x72, 0x65, 0x6e, 0x64, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70,
- 0x72, 0x73, 0x2e, 0x70, 0x6c, 0x75, 0x63, 0x6b, 0x65, 0x72, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x70, 0x72, 0x73, 0x2e, 0x72, 0x64, 0x66, 0x2d, 0x78, 0x6d, 0x6c,
- 0x2d, 0x63, 0x72, 0x79, 0x70, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x72, 0x73,
- 0x2e, 0x78, 0x73, 0x66, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x73, 0x6b,
- 0x63, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x70, 0x73, 0x6b,
- 0x63, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x71, 0x73, 0x69, 0x67, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x72, 0x64, 0x66, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x72,
- 0x64, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x72, 0x65, 0x67, 0x69, 0x6e, 0x66, 0x6f, 0x2b, 0x78,
- 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x72, 0x69, 0x66, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x65,
- 0x6c, 0x61, 0x78, 0x2d, 0x6e, 0x67, 0x2d, 0x63, 0x6f, 0x6d, 0x70, 0x61,
- 0x63, 0x74, 0x2d, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x09, 0x09, 0x72,
- 0x6e, 0x63, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2d,
- 0x70, 0x72, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x65, 0x73,
- 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2d, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x2b,
- 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x72, 0x6c, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x65, 0x73,
- 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2d, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x2d,
- 0x64, 0x69, 0x66, 0x66, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x72, 0x6c,
- 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x69, 0x73, 0x63, 0x6f, 0x73, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x72, 0x6c, 0x6d, 0x69, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x6c,
- 0x73, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2b, 0x78,
- 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x72, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x70, 0x6b, 0x69,
- 0x2d, 0x67, 0x68, 0x6f, 0x73, 0x74, 0x62, 0x75, 0x73, 0x74, 0x65, 0x72,
- 0x73, 0x09, 0x09, 0x09, 0x67, 0x62, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x70, 0x6b, 0x69,
- 0x2d, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x09, 0x09, 0x09,
- 0x6d, 0x66, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x70, 0x6b, 0x69, 0x2d, 0x72, 0x6f, 0x61,
- 0x09, 0x09, 0x09, 0x09, 0x72, 0x6f, 0x61, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x70,
- 0x6b, 0x69, 0x2d, 0x75, 0x70, 0x64, 0x6f, 0x77, 0x6e, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x73,
- 0x64, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x72, 0x73, 0x64,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x72, 0x73, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09,
- 0x72, 0x73, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x74, 0x66, 0x09, 0x09, 0x09, 0x09, 0x09,
- 0x72, 0x74, 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x72, 0x74, 0x78, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x73, 0x61, 0x6d, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x72, 0x74, 0x69, 0x6f,
- 0x6e, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x61, 0x6d, 0x6c,
- 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x73, 0x62, 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09,
- 0x09, 0x73, 0x62, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x63, 0x76, 0x70, 0x2d, 0x63,
- 0x76, 0x2d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x09, 0x09, 0x09,
- 0x73, 0x63, 0x71, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x63, 0x76, 0x70, 0x2d, 0x63, 0x76, 0x2d,
- 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x09, 0x09, 0x09, 0x73,
- 0x63, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x73, 0x63, 0x76, 0x70, 0x2d, 0x76, 0x70, 0x2d, 0x72,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x09, 0x09, 0x09, 0x73, 0x70, 0x71,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x73, 0x63, 0x76, 0x70, 0x2d, 0x76, 0x70, 0x2d, 0x72, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x09, 0x09, 0x09, 0x73, 0x70, 0x70, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x73, 0x64, 0x70, 0x09, 0x09, 0x09, 0x09, 0x09, 0x73, 0x64, 0x70, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x73, 0x65, 0x74, 0x2d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
- 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x73, 0x65, 0x74, 0x2d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
- 0x74, 0x2d, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x09, 0x09, 0x73, 0x65, 0x74, 0x70, 0x61, 0x79, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73,
- 0x65, 0x74, 0x2d, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x65, 0x74, 0x2d, 0x72, 0x65, 0x67, 0x69,
- 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x69, 0x6e, 0x69,
- 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x09, 0x09, 0x73, 0x65, 0x74,
- 0x72, 0x65, 0x67, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x67, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x73, 0x67, 0x6d, 0x6c, 0x2d, 0x6f, 0x70, 0x65, 0x6e, 0x2d, 0x63,
- 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x68, 0x66, 0x2b, 0x78,
- 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x73, 0x68, 0x66, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x73, 0x69, 0x65, 0x76, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x69, 0x6d, 0x70,
- 0x6c, 0x65, 0x2d, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x2d, 0x6d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2d, 0x73, 0x75, 0x6d, 0x6d, 0x61,
- 0x72, 0x79, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x73,
- 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
- 0x65, 0x72, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x6c, 0x61, 0x74, 0x65, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x73, 0x6d, 0x69, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x6d, 0x69, 0x6c, 0x2b, 0x78,
- 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x73, 0x6d, 0x69, 0x20, 0x73, 0x6d,
- 0x69, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x6f, 0x61, 0x70, 0x2b, 0x66, 0x61,
- 0x73, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x65, 0x74, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x73, 0x6f, 0x61, 0x70, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x70, 0x61,
- 0x72, 0x71, 0x6c, 0x2d, 0x71, 0x75, 0x65, 0x72, 0x79, 0x09, 0x09, 0x09,
- 0x72, 0x71, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x73, 0x70, 0x61, 0x72, 0x71, 0x6c, 0x2d, 0x72, 0x65,
- 0x73, 0x75, 0x6c, 0x74, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09,
- 0x73, 0x72, 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x70, 0x69, 0x72, 0x69, 0x74,
- 0x73, 0x2d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x73, 0x72, 0x67, 0x73, 0x09, 0x09, 0x09, 0x09, 0x67, 0x72, 0x61, 0x6d,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x73, 0x72, 0x67, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09,
- 0x09, 0x67, 0x72, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x72, 0x75, 0x2b, 0x78,
- 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x73, 0x72, 0x75, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x73,
- 0x64, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x73, 0x73,
- 0x64, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x73, 0x73, 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09,
- 0x09, 0x09, 0x09, 0x73, 0x73, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x61,
- 0x6d, 0x70, 0x2d, 0x61, 0x70, 0x65, 0x78, 0x2d, 0x75, 0x70, 0x64, 0x61,
- 0x74, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x61, 0x6d, 0x70, 0x2d, 0x61, 0x70,
- 0x65, 0x78, 0x2d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2d, 0x63, 0x6f,
- 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x61, 0x6d, 0x70,
- 0x2d, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x2d, 0x75,
- 0x70, 0x64, 0x61, 0x74, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x61, 0x6d, 0x70,
- 0x2d, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x2d, 0x75,
- 0x70, 0x64, 0x61, 0x74, 0x65, 0x2d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72,
- 0x6d, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x61, 0x6d, 0x70, 0x2d, 0x65, 0x72, 0x72,
- 0x6f, 0x72, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x61, 0x6d, 0x70, 0x2d, 0x73, 0x65,
- 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x2d, 0x61, 0x64, 0x6a, 0x75, 0x73,
- 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x61, 0x6d, 0x70, 0x2d, 0x73, 0x65, 0x71,
- 0x75, 0x65, 0x6e, 0x63, 0x65, 0x2d, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74,
- 0x2d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74,
- 0x61, 0x6d, 0x70, 0x2d, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2d, 0x71,
- 0x75, 0x65, 0x72, 0x79, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x61, 0x6d, 0x70, 0x2d,
- 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2d, 0x72, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x61, 0x6d, 0x70, 0x2d, 0x75,
- 0x70, 0x64, 0x61, 0x74, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x61, 0x6d, 0x70,
- 0x2d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2d, 0x63, 0x6f, 0x6e, 0x66,
- 0x69, 0x72, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x65, 0x69, 0x2b, 0x78, 0x6d, 0x6c, 0x09,
- 0x09, 0x09, 0x09, 0x74, 0x65, 0x69, 0x20, 0x74, 0x65, 0x69, 0x63, 0x6f,
- 0x72, 0x70, 0x75, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x68, 0x72, 0x61, 0x75, 0x64, 0x2b,
- 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x74, 0x66, 0x69, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2d, 0x71,
- 0x75, 0x65, 0x72, 0x79, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73,
- 0x74, 0x61, 0x6d, 0x70, 0x2d, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74,
- 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x65, 0x64, 0x2d, 0x64,
- 0x61, 0x74, 0x61, 0x09, 0x09, 0x09, 0x74, 0x73, 0x64, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x74, 0x76, 0x65, 0x2d, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x75, 0x6c, 0x70, 0x66, 0x65, 0x63, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x63, 0x61, 0x72, 0x64, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x65, 0x6d, 0x6d, 0x69, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x69, 0x76, 0x69, 0x64,
- 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x66,
- 0x69, 0x6c, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x33, 0x67,
- 0x70, 0x70, 0x2e, 0x62, 0x73, 0x66, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x33, 0x67, 0x70, 0x70, 0x2e, 0x70, 0x69, 0x63, 0x2d,
- 0x62, 0x77, 0x2d, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x09, 0x09, 0x70, 0x6c,
- 0x62, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x33, 0x67, 0x70, 0x70, 0x2e, 0x70,
- 0x69, 0x63, 0x2d, 0x62, 0x77, 0x2d, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x09,
- 0x09, 0x70, 0x73, 0x62, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x33, 0x67, 0x70,
- 0x70, 0x2e, 0x70, 0x69, 0x63, 0x2d, 0x62, 0x77, 0x2d, 0x76, 0x61, 0x72,
- 0x09, 0x09, 0x09, 0x70, 0x76, 0x62, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x33, 0x67, 0x70, 0x70, 0x2e, 0x73, 0x6d, 0x73, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x33, 0x67, 0x70, 0x70, 0x32, 0x2e, 0x62, 0x63,
- 0x6d, 0x63, 0x73, 0x69, 0x6e, 0x66, 0x6f, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x33, 0x67, 0x70, 0x70, 0x32, 0x2e,
- 0x73, 0x6d, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x33, 0x67, 0x70, 0x70,
- 0x32, 0x2e, 0x74, 0x63, 0x61, 0x70, 0x09, 0x09, 0x09, 0x74, 0x63, 0x61,
- 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x33, 0x6d, 0x2e, 0x70, 0x6f, 0x73,
- 0x74, 0x2d, 0x69, 0x74, 0x2d, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x09, 0x09,
- 0x70, 0x77, 0x6e, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x63, 0x63, 0x70,
- 0x61, 0x63, 0x2e, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x79, 0x2e, 0x61, 0x73,
- 0x6f, 0x09, 0x09, 0x61, 0x73, 0x6f, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61,
- 0x63, 0x63, 0x70, 0x61, 0x63, 0x2e, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x79,
- 0x2e, 0x69, 0x6d, 0x70, 0x09, 0x09, 0x69, 0x6d, 0x70, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x61, 0x63, 0x75, 0x63, 0x6f, 0x62, 0x6f, 0x6c, 0x09, 0x09,
- 0x09, 0x61, 0x63, 0x75, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x63, 0x75,
- 0x63, 0x6f, 0x72, 0x70, 0x09, 0x09, 0x09, 0x09, 0x61, 0x74, 0x63, 0x20,
- 0x61, 0x63, 0x75, 0x74, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x64,
- 0x6f, 0x62, 0x65, 0x2e, 0x61, 0x69, 0x72, 0x2d, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x69, 0x6e, 0x73, 0x74,
- 0x61, 0x6c, 0x6c, 0x65, 0x72, 0x2d, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67,
- 0x65, 0x2b, 0x7a, 0x69, 0x70, 0x09, 0x61, 0x69, 0x72, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x61, 0x64, 0x6f, 0x62, 0x65, 0x2e, 0x66, 0x6f, 0x72, 0x6d,
- 0x73, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6c, 0x2e, 0x66, 0x63, 0x64,
- 0x74, 0x09, 0x09, 0x66, 0x63, 0x64, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x61, 0x64, 0x6f, 0x62, 0x65, 0x2e, 0x66, 0x78, 0x70, 0x09, 0x09, 0x09,
- 0x66, 0x78, 0x70, 0x20, 0x66, 0x78, 0x70, 0x6c, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x61, 0x64, 0x6f, 0x62, 0x65, 0x2e, 0x70, 0x61, 0x72,
- 0x74, 0x69, 0x61, 0x6c, 0x2d, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x64, 0x6f, 0x62, 0x65, 0x2e, 0x78, 0x64,
- 0x70, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x78, 0x64, 0x70, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x64, 0x6f, 0x62, 0x65, 0x2e, 0x78, 0x66,
- 0x64, 0x66, 0x09, 0x09, 0x09, 0x78, 0x66, 0x64, 0x66, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x65, 0x74, 0x68, 0x65, 0x72, 0x2e, 0x69,
- 0x6d, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x68, 0x2d,
- 0x62, 0x61, 0x72, 0x63, 0x6f, 0x64, 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x61, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x73, 0x70, 0x61, 0x63, 0x65, 0x09,
- 0x09, 0x09, 0x61, 0x68, 0x65, 0x61, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x61, 0x69, 0x72, 0x7a, 0x69, 0x70, 0x2e, 0x66, 0x69, 0x6c, 0x65, 0x73,
- 0x65, 0x63, 0x75, 0x72, 0x65, 0x2e, 0x61, 0x7a, 0x66, 0x09, 0x09, 0x61,
- 0x7a, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x69, 0x72, 0x7a, 0x69,
- 0x70, 0x2e, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65,
- 0x2e, 0x61, 0x7a, 0x73, 0x09, 0x09, 0x61, 0x7a, 0x73, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x61, 0x6d, 0x61, 0x7a, 0x6f, 0x6e, 0x2e, 0x65, 0x62, 0x6f,
- 0x6f, 0x6b, 0x09, 0x09, 0x09, 0x61, 0x7a, 0x77, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x61, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x61, 0x6e, 0x64, 0x79, 0x6e,
- 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x09, 0x09, 0x61,
- 0x63, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x6d, 0x69, 0x67, 0x61,
- 0x2e, 0x61, 0x6d, 0x69, 0x09, 0x09, 0x09, 0x61, 0x6d, 0x69, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x6d, 0x75, 0x6e, 0x64, 0x73, 0x65,
- 0x6e, 0x2e, 0x6d, 0x61, 0x7a, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x70,
- 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x2d, 0x61, 0x72, 0x63, 0x68, 0x69,
- 0x76, 0x65, 0x09, 0x09, 0x61, 0x70, 0x6b, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x61, 0x6e, 0x73, 0x65, 0x72, 0x2d, 0x77, 0x65, 0x62, 0x2d, 0x63, 0x65,
- 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x2d, 0x69, 0x73,
- 0x73, 0x75, 0x65, 0x2d, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x09, 0x63, 0x69, 0x69, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61,
- 0x6e, 0x73, 0x65, 0x72, 0x2d, 0x77, 0x65, 0x62, 0x2d, 0x66, 0x75, 0x6e,
- 0x64, 0x73, 0x2d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x2d,
- 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x09, 0x66,
- 0x74, 0x69, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x6e, 0x74, 0x69, 0x78,
- 0x2e, 0x67, 0x61, 0x6d, 0x65, 0x2d, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e,
- 0x65, 0x6e, 0x74, 0x09, 0x09, 0x61, 0x74, 0x78, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x61, 0x70, 0x70, 0x6c, 0x65, 0x2e, 0x69, 0x6e, 0x73, 0x74, 0x61,
- 0x6c, 0x6c, 0x65, 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x6d, 0x70,
- 0x6b, 0x67, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x70, 0x70, 0x6c, 0x65,
- 0x2e, 0x6d, 0x70, 0x65, 0x67, 0x75, 0x72, 0x6c, 0x09, 0x09, 0x09, 0x6d,
- 0x33, 0x75, 0x38, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x72,
- 0x61, 0x73, 0x74, 0x72, 0x61, 0x2e, 0x73, 0x77, 0x69, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x61, 0x72, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x65, 0x74, 0x77,
- 0x6f, 0x72, 0x6b, 0x73, 0x2e, 0x73, 0x77, 0x69, 0x09, 0x09, 0x73, 0x77,
- 0x69, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x73, 0x74, 0x72, 0x61, 0x65,
- 0x61, 0x2d, 0x73, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x2e, 0x69,
- 0x6f, 0x74, 0x61, 0x09, 0x09, 0x69, 0x6f, 0x74, 0x61, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68,
- 0x09, 0x09, 0x09, 0x61, 0x65, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x76, 0x69, 0x73, 0x74,
- 0x61, 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x62,
- 0x6c, 0x75, 0x65, 0x69, 0x63, 0x65, 0x2e, 0x6d, 0x75, 0x6c, 0x74, 0x69,
- 0x70, 0x61, 0x73, 0x73, 0x09, 0x09, 0x6d, 0x70, 0x6d, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x62, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74,
- 0x68, 0x2e, 0x65, 0x70, 0x2e, 0x6f, 0x6f, 0x62, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x62, 0x6d, 0x69, 0x09, 0x09, 0x09, 0x09, 0x62, 0x6d, 0x69, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x62, 0x75, 0x73, 0x69, 0x6e, 0x65, 0x73, 0x73,
- 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x09, 0x09, 0x09, 0x72, 0x65,
- 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x61, 0x62, 0x2d,
- 0x6a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x63, 0x61, 0x6e, 0x6f, 0x6e, 0x2d, 0x63, 0x70, 0x64, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x61, 0x6e, 0x6f, 0x6e,
- 0x2d, 0x6c, 0x69, 0x70, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x63, 0x65, 0x6e, 0x64, 0x69, 0x6f, 0x2e, 0x74, 0x68, 0x69, 0x6e, 0x6c,
- 0x69, 0x6e, 0x63, 0x2e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x63, 0x6f,
- 0x6e, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x68, 0x65, 0x6d, 0x64,
- 0x72, 0x61, 0x77, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x63, 0x64,
- 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x68, 0x69, 0x70,
- 0x6e, 0x75, 0x74, 0x73, 0x2e, 0x6b, 0x61, 0x72, 0x61, 0x6f, 0x6b, 0x65,
- 0x2d, 0x6d, 0x6d, 0x64, 0x09, 0x09, 0x6d, 0x6d, 0x64, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x63, 0x69, 0x6e, 0x64, 0x65, 0x72, 0x65, 0x6c, 0x6c, 0x61,
- 0x09, 0x09, 0x09, 0x63, 0x64, 0x79, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x63, 0x69, 0x72, 0x70, 0x61, 0x63, 0x6b, 0x2e, 0x69, 0x73, 0x64,
- 0x6e, 0x2d, 0x65, 0x78, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x6c,
- 0x61, 0x79, 0x6d, 0x6f, 0x72, 0x65, 0x09, 0x09, 0x09, 0x63, 0x6c, 0x61,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x6c, 0x6f, 0x61, 0x6e, 0x74, 0x6f,
- 0x2e, 0x72, 0x70, 0x39, 0x09, 0x09, 0x09, 0x72, 0x70, 0x39, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x63, 0x6c, 0x6f, 0x6e, 0x6b, 0x2e, 0x63, 0x34, 0x67,
- 0x72, 0x6f, 0x75, 0x70, 0x09, 0x09, 0x09, 0x63, 0x34, 0x67, 0x20, 0x63,
- 0x34, 0x64, 0x20, 0x63, 0x34, 0x66, 0x20, 0x63, 0x34, 0x70, 0x20, 0x63,
- 0x34, 0x75, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x6c, 0x75, 0x65, 0x74,
- 0x72, 0x75, 0x73, 0x74, 0x2e, 0x63, 0x61, 0x72, 0x74, 0x6f, 0x6d, 0x6f,
- 0x62, 0x69, 0x6c, 0x65, 0x2d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x09,
- 0x09, 0x63, 0x31, 0x31, 0x61, 0x6d, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x63, 0x6c, 0x75, 0x65, 0x74, 0x72, 0x75, 0x73, 0x74, 0x2e, 0x63, 0x61,
- 0x72, 0x74, 0x6f, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x2d, 0x63, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x2d, 0x70, 0x6b, 0x67, 0x09, 0x63, 0x31, 0x31,
- 0x61, 0x6d, 0x7a, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x6f,
- 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2b, 0x6a, 0x73, 0x6f,
- 0x6e, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
- 0x65, 0x72, 0x63, 0x65, 0x2d, 0x62, 0x61, 0x74, 0x74, 0x65, 0x6c, 0x6c,
- 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
- 0x73, 0x70, 0x61, 0x63, 0x65, 0x09, 0x09, 0x09, 0x63, 0x73, 0x70, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x2e,
- 0x63, 0x6d, 0x73, 0x67, 0x09, 0x09, 0x09, 0x63, 0x64, 0x62, 0x63, 0x6d,
- 0x73, 0x67, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f,
- 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x72, 0x09, 0x09, 0x09, 0x63, 0x6d, 0x63,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x72, 0x69, 0x63, 0x6b, 0x2e, 0x63,
- 0x6c, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x09, 0x09, 0x09, 0x63, 0x6c, 0x6b,
- 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x72, 0x69, 0x63, 0x6b, 0x2e,
- 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x2e, 0x6b, 0x65, 0x79, 0x62,
- 0x6f, 0x61, 0x72, 0x64, 0x09, 0x09, 0x63, 0x6c, 0x6b, 0x6b, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x63, 0x72, 0x69, 0x63, 0x6b, 0x2e, 0x63, 0x6c, 0x69,
- 0x63, 0x6b, 0x65, 0x72, 0x2e, 0x70, 0x61, 0x6c, 0x65, 0x74, 0x74, 0x65,
- 0x09, 0x09, 0x63, 0x6c, 0x6b, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63,
- 0x72, 0x69, 0x63, 0x6b, 0x2e, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x65, 0x72,
- 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x09, 0x09, 0x63,
- 0x6c, 0x6b, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x72, 0x69, 0x63,
- 0x6b, 0x2e, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x2e, 0x77, 0x6f,
- 0x72, 0x64, 0x62, 0x61, 0x6e, 0x6b, 0x09, 0x09, 0x63, 0x6c, 0x6b, 0x77,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61,
- 0x6c, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x2e, 0x77, 0x62, 0x73, 0x2b, 0x78,
- 0x6d, 0x6c, 0x09, 0x09, 0x77, 0x62, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x63, 0x74, 0x63, 0x2d, 0x70, 0x6f, 0x73, 0x6d, 0x6c, 0x09, 0x09, 0x09,
- 0x70, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x74,
- 0x63, 0x74, 0x2e, 0x77, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x75, 0x70, 0x73, 0x2d, 0x70, 0x64, 0x66,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x75, 0x70, 0x73, 0x2d,
- 0x70, 0x6f, 0x73, 0x74, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x63, 0x75, 0x70, 0x73, 0x2d, 0x70, 0x70, 0x64, 0x09,
- 0x09, 0x09, 0x70, 0x70, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x63, 0x75, 0x70, 0x73, 0x2d, 0x72, 0x61, 0x73, 0x74, 0x65, 0x72, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x75, 0x70, 0x73, 0x2d, 0x72,
- 0x61, 0x77, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x75, 0x72,
- 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x75, 0x72, 0x6c, 0x2e, 0x63,
- 0x61, 0x72, 0x09, 0x09, 0x09, 0x63, 0x61, 0x72, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x63, 0x75, 0x72, 0x6c, 0x2e, 0x70, 0x63, 0x75, 0x72, 0x6c, 0x09,
- 0x09, 0x09, 0x70, 0x63, 0x75, 0x72, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x63, 0x79, 0x62, 0x61, 0x6e, 0x6b, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x64, 0x61, 0x72, 0x74, 0x09, 0x09, 0x09, 0x09, 0x64, 0x61, 0x72,
- 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2d, 0x76,
- 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x72, 0x64, 0x7a, 0x09, 0x09, 0x09,
- 0x72, 0x64, 0x7a, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x65, 0x63, 0x65,
- 0x2e, 0x64, 0x61, 0x74, 0x61, 0x09, 0x09, 0x09, 0x75, 0x76, 0x66, 0x20,
- 0x75, 0x76, 0x76, 0x66, 0x20, 0x75, 0x76, 0x64, 0x20, 0x75, 0x76, 0x76,
- 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x65, 0x63, 0x65, 0x2e, 0x74,
- 0x74, 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x75, 0x76,
- 0x74, 0x20, 0x75, 0x76, 0x76, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64,
- 0x65, 0x63, 0x65, 0x2e, 0x75, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66,
- 0x69, 0x65, 0x64, 0x09, 0x09, 0x75, 0x76, 0x78, 0x20, 0x75, 0x76, 0x76,
- 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x65, 0x63, 0x65, 0x2e, 0x7a,
- 0x69, 0x70, 0x09, 0x09, 0x09, 0x75, 0x76, 0x7a, 0x20, 0x75, 0x76, 0x76,
- 0x7a, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x65, 0x6e, 0x6f, 0x76, 0x6f,
- 0x2e, 0x66, 0x63, 0x73, 0x65, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x2d,
- 0x6c, 0x69, 0x6e, 0x6b, 0x09, 0x09, 0x66, 0x65, 0x5f, 0x6c, 0x61, 0x75,
- 0x6e, 0x63, 0x68, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x69,
- 0x72, 0x2d, 0x62, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2d, 0x64,
- 0x6c, 0x2d, 0x6e, 0x6f, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x64, 0x6e, 0x61, 0x09, 0x09, 0x09, 0x09, 0x64, 0x6e,
- 0x61, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x6f, 0x6c, 0x62, 0x79, 0x2e,
- 0x6d, 0x6c, 0x70, 0x09, 0x09, 0x09, 0x6d, 0x6c, 0x70, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x6f, 0x6c, 0x62, 0x79, 0x2e, 0x6d, 0x6f,
- 0x62, 0x69, 0x6c, 0x65, 0x2e, 0x31, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x64, 0x6f, 0x6c, 0x62, 0x79, 0x2e, 0x6d, 0x6f, 0x62, 0x69, 0x6c,
- 0x65, 0x2e, 0x32, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x70, 0x67, 0x72,
- 0x61, 0x70, 0x68, 0x09, 0x09, 0x09, 0x09, 0x64, 0x70, 0x67, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x64, 0x72, 0x65, 0x61, 0x6d, 0x66, 0x61, 0x63, 0x74,
- 0x6f, 0x72, 0x79, 0x09, 0x09, 0x09, 0x64, 0x66, 0x61, 0x63, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x64, 0x73, 0x2d, 0x6b, 0x65, 0x79, 0x70, 0x6f, 0x69,
- 0x6e, 0x74, 0x09, 0x09, 0x09, 0x6b, 0x70, 0x78, 0x78, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x61, 0x69, 0x74, 0x09, 0x09, 0x09,
- 0x09, 0x61, 0x69, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64,
- 0x76, 0x62, 0x2e, 0x64, 0x76, 0x62, 0x6a, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x65, 0x73, 0x67, 0x63, 0x6f, 0x6e,
- 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x69, 0x70, 0x64, 0x63, 0x64, 0x66, 0x74,
- 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x69, 0x70,
- 0x64, 0x63, 0x65, 0x73, 0x67, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x69, 0x70,
- 0x64, 0x63, 0x65, 0x73, 0x67, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x32,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x69,
- 0x70, 0x64, 0x63, 0x65, 0x73, 0x67, 0x70, 0x64, 0x64, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x69, 0x70, 0x64, 0x63,
- 0x72, 0x6f, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x69, 0x70, 0x74, 0x76, 0x2e, 0x61,
- 0x6c, 0x66, 0x65, 0x63, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x69, 0x70, 0x74, 0x76,
- 0x2e, 0x61, 0x6c, 0x66, 0x65, 0x63, 0x2d, 0x65, 0x6e, 0x68, 0x61, 0x6e,
- 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x2d, 0x61,
- 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x2d, 0x72, 0x6f, 0x6f,
- 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x64, 0x76, 0x62, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x2d, 0x63, 0x6f,
- 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x6e, 0x6f,
- 0x74, 0x69, 0x66, 0x2d, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x76,
- 0x62, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x2d, 0x69, 0x61, 0x2d, 0x6d,
- 0x73, 0x67, 0x6c, 0x69, 0x73, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x6e, 0x6f, 0x74,
- 0x69, 0x66, 0x2d, 0x69, 0x61, 0x2d, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
- 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x72, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x2d, 0x69,
- 0x61, 0x2d, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x76,
- 0x62, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x2d, 0x69, 0x6e, 0x69, 0x74,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64,
- 0x76, 0x62, 0x2e, 0x70, 0x66, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64,
- 0x76, 0x62, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x09, 0x09,
- 0x09, 0x73, 0x76, 0x63, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64,
- 0x78, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x79, 0x6e, 0x61, 0x67,
- 0x65, 0x6f, 0x09, 0x09, 0x09, 0x09, 0x67, 0x65, 0x6f, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x61, 0x73, 0x79, 0x6b, 0x61, 0x72, 0x61,
- 0x6f, 0x6b, 0x65, 0x2e, 0x63, 0x64, 0x67, 0x64, 0x6f, 0x77, 0x6e, 0x6c,
- 0x6f, 0x61, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x63,
- 0x64, 0x69, 0x73, 0x2d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x65, 0x63, 0x6f, 0x77, 0x69, 0x6e, 0x2e, 0x63, 0x68,
- 0x61, 0x72, 0x74, 0x09, 0x09, 0x09, 0x6d, 0x61, 0x67, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x63, 0x6f, 0x77, 0x69, 0x6e, 0x2e, 0x66,
- 0x69, 0x6c, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x63, 0x6f, 0x77, 0x69, 0x6e, 0x2e,
- 0x66, 0x69, 0x6c, 0x65, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x63, 0x6f, 0x77, 0x69, 0x6e, 0x2e,
- 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x65, 0x63, 0x6f, 0x77, 0x69, 0x6e, 0x2e, 0x73, 0x65, 0x72, 0x69,
- 0x65, 0x73, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x63, 0x6f, 0x77, 0x69, 0x6e, 0x2e, 0x73,
- 0x65, 0x72, 0x69, 0x65, 0x73, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x6d, 0x63, 0x6c, 0x69, 0x65,
- 0x6e, 0x74, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x72, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x65, 0x6e, 0x6c, 0x69, 0x76, 0x65, 0x6e, 0x09, 0x09, 0x09, 0x09,
- 0x6e, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x70,
- 0x72, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x70, 0x73, 0x6f, 0x6e,
- 0x2e, 0x65, 0x73, 0x66, 0x09, 0x09, 0x09, 0x65, 0x73, 0x66, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x65, 0x70, 0x73, 0x6f, 0x6e, 0x2e, 0x6d, 0x73, 0x66,
- 0x09, 0x09, 0x09, 0x6d, 0x73, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65,
- 0x70, 0x73, 0x6f, 0x6e, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x61, 0x6e,
- 0x69, 0x6d, 0x65, 0x09, 0x09, 0x71, 0x61, 0x6d, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x65, 0x70, 0x73, 0x6f, 0x6e, 0x2e, 0x73, 0x61, 0x6c, 0x74, 0x09,
- 0x09, 0x09, 0x73, 0x6c, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x70,
- 0x73, 0x6f, 0x6e, 0x2e, 0x73, 0x73, 0x66, 0x09, 0x09, 0x09, 0x73, 0x73,
- 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x72, 0x69, 0x63,
- 0x73, 0x73, 0x6f, 0x6e, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x63, 0x61,
- 0x6c, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x73, 0x7a, 0x69, 0x67,
- 0x6e, 0x6f, 0x33, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x65, 0x73,
- 0x33, 0x20, 0x65, 0x74, 0x33, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x65, 0x74, 0x73, 0x69, 0x2e, 0x61, 0x6f, 0x63, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x74, 0x73, 0x69, 0x2e,
- 0x63, 0x75, 0x67, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x65, 0x74, 0x73, 0x69, 0x2e, 0x69, 0x70, 0x74, 0x76, 0x63,
- 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x74, 0x73, 0x69, 0x2e, 0x69, 0x70,
- 0x74, 0x76, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x74,
- 0x73, 0x69, 0x2e, 0x69, 0x70, 0x74, 0x76, 0x70, 0x72, 0x6f, 0x66, 0x69,
- 0x6c, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x65, 0x74, 0x73, 0x69, 0x2e, 0x69, 0x70, 0x74, 0x76, 0x73, 0x61,
- 0x64, 0x2d, 0x62, 0x63, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x65, 0x74, 0x73, 0x69, 0x2e, 0x69, 0x70, 0x74, 0x76,
- 0x73, 0x61, 0x64, 0x2d, 0x63, 0x6f, 0x64, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x74, 0x73, 0x69, 0x2e, 0x69,
- 0x70, 0x74, 0x76, 0x73, 0x61, 0x64, 0x2d, 0x6e, 0x70, 0x76, 0x72, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x74,
- 0x73, 0x69, 0x2e, 0x69, 0x70, 0x74, 0x76, 0x73, 0x65, 0x72, 0x76, 0x69,
- 0x63, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x65, 0x74, 0x73, 0x69, 0x2e, 0x69, 0x70, 0x74, 0x76, 0x73, 0x79,
- 0x6e, 0x63, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x65, 0x74, 0x73, 0x69, 0x2e, 0x69, 0x70, 0x74, 0x76, 0x75, 0x65,
- 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x74, 0x73, 0x69, 0x2e, 0x6d,
- 0x63, 0x69, 0x64, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x65, 0x74, 0x73, 0x69, 0x2e, 0x6f, 0x76, 0x65, 0x72, 0x6c,
- 0x6f, 0x61, 0x64, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2d,
- 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x73,
- 0x65, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x65, 0x74, 0x73, 0x69, 0x2e, 0x73, 0x63, 0x69, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x74, 0x73, 0x69,
- 0x2e, 0x73, 0x69, 0x6d, 0x73, 0x65, 0x72, 0x76, 0x73, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x74, 0x73, 0x69,
- 0x2e, 0x74, 0x73, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x65, 0x74, 0x73, 0x69, 0x2e, 0x74, 0x73, 0x6c, 0x2e,
- 0x64, 0x65, 0x72, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x65, 0x75,
- 0x64, 0x6f, 0x72, 0x61, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x65, 0x7a, 0x70, 0x69, 0x78, 0x2d, 0x61, 0x6c, 0x62, 0x75,
- 0x6d, 0x09, 0x09, 0x09, 0x65, 0x7a, 0x32, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x65, 0x7a, 0x70, 0x69, 0x78, 0x2d, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67,
- 0x65, 0x09, 0x09, 0x09, 0x65, 0x7a, 0x33, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x66, 0x2d, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x2e, 0x6d,
- 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x64,
- 0x66, 0x09, 0x09, 0x09, 0x09, 0x66, 0x64, 0x66, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x66, 0x64, 0x73, 0x6e, 0x2e, 0x6d, 0x73, 0x65, 0x65, 0x64, 0x09,
- 0x09, 0x09, 0x6d, 0x73, 0x65, 0x65, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x66, 0x64, 0x73, 0x6e, 0x2e, 0x73, 0x65, 0x65, 0x64, 0x09, 0x09, 0x09,
- 0x73, 0x65, 0x65, 0x64, 0x20, 0x64, 0x61, 0x74, 0x61, 0x6c, 0x65, 0x73,
- 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x66, 0x73, 0x6e,
- 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x69, 0x6e, 0x74,
- 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x6c, 0x6f, 0x67, 0x72, 0x61,
- 0x70, 0x68, 0x69, 0x74, 0x09, 0x09, 0x09, 0x67, 0x70, 0x68, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x66, 0x6c, 0x75, 0x78, 0x74, 0x69, 0x6d, 0x65, 0x2e,
- 0x63, 0x6c, 0x69, 0x70, 0x09, 0x09, 0x09, 0x66, 0x74, 0x63, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x6f,
- 0x6e, 0x74, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x2d, 0x73, 0x66, 0x64, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x6d, 0x61, 0x6b,
- 0x65, 0x72, 0x09, 0x09, 0x09, 0x66, 0x6d, 0x20, 0x66, 0x72, 0x61, 0x6d,
- 0x65, 0x20, 0x6d, 0x61, 0x6b, 0x65, 0x72, 0x20, 0x62, 0x6f, 0x6f, 0x6b,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x72, 0x6f, 0x67, 0x61, 0x6e, 0x73,
- 0x2e, 0x66, 0x6e, 0x63, 0x09, 0x09, 0x09, 0x66, 0x6e, 0x63, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x66, 0x72, 0x6f, 0x67, 0x61, 0x6e, 0x73, 0x2e, 0x6c,
- 0x74, 0x66, 0x09, 0x09, 0x09, 0x6c, 0x74, 0x66, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x66, 0x73, 0x63, 0x2e, 0x77, 0x65, 0x62, 0x6c, 0x61, 0x75, 0x6e,
- 0x63, 0x68, 0x09, 0x09, 0x09, 0x66, 0x73, 0x63, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x66, 0x75, 0x6a, 0x69, 0x74, 0x73, 0x75, 0x2e, 0x6f, 0x61, 0x73,
- 0x79, 0x73, 0x09, 0x09, 0x09, 0x6f, 0x61, 0x73, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x66, 0x75, 0x6a, 0x69, 0x74, 0x73, 0x75, 0x2e, 0x6f, 0x61, 0x73,
- 0x79, 0x73, 0x32, 0x09, 0x09, 0x09, 0x6f, 0x61, 0x32, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x66, 0x75, 0x6a, 0x69, 0x74, 0x73, 0x75, 0x2e, 0x6f, 0x61,
- 0x73, 0x79, 0x73, 0x33, 0x09, 0x09, 0x09, 0x6f, 0x61, 0x33, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x66, 0x75, 0x6a, 0x69, 0x74, 0x73, 0x75, 0x2e, 0x6f,
- 0x61, 0x73, 0x79, 0x73, 0x67, 0x70, 0x09, 0x09, 0x09, 0x66, 0x67, 0x35,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x75, 0x6a, 0x69, 0x74, 0x73, 0x75,
- 0x2e, 0x6f, 0x61, 0x73, 0x79, 0x73, 0x70, 0x72, 0x73, 0x09, 0x09, 0x62,
- 0x68, 0x32, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x75, 0x6a,
- 0x69, 0x78, 0x65, 0x72, 0x6f, 0x78, 0x2e, 0x61, 0x72, 0x74, 0x2d, 0x65,
- 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x75, 0x6a, 0x69,
- 0x78, 0x65, 0x72, 0x6f, 0x78, 0x2e, 0x61, 0x72, 0x74, 0x34, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x75, 0x6a, 0x69, 0x78, 0x65, 0x72,
- 0x6f, 0x78, 0x2e, 0x68, 0x62, 0x70, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x66, 0x75, 0x6a, 0x69, 0x78, 0x65, 0x72, 0x6f, 0x78, 0x2e, 0x64, 0x64,
- 0x64, 0x09, 0x09, 0x09, 0x64, 0x64, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x66, 0x75, 0x6a, 0x69, 0x78, 0x65, 0x72, 0x6f, 0x78, 0x2e, 0x64, 0x6f,
- 0x63, 0x75, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x09, 0x09, 0x78, 0x64, 0x77,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x75, 0x6a, 0x69, 0x78, 0x65, 0x72,
- 0x6f, 0x78, 0x2e, 0x64, 0x6f, 0x63, 0x75, 0x77, 0x6f, 0x72, 0x6b, 0x73,
- 0x2e, 0x62, 0x69, 0x6e, 0x64, 0x65, 0x72, 0x09, 0x78, 0x62, 0x64, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x75, 0x74, 0x2d, 0x6d, 0x69,
- 0x73, 0x6e, 0x65, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x75, 0x7a,
- 0x7a, 0x79, 0x73, 0x68, 0x65, 0x65, 0x74, 0x09, 0x09, 0x09, 0x66, 0x7a,
- 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x65, 0x6e, 0x6f, 0x6d, 0x61,
- 0x74, 0x69, 0x78, 0x2e, 0x74, 0x75, 0x78, 0x65, 0x64, 0x6f, 0x09, 0x09,
- 0x74, 0x78, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x65,
- 0x6f, 0x63, 0x75, 0x62, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x67, 0x65, 0x6f, 0x67, 0x65, 0x62, 0x72, 0x61, 0x2e, 0x66,
- 0x69, 0x6c, 0x65, 0x09, 0x09, 0x09, 0x67, 0x67, 0x62, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x67, 0x65, 0x6f, 0x67, 0x65, 0x62, 0x72, 0x61, 0x2e, 0x74,
- 0x6f, 0x6f, 0x6c, 0x09, 0x09, 0x09, 0x67, 0x67, 0x74, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x67, 0x65, 0x6f, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x2d, 0x65,
- 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x09, 0x09, 0x67, 0x65, 0x78,
- 0x20, 0x67, 0x72, 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x65, 0x6f,
- 0x6e, 0x65, 0x78, 0x74, 0x09, 0x09, 0x09, 0x09, 0x67, 0x78, 0x74, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x65, 0x6f, 0x70, 0x6c, 0x61, 0x6e, 0x09,
- 0x09, 0x09, 0x09, 0x67, 0x32, 0x77, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67,
- 0x65, 0x6f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x09, 0x09, 0x09, 0x67, 0x33,
- 0x77, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x6c, 0x6f, 0x62,
- 0x61, 0x6c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x63,
- 0x61, 0x72, 0x64, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d,
- 0x6d, 0x67, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x6c,
- 0x6f, 0x62, 0x61, 0x6c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
- 0x2e, 0x63, 0x61, 0x72, 0x64, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
- 0x74, 0x2d, 0x6d, 0x67, 0x74, 0x2d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x6d, 0x78, 0x09, 0x09,
- 0x09, 0x09, 0x67, 0x6d, 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x6f,
- 0x6f, 0x67, 0x6c, 0x65, 0x2d, 0x65, 0x61, 0x72, 0x74, 0x68, 0x2e, 0x6b,
- 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x6b, 0x6d, 0x6c, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2d, 0x65,
- 0x61, 0x72, 0x74, 0x68, 0x2e, 0x6b, 0x6d, 0x7a, 0x09, 0x09, 0x6b, 0x6d,
- 0x7a, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x71,
- 0x09, 0x09, 0x09, 0x09, 0x67, 0x71, 0x66, 0x20, 0x67, 0x71, 0x73, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x72, 0x69, 0x64, 0x6d, 0x70,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x72, 0x6f, 0x6f, 0x76, 0x65, 0x2d,
- 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x09, 0x09, 0x09, 0x67, 0x61,
- 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x72, 0x6f, 0x6f, 0x76, 0x65,
- 0x2d, 0x68, 0x65, 0x6c, 0x70, 0x09, 0x09, 0x09, 0x67, 0x68, 0x66, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x72, 0x6f, 0x6f, 0x76, 0x65, 0x2d, 0x69,
- 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2d, 0x6d, 0x65, 0x73, 0x73,
- 0x61, 0x67, 0x65, 0x09, 0x09, 0x67, 0x69, 0x6d, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x67, 0x72, 0x6f, 0x6f, 0x76, 0x65, 0x2d, 0x69, 0x6e, 0x6a, 0x65,
- 0x63, 0x74, 0x6f, 0x72, 0x09, 0x09, 0x09, 0x67, 0x72, 0x76, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x67, 0x72, 0x6f, 0x6f, 0x76, 0x65, 0x2d, 0x74, 0x6f,
- 0x6f, 0x6c, 0x2d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x09, 0x09,
- 0x67, 0x74, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x72, 0x6f, 0x6f,
- 0x76, 0x65, 0x2d, 0x74, 0x6f, 0x6f, 0x6c, 0x2d, 0x74, 0x65, 0x6d, 0x70,
- 0x6c, 0x61, 0x74, 0x65, 0x09, 0x09, 0x74, 0x70, 0x6c, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x67, 0x72, 0x6f, 0x6f, 0x76, 0x65, 0x2d, 0x76, 0x63, 0x61,
- 0x72, 0x64, 0x09, 0x09, 0x09, 0x76, 0x63, 0x67, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x68, 0x61, 0x6c, 0x2b, 0x6a, 0x73, 0x6f, 0x6e, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x68, 0x61, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09,
- 0x09, 0x09, 0x09, 0x68, 0x61, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x68,
- 0x61, 0x6e, 0x64, 0x68, 0x65, 0x6c, 0x64, 0x2d, 0x65, 0x6e, 0x74, 0x65,
- 0x72, 0x74, 0x61, 0x69, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2b, 0x78, 0x6d,
- 0x6c, 0x09, 0x7a, 0x6d, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x68, 0x62,
- 0x63, 0x69, 0x09, 0x09, 0x09, 0x09, 0x68, 0x62, 0x63, 0x69, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x68, 0x63, 0x6c, 0x2d, 0x62, 0x69, 0x72,
- 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x68,
- 0x68, 0x65, 0x2e, 0x6c, 0x65, 0x73, 0x73, 0x6f, 0x6e, 0x2d, 0x70, 0x6c,
- 0x61, 0x79, 0x65, 0x72, 0x09, 0x09, 0x6c, 0x65, 0x73, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x68, 0x70, 0x2d, 0x68, 0x70, 0x67, 0x6c, 0x09, 0x09, 0x09,
- 0x09, 0x68, 0x70, 0x67, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x68, 0x70,
- 0x2d, 0x68, 0x70, 0x69, 0x64, 0x09, 0x09, 0x09, 0x09, 0x68, 0x70, 0x69,
- 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x68, 0x70, 0x2d, 0x68, 0x70, 0x73,
- 0x09, 0x09, 0x09, 0x09, 0x68, 0x70, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x68, 0x70, 0x2d, 0x6a, 0x6c, 0x79, 0x74, 0x09, 0x09, 0x09, 0x09, 0x6a,
- 0x6c, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x68, 0x70, 0x2d, 0x70, 0x63,
- 0x6c, 0x09, 0x09, 0x09, 0x09, 0x70, 0x63, 0x6c, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x68, 0x70, 0x2d, 0x70, 0x63, 0x6c, 0x78, 0x6c, 0x09, 0x09, 0x09,
- 0x70, 0x63, 0x6c, 0x78, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x68, 0x74, 0x74, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x68, 0x79, 0x64, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x69, 0x78,
- 0x2e, 0x73, 0x6f, 0x66, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x09, 0x09, 0x73,
- 0x66, 0x64, 0x2d, 0x68, 0x64, 0x73, 0x74, 0x78, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x68, 0x7a, 0x6e, 0x2d, 0x33, 0x64, 0x2d, 0x63, 0x72,
- 0x6f, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x69, 0x62, 0x6d, 0x2e, 0x61, 0x66, 0x70, 0x6c, 0x69, 0x6e,
- 0x65, 0x64, 0x61, 0x74, 0x61, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x69, 0x62, 0x6d, 0x2e, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x72, 0x6f, 0x6e,
- 0x69, 0x63, 0x2d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x69, 0x62, 0x6d, 0x2e, 0x6d, 0x69, 0x6e, 0x69, 0x70, 0x61, 0x79,
- 0x09, 0x09, 0x09, 0x6d, 0x70, 0x79, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69,
- 0x62, 0x6d, 0x2e, 0x6d, 0x6f, 0x64, 0x63, 0x61, 0x70, 0x09, 0x09, 0x09,
- 0x61, 0x66, 0x70, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x66, 0x70, 0x20,
- 0x6c, 0x69, 0x73, 0x74, 0x33, 0x38, 0x32, 0x30, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x69, 0x62, 0x6d, 0x2e, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x2d,
- 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x09, 0x09,
- 0x69, 0x72, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x62, 0x6d, 0x2e,
- 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x61,
- 0x69, 0x6e, 0x65, 0x72, 0x09, 0x09, 0x73, 0x63, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x69, 0x63, 0x63, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x09,
- 0x09, 0x09, 0x69, 0x63, 0x63, 0x20, 0x69, 0x63, 0x6d, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x69, 0x67, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x09, 0x09,
- 0x09, 0x69, 0x67, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x6d, 0x6d,
- 0x65, 0x72, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2d, 0x69, 0x76, 0x70,
- 0x09, 0x09, 0x09, 0x69, 0x76, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69,
- 0x6d, 0x6d, 0x65, 0x72, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2d, 0x69,
- 0x76, 0x75, 0x09, 0x09, 0x09, 0x69, 0x76, 0x75, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x63,
- 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x72, 0x6d, 0x73, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x6e, 0x66,
- 0x6f, 0x72, 0x6d, 0x69, 0x78, 0x2d, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
- 0x61, 0x72, 0x79, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x6e,
- 0x66, 0x6f, 0x74, 0x65, 0x63, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65,
- 0x63, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x6e, 0x66,
- 0x6f, 0x74, 0x65, 0x63, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
- 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x69, 0x6e, 0x6e, 0x6f, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x77, 0x61, 0x6d,
- 0x70, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x6e, 0x73, 0x6f, 0x72,
- 0x73, 0x2e, 0x69, 0x67, 0x6d, 0x09, 0x09, 0x09, 0x69, 0x67, 0x6d, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x6f, 0x6e,
- 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x6e, 0x65, 0x74, 0x09, 0x09, 0x78, 0x70,
- 0x77, 0x20, 0x78, 0x70, 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x6e,
- 0x74, 0x65, 0x72, 0x67, 0x65, 0x6f, 0x09, 0x09, 0x09, 0x69, 0x32, 0x67,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72,
- 0x74, 0x72, 0x75, 0x73, 0x74, 0x2e, 0x64, 0x69, 0x67, 0x69, 0x62, 0x6f,
- 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x6e, 0x74, 0x65,
- 0x72, 0x74, 0x72, 0x75, 0x73, 0x74, 0x2e, 0x6e, 0x6e, 0x63, 0x70, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x6e, 0x74, 0x75, 0x2e, 0x71, 0x62, 0x6f,
- 0x09, 0x09, 0x09, 0x71, 0x62, 0x6f, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69,
- 0x6e, 0x74, 0x75, 0x2e, 0x71, 0x66, 0x78, 0x09, 0x09, 0x09, 0x71, 0x66,
- 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x70, 0x74, 0x63,
- 0x2e, 0x67, 0x32, 0x2e, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x69,
- 0x74, 0x65, 0x6d, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x69, 0x70, 0x74, 0x63, 0x2e, 0x67, 0x32, 0x2e, 0x6b, 0x6e,
- 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x70,
- 0x74, 0x63, 0x2e, 0x67, 0x32, 0x2e, 0x6e, 0x65, 0x77, 0x73, 0x69, 0x74,
- 0x65, 0x6d, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x69, 0x70, 0x74, 0x63, 0x2e, 0x67, 0x32, 0x2e, 0x6e, 0x65, 0x77,
- 0x73, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x70, 0x74, 0x63, 0x2e,
- 0x67, 0x32, 0x2e, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x69, 0x74,
- 0x65, 0x6d, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x69, 0x70, 0x74, 0x63, 0x2e, 0x67, 0x32, 0x2e, 0x70, 0x6c, 0x61,
- 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x69, 0x74, 0x65, 0x6d, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x70, 0x75, 0x6e, 0x70, 0x6c,
- 0x75, 0x67, 0x67, 0x65, 0x64, 0x2e, 0x72, 0x63, 0x70, 0x72, 0x6f, 0x66,
- 0x69, 0x6c, 0x65, 0x09, 0x09, 0x72, 0x63, 0x70, 0x72, 0x6f, 0x66, 0x69,
- 0x6c, 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x72, 0x65, 0x70, 0x6f,
- 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x70, 0x61, 0x63, 0x6b, 0x61,
- 0x67, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x69, 0x72, 0x70, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x73, 0x2d, 0x78, 0x70, 0x72, 0x09, 0x09,
- 0x09, 0x09, 0x78, 0x70, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x73,
- 0x61, 0x63, 0x2e, 0x66, 0x63, 0x73, 0x09, 0x09, 0x09, 0x66, 0x63, 0x73,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6a, 0x61, 0x6d, 0x09, 0x09, 0x09, 0x09,
- 0x6a, 0x61, 0x6d, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6a, 0x61,
- 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x74, 0x2d, 0x64, 0x69, 0x72, 0x65, 0x63,
- 0x74, 0x6f, 0x72, 0x79, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6a, 0x61, 0x70, 0x61, 0x6e,
- 0x6e, 0x65, 0x74, 0x2d, 0x6a, 0x70, 0x6e, 0x73, 0x74, 0x6f, 0x72, 0x65,
- 0x2d, 0x77, 0x61, 0x6b, 0x65, 0x75, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6a, 0x61, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x74, 0x2d, 0x70,
- 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x2d, 0x77, 0x61, 0x6b, 0x65, 0x75,
- 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6a, 0x61, 0x70, 0x61,
- 0x6e, 0x6e, 0x65, 0x74, 0x2d, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6a, 0x61, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x74, 0x2d, 0x72, 0x65, 0x67,
- 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x77, 0x61,
- 0x6b, 0x65, 0x75, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6a,
- 0x61, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x74, 0x2d, 0x73, 0x65, 0x74, 0x73,
- 0x74, 0x6f, 0x72, 0x65, 0x2d, 0x77, 0x61, 0x6b, 0x65, 0x75, 0x70, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6a, 0x61, 0x70, 0x61, 0x6e, 0x6e,
- 0x65, 0x74, 0x2d, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6a, 0x61,
- 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x74, 0x2d, 0x76, 0x65, 0x72, 0x69, 0x66,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x77, 0x61, 0x6b, 0x65,
- 0x75, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6a, 0x63, 0x70, 0x2e, 0x6a,
- 0x61, 0x76, 0x61, 0x6d, 0x65, 0x2e, 0x6d, 0x69, 0x64, 0x6c, 0x65, 0x74,
- 0x2d, 0x72, 0x6d, 0x73, 0x09, 0x09, 0x72, 0x6d, 0x73, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6a, 0x69, 0x73, 0x70, 0x09, 0x09, 0x09, 0x09, 0x6a, 0x69,
- 0x73, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6a, 0x6f, 0x6f, 0x73, 0x74,
- 0x2e, 0x6a, 0x6f, 0x64, 0x61, 0x2d, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76,
- 0x65, 0x09, 0x09, 0x6a, 0x6f, 0x64, 0x61, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6b, 0x61, 0x68, 0x6f, 0x6f, 0x74, 0x7a, 0x09, 0x09, 0x09, 0x09, 0x6b,
- 0x74, 0x7a, 0x20, 0x6b, 0x74, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6b,
- 0x64, 0x65, 0x2e, 0x6b, 0x61, 0x72, 0x62, 0x6f, 0x6e, 0x09, 0x09, 0x09,
- 0x6b, 0x61, 0x72, 0x62, 0x6f, 0x6e, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6b,
- 0x64, 0x65, 0x2e, 0x6b, 0x63, 0x68, 0x61, 0x72, 0x74, 0x09, 0x09, 0x09,
- 0x63, 0x68, 0x72, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6b, 0x64, 0x65,
- 0x2e, 0x6b, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x09, 0x09, 0x09,
- 0x6b, 0x66, 0x6f, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6b, 0x64, 0x65, 0x2e,
- 0x6b, 0x69, 0x76, 0x69, 0x6f, 0x09, 0x09, 0x09, 0x66, 0x6c, 0x77, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6b, 0x64, 0x65, 0x2e, 0x6b, 0x6f, 0x6e, 0x74,
- 0x6f, 0x75, 0x72, 0x09, 0x09, 0x09, 0x6b, 0x6f, 0x6e, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6b, 0x64, 0x65, 0x2e, 0x6b, 0x70, 0x72, 0x65, 0x73, 0x65,
- 0x6e, 0x74, 0x65, 0x72, 0x09, 0x09, 0x09, 0x6b, 0x70, 0x72, 0x20, 0x6b,
- 0x70, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6b, 0x64, 0x65, 0x2e, 0x6b,
- 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x09, 0x09, 0x09, 0x6b, 0x73, 0x70,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6b, 0x64, 0x65, 0x2e, 0x6b, 0x77, 0x6f,
- 0x72, 0x64, 0x09, 0x09, 0x09, 0x6b, 0x77, 0x64, 0x20, 0x6b, 0x77, 0x74,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6b, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x61,
- 0x61, 0x70, 0x70, 0x09, 0x09, 0x09, 0x68, 0x74, 0x6b, 0x65, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6b, 0x69, 0x64, 0x73, 0x70, 0x69, 0x72, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x09, 0x09, 0x09, 0x6b, 0x69, 0x61, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6b, 0x69, 0x6e, 0x61, 0x72, 0x09, 0x09, 0x09, 0x09, 0x6b,
- 0x6e, 0x65, 0x20, 0x6b, 0x6e, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6b,
- 0x6f, 0x61, 0x6e, 0x09, 0x09, 0x09, 0x09, 0x73, 0x6b, 0x70, 0x20, 0x73,
- 0x6b, 0x64, 0x20, 0x73, 0x6b, 0x74, 0x20, 0x73, 0x6b, 0x6d, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6b, 0x6f, 0x64, 0x61, 0x6b, 0x2d, 0x64, 0x65, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x09, 0x09, 0x73, 0x73, 0x65,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6c, 0x61, 0x73, 0x2e, 0x6c, 0x61, 0x73,
- 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x6c, 0x61, 0x73, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6c, 0x69, 0x62, 0x65,
- 0x72, 0x74, 0x79, 0x2d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6c, 0x6c, 0x61, 0x6d,
- 0x61, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2e, 0x6c, 0x69,
- 0x66, 0x65, 0x2d, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x64,
- 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x09, 0x6c, 0x62, 0x64, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x67, 0x72, 0x61, 0x70,
- 0x68, 0x69, 0x63, 0x73, 0x2e, 0x6c, 0x69, 0x66, 0x65, 0x2d, 0x62, 0x61,
- 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e,
- 0x67, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x6c, 0x62, 0x65, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6c, 0x6f, 0x74, 0x75, 0x73, 0x2d, 0x31, 0x2d, 0x32,
- 0x2d, 0x33, 0x09, 0x09, 0x09, 0x31, 0x32, 0x33, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6c, 0x6f, 0x74, 0x75, 0x73, 0x2d, 0x61, 0x70, 0x70, 0x72, 0x6f,
- 0x61, 0x63, 0x68, 0x09, 0x09, 0x09, 0x61, 0x70, 0x72, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6c, 0x6f, 0x74, 0x75, 0x73, 0x2d, 0x66, 0x72, 0x65, 0x65,
- 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x09, 0x09, 0x09, 0x70, 0x72, 0x65, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6c, 0x6f, 0x74, 0x75, 0x73, 0x2d, 0x6e, 0x6f,
- 0x74, 0x65, 0x73, 0x09, 0x09, 0x09, 0x6e, 0x73, 0x66, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6c, 0x6f, 0x74, 0x75, 0x73, 0x2d, 0x6f, 0x72, 0x67, 0x61,
- 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x09, 0x09, 0x09, 0x6f, 0x72, 0x67, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6c, 0x6f, 0x74, 0x75, 0x73, 0x2d, 0x73, 0x63,
- 0x72, 0x65, 0x65, 0x6e, 0x63, 0x61, 0x6d, 0x09, 0x09, 0x09, 0x73, 0x63,
- 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6c, 0x6f, 0x74, 0x75, 0x73, 0x2d,
- 0x77, 0x6f, 0x72, 0x64, 0x70, 0x72, 0x6f, 0x09, 0x09, 0x09, 0x6c, 0x77,
- 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x61, 0x63, 0x70, 0x6f, 0x72,
- 0x74, 0x73, 0x2e, 0x70, 0x6f, 0x72, 0x74, 0x70, 0x6b, 0x67, 0x09, 0x09,
- 0x70, 0x6f, 0x72, 0x74, 0x70, 0x6b, 0x67, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6d, 0x61, 0x72, 0x6c, 0x69, 0x6e, 0x2e, 0x64, 0x72, 0x6d,
- 0x2e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d,
- 0x61, 0x72, 0x6c, 0x69, 0x6e, 0x2e, 0x64, 0x72, 0x6d, 0x2e, 0x63, 0x6f,
- 0x6e, 0x66, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x61, 0x72, 0x6c, 0x69, 0x6e,
- 0x2e, 0x64, 0x72, 0x6d, 0x2e, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d,
- 0x61, 0x72, 0x6c, 0x69, 0x6e, 0x2e, 0x64, 0x72, 0x6d, 0x2e, 0x6d, 0x64,
- 0x63, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x63, 0x64, 0x09, 0x09,
- 0x09, 0x09, 0x6d, 0x63, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x65,
- 0x64, 0x63, 0x61, 0x6c, 0x63, 0x64, 0x61, 0x74, 0x61, 0x09, 0x09, 0x09,
- 0x6d, 0x63, 0x31, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x65, 0x64, 0x69,
- 0x61, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x64, 0x6b,
- 0x65, 0x79, 0x09, 0x09, 0x63, 0x64, 0x6b, 0x65, 0x79, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x65, 0x72, 0x69, 0x64, 0x69, 0x61, 0x6e,
- 0x2d, 0x73, 0x6c, 0x69, 0x6e, 0x67, 0x73, 0x68, 0x6f, 0x74, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x66, 0x65, 0x72, 0x09, 0x09, 0x09, 0x09, 0x6d,
- 0x77, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x66, 0x6d, 0x70, 0x09,
- 0x09, 0x09, 0x09, 0x6d, 0x66, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d,
- 0x69, 0x63, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x66, 0x78, 0x2e, 0x66, 0x6c,
- 0x6f, 0x09, 0x09, 0x09, 0x66, 0x6c, 0x6f, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x66, 0x78, 0x2e, 0x69,
- 0x67, 0x78, 0x09, 0x09, 0x09, 0x69, 0x67, 0x78, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6d, 0x69, 0x66, 0x09, 0x09, 0x09, 0x09, 0x6d, 0x69, 0x66, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x6f,
- 0x66, 0x74, 0x2d, 0x68, 0x70, 0x33, 0x30, 0x30, 0x30, 0x2d, 0x73, 0x61,
- 0x76, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x69, 0x74,
- 0x73, 0x75, 0x62, 0x69, 0x73, 0x68, 0x69, 0x2e, 0x6d, 0x69, 0x73, 0x74,
- 0x79, 0x2d, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x74, 0x72, 0x75, 0x73,
- 0x74, 0x77, 0x65, 0x62, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x62,
- 0x69, 0x75, 0x73, 0x2e, 0x64, 0x61, 0x66, 0x09, 0x09, 0x09, 0x64, 0x61,
- 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x62, 0x69, 0x75, 0x73,
- 0x2e, 0x64, 0x69, 0x73, 0x09, 0x09, 0x09, 0x64, 0x69, 0x73, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x62, 0x69, 0x75, 0x73, 0x2e, 0x6d, 0x62,
- 0x6b, 0x09, 0x09, 0x09, 0x6d, 0x62, 0x6b, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6d, 0x6f, 0x62, 0x69, 0x75, 0x73, 0x2e, 0x6d, 0x71, 0x79, 0x09, 0x09,
- 0x09, 0x6d, 0x71, 0x79, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x62,
- 0x69, 0x75, 0x73, 0x2e, 0x6d, 0x73, 0x6c, 0x09, 0x09, 0x09, 0x6d, 0x73,
- 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x62, 0x69, 0x75, 0x73,
- 0x2e, 0x70, 0x6c, 0x63, 0x09, 0x09, 0x09, 0x70, 0x6c, 0x63, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x62, 0x69, 0x75, 0x73, 0x2e, 0x74, 0x78,
- 0x66, 0x09, 0x09, 0x09, 0x74, 0x78, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6d, 0x6f, 0x70, 0x68, 0x75, 0x6e, 0x2e, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x09, 0x09, 0x6d, 0x70, 0x6e, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x70, 0x68, 0x75, 0x6e, 0x2e, 0x63,
- 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x09, 0x09,
- 0x6d, 0x70, 0x63, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x6f,
- 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x61, 0x2e, 0x66, 0x6c, 0x65, 0x78, 0x73,
- 0x75, 0x69, 0x74, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d,
- 0x6f, 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x61, 0x2e, 0x66, 0x6c, 0x65, 0x78,
- 0x73, 0x75, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x64, 0x73, 0x69, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x74, 0x6f, 0x72, 0x6f, 0x6c,
- 0x61, 0x2e, 0x66, 0x6c, 0x65, 0x78, 0x73, 0x75, 0x69, 0x74, 0x65, 0x2e,
- 0x66, 0x69, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x6f,
- 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x61, 0x2e, 0x66, 0x6c, 0x65, 0x78, 0x73,
- 0x75, 0x69, 0x74, 0x65, 0x2e, 0x67, 0x6f, 0x74, 0x61, 0x70, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x74, 0x6f, 0x72, 0x6f, 0x6c,
- 0x61, 0x2e, 0x66, 0x6c, 0x65, 0x78, 0x73, 0x75, 0x69, 0x74, 0x65, 0x2e,
- 0x6b, 0x6d, 0x72, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x6f,
- 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x61, 0x2e, 0x66, 0x6c, 0x65, 0x78, 0x73,
- 0x75, 0x69, 0x74, 0x65, 0x2e, 0x74, 0x74, 0x63, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x61, 0x2e,
- 0x66, 0x6c, 0x65, 0x78, 0x73, 0x75, 0x69, 0x74, 0x65, 0x2e, 0x77, 0x65,
- 0x6d, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x74, 0x6f,
- 0x72, 0x6f, 0x6c, 0x61, 0x2e, 0x69, 0x70, 0x72, 0x6d, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6d, 0x6f, 0x7a, 0x69, 0x6c, 0x6c, 0x61, 0x2e, 0x78, 0x75,
- 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x78, 0x75, 0x6c, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x61, 0x72, 0x74, 0x67, 0x61,
- 0x6c, 0x72, 0x79, 0x09, 0x09, 0x09, 0x63, 0x69, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x61, 0x73, 0x66, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x63, 0x61, 0x62, 0x2d, 0x63, 0x6f,
- 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x09, 0x09, 0x63, 0x61,
- 0x62, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x63,
- 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x69, 0x63, 0x63, 0x70, 0x72, 0x6f, 0x66,
- 0x69, 0x6c, 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x65,
- 0x78, 0x63, 0x65, 0x6c, 0x09, 0x09, 0x09, 0x78, 0x6c, 0x73, 0x20, 0x78,
- 0x6c, 0x6d, 0x20, 0x78, 0x6c, 0x61, 0x20, 0x78, 0x6c, 0x63, 0x20, 0x78,
- 0x6c, 0x74, 0x20, 0x78, 0x6c, 0x77, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d,
- 0x73, 0x2d, 0x65, 0x78, 0x63, 0x65, 0x6c, 0x2e, 0x61, 0x64, 0x64, 0x69,
- 0x6e, 0x2e, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x65, 0x6e, 0x61, 0x62, 0x6c,
- 0x65, 0x64, 0x2e, 0x31, 0x32, 0x09, 0x09, 0x78, 0x6c, 0x61, 0x6d, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x65, 0x78, 0x63, 0x65, 0x6c,
- 0x2e, 0x73, 0x68, 0x65, 0x65, 0x74, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72,
- 0x79, 0x2e, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x65, 0x6e, 0x61, 0x62, 0x6c,
- 0x65, 0x64, 0x2e, 0x31, 0x32, 0x09, 0x78, 0x6c, 0x73, 0x62, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x65, 0x78, 0x63, 0x65, 0x6c, 0x2e,
- 0x73, 0x68, 0x65, 0x65, 0x74, 0x2e, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x65,
- 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x2e, 0x31, 0x32, 0x09, 0x09, 0x78,
- 0x6c, 0x73, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x65,
- 0x78, 0x63, 0x65, 0x6c, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74,
- 0x65, 0x2e, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x65, 0x6e, 0x61, 0x62, 0x6c,
- 0x65, 0x64, 0x2e, 0x31, 0x32, 0x09, 0x78, 0x6c, 0x74, 0x6d, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x6f, 0x62,
- 0x6a, 0x65, 0x63, 0x74, 0x09, 0x09, 0x09, 0x65, 0x6f, 0x74, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x68, 0x74, 0x6d, 0x6c, 0x68, 0x65,
- 0x6c, 0x70, 0x09, 0x09, 0x09, 0x63, 0x68, 0x6d, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6d, 0x73, 0x2d, 0x69, 0x6d, 0x73, 0x09, 0x09, 0x09, 0x09, 0x69,
- 0x6d, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x6c, 0x72,
- 0x6d, 0x09, 0x09, 0x09, 0x09, 0x6c, 0x72, 0x6d, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65,
- 0x2e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x78, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69,
- 0x63, 0x65, 0x74, 0x68, 0x65, 0x6d, 0x65, 0x09, 0x09, 0x09, 0x74, 0x68,
- 0x6d, 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d,
- 0x6f, 0x70, 0x65, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67,
- 0x65, 0x2e, 0x6f, 0x62, 0x66, 0x75, 0x73, 0x63, 0x61, 0x74, 0x65, 0x64,
- 0x2d, 0x6f, 0x70, 0x65, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x70, 0x6b, 0x69, 0x2e, 0x73, 0x65, 0x63,
- 0x63, 0x61, 0x74, 0x09, 0x09, 0x09, 0x63, 0x61, 0x74, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x70, 0x6b, 0x69, 0x2e, 0x73, 0x74, 0x6c,
- 0x09, 0x09, 0x09, 0x73, 0x74, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6d, 0x73, 0x2d, 0x70, 0x6c, 0x61, 0x79, 0x72, 0x65, 0x61, 0x64,
- 0x79, 0x2e, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x70,
- 0x6f, 0x77, 0x65, 0x72, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x09, 0x09, 0x09,
- 0x70, 0x70, 0x74, 0x20, 0x70, 0x70, 0x73, 0x20, 0x70, 0x6f, 0x74, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x70, 0x6f, 0x77, 0x65, 0x72,
- 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x2e, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x2e,
- 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
- 0x2e, 0x31, 0x32, 0x09, 0x09, 0x70, 0x70, 0x61, 0x6d, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x70, 0x6f,
- 0x69, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x65, 0x6e,
- 0x61, 0x62, 0x6c, 0x65, 0x64, 0x2e, 0x31, 0x32, 0x09, 0x70, 0x70, 0x74,
- 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x70, 0x6f, 0x77,
- 0x65, 0x72, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x2e, 0x73, 0x6c, 0x69, 0x64,
- 0x65, 0x2e, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x65, 0x6e, 0x61, 0x62, 0x6c,
- 0x65, 0x64, 0x2e, 0x31, 0x32, 0x09, 0x09, 0x73, 0x6c, 0x64, 0x6d, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x70, 0x6f, 0x77, 0x65, 0x72,
- 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x2e, 0x73, 0x6c, 0x69, 0x64, 0x65, 0x73,
- 0x68, 0x6f, 0x77, 0x2e, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x65, 0x6e, 0x61,
- 0x62, 0x6c, 0x65, 0x64, 0x2e, 0x31, 0x32, 0x09, 0x09, 0x70, 0x70, 0x73,
- 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x70, 0x6f, 0x77,
- 0x65, 0x72, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x2e, 0x74, 0x65, 0x6d, 0x70,
- 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x65, 0x6e,
- 0x61, 0x62, 0x6c, 0x65, 0x64, 0x2e, 0x31, 0x32, 0x09, 0x09, 0x70, 0x6f,
- 0x74, 0x6d, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d,
- 0x70, 0x72, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x69,
- 0x6e, 0x74, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x70, 0x72, 0x6f, 0x6a,
- 0x65, 0x63, 0x74, 0x09, 0x09, 0x09, 0x6d, 0x70, 0x70, 0x20, 0x6d, 0x70,
- 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x74,
- 0x6e, 0x65, 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73,
- 0x2d, 0x77, 0x6d, 0x64, 0x72, 0x6d, 0x2e, 0x6c, 0x69, 0x63, 0x2d, 0x63,
- 0x68, 0x6c, 0x67, 0x2d, 0x72, 0x65, 0x71, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x77, 0x6d, 0x64, 0x72, 0x6d, 0x2e, 0x6c,
- 0x69, 0x63, 0x2d, 0x72, 0x65, 0x73, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x77, 0x6d, 0x64, 0x72, 0x6d, 0x2e, 0x6d,
- 0x65, 0x74, 0x65, 0x72, 0x2d, 0x63, 0x68, 0x6c, 0x67, 0x2d, 0x72, 0x65,
- 0x71, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x77,
- 0x6d, 0x64, 0x72, 0x6d, 0x2e, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x2d, 0x72,
- 0x65, 0x73, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x77,
- 0x6f, 0x72, 0x64, 0x2e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
- 0x64, 0x2e, 0x31, 0x32, 0x09, 0x64, 0x6f, 0x63, 0x6d, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x77, 0x6f, 0x72, 0x64, 0x2e, 0x74, 0x65,
- 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x6d, 0x61, 0x63, 0x72, 0x6f,
- 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x2e, 0x31, 0x32, 0x09, 0x64,
- 0x6f, 0x74, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x77,
- 0x6f, 0x72, 0x6b, 0x73, 0x09, 0x09, 0x09, 0x77, 0x70, 0x73, 0x20, 0x77,
- 0x6b, 0x73, 0x20, 0x77, 0x63, 0x6d, 0x20, 0x77, 0x64, 0x62, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x77, 0x70, 0x6c, 0x09, 0x09, 0x09,
- 0x09, 0x77, 0x70, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d,
- 0x78, 0x70, 0x73, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x09,
- 0x09, 0x09, 0x78, 0x70, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73,
- 0x65, 0x71, 0x09, 0x09, 0x09, 0x09, 0x6d, 0x73, 0x65, 0x71, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x69, 0x67, 0x6e, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x61, 0x64,
- 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x61, 0x64, 0x2e, 0x63,
- 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x63, 0x69, 0x66, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x75, 0x73, 0x69, 0x63, 0x2d, 0x6e,
- 0x69, 0x66, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x75, 0x73, 0x69,
- 0x63, 0x69, 0x61, 0x6e, 0x09, 0x09, 0x09, 0x6d, 0x75, 0x73, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x75, 0x76, 0x65, 0x65, 0x2e, 0x73, 0x74, 0x79,
- 0x6c, 0x65, 0x09, 0x09, 0x09, 0x6d, 0x73, 0x74, 0x79, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6d, 0x79, 0x6e, 0x66, 0x63, 0x09, 0x09, 0x09, 0x09, 0x74,
- 0x61, 0x67, 0x6c, 0x65, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6e, 0x63, 0x64, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x63, 0x64, 0x2e, 0x72, 0x65,
- 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6e, 0x65, 0x72, 0x76, 0x61, 0x6e, 0x61, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x66, 0x70, 0x78, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6e, 0x65, 0x75, 0x72, 0x6f, 0x6c, 0x61, 0x6e, 0x67,
- 0x75, 0x61, 0x67, 0x65, 0x2e, 0x6e, 0x6c, 0x75, 0x09, 0x09, 0x6e, 0x6c,
- 0x75, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x69, 0x74, 0x66, 0x09, 0x09,
- 0x09, 0x09, 0x6e, 0x74, 0x66, 0x20, 0x6e, 0x69, 0x74, 0x66, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x62, 0x6c, 0x65, 0x6e, 0x65, 0x74, 0x2d,
- 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x09, 0x09, 0x6e,
- 0x6e, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x62, 0x6c, 0x65,
- 0x6e, 0x65, 0x74, 0x2d, 0x73, 0x65, 0x61, 0x6c, 0x65, 0x72, 0x09, 0x09,
- 0x09, 0x6e, 0x6e, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x62,
- 0x6c, 0x65, 0x6e, 0x65, 0x74, 0x2d, 0x77, 0x65, 0x62, 0x09, 0x09, 0x09,
- 0x6e, 0x6e, 0x77, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f,
- 0x6b, 0x69, 0x61, 0x2e, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x73,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61,
- 0x2e, 0x63, 0x6f, 0x6e, 0x6d, 0x6c, 0x2b, 0x77, 0x62, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61,
- 0x2e, 0x63, 0x6f, 0x6e, 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61, 0x2e, 0x69,
- 0x73, 0x64, 0x73, 0x2d, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x2d, 0x70, 0x72,
- 0x65, 0x73, 0x65, 0x74, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6e, 0x6f, 0x6b, 0x69, 0x61, 0x2e, 0x69, 0x70, 0x74, 0x76, 0x2e, 0x63,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61, 0x2e, 0x6c, 0x61,
- 0x6e, 0x64, 0x6d, 0x61, 0x72, 0x6b, 0x2b, 0x77, 0x62, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61,
- 0x2e, 0x6c, 0x61, 0x6e, 0x64, 0x6d, 0x61, 0x72, 0x6b, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69,
- 0x61, 0x2e, 0x6c, 0x61, 0x6e, 0x64, 0x6d, 0x61, 0x72, 0x6b, 0x63, 0x6f,
- 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61,
- 0x2e, 0x6e, 0x2d, 0x67, 0x61, 0x67, 0x65, 0x2e, 0x61, 0x63, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61,
- 0x2e, 0x6e, 0x2d, 0x67, 0x61, 0x67, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61,
- 0x09, 0x09, 0x6e, 0x67, 0x64, 0x61, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6e, 0x6f, 0x6b, 0x69, 0x61, 0x2e, 0x6e, 0x2d, 0x67, 0x61, 0x67, 0x65,
- 0x2e, 0x73, 0x79, 0x6d, 0x62, 0x69, 0x61, 0x6e, 0x2e, 0x69, 0x6e, 0x73,
- 0x74, 0x61, 0x6c, 0x6c, 0x09, 0x6e, 0x2d, 0x67, 0x61, 0x67, 0x65, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61, 0x2e,
- 0x6e, 0x63, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f,
- 0x6b, 0x69, 0x61, 0x2e, 0x70, 0x63, 0x64, 0x2b, 0x77, 0x62, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69,
- 0x61, 0x2e, 0x70, 0x63, 0x64, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61, 0x2e, 0x72, 0x61, 0x64, 0x69,
- 0x6f, 0x2d, 0x70, 0x72, 0x65, 0x73, 0x65, 0x74, 0x09, 0x09, 0x72, 0x70,
- 0x73, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61,
- 0x2e, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x2d, 0x70, 0x72, 0x65, 0x73, 0x65,
- 0x74, 0x73, 0x09, 0x09, 0x72, 0x70, 0x73, 0x73, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6e, 0x6f, 0x76, 0x61, 0x64, 0x69, 0x67, 0x6d, 0x2e, 0x65, 0x64,
- 0x6d, 0x09, 0x09, 0x09, 0x65, 0x64, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6e, 0x6f, 0x76, 0x61, 0x64, 0x69, 0x67, 0x6d, 0x2e, 0x65, 0x64, 0x78,
- 0x09, 0x09, 0x09, 0x65, 0x64, 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e,
- 0x6f, 0x76, 0x61, 0x64, 0x69, 0x67, 0x6d, 0x2e, 0x65, 0x78, 0x74, 0x09,
- 0x09, 0x09, 0x65, 0x78, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6e, 0x74, 0x74, 0x2d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x2e, 0x66, 0x69,
- 0x6c, 0x65, 0x2d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x74, 0x74, 0x2d, 0x6c, 0x6f,
- 0x63, 0x61, 0x6c, 0x2e, 0x73, 0x69, 0x70, 0x2d, 0x74, 0x61, 0x5f, 0x72,
- 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6e, 0x74, 0x74, 0x2d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x2e, 0x73, 0x69,
- 0x70, 0x2d, 0x74, 0x61, 0x5f, 0x74, 0x63, 0x70, 0x5f, 0x73, 0x74, 0x72,
- 0x65, 0x61, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x61, 0x73, 0x69,
- 0x73, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
- 0x6e, 0x74, 0x2e, 0x63, 0x68, 0x61, 0x72, 0x74, 0x09, 0x09, 0x6f, 0x64,
- 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x61, 0x73, 0x69, 0x73, 0x2e,
- 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x63, 0x68, 0x61, 0x72, 0x74, 0x2d, 0x74, 0x65, 0x6d, 0x70, 0x6c,
- 0x61, 0x74, 0x65, 0x09, 0x6f, 0x74, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6f, 0x61, 0x73, 0x69, 0x73, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62,
- 0x61, 0x73, 0x65, 0x09, 0x09, 0x6f, 0x64, 0x62, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x61, 0x73, 0x69, 0x73, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x64,
- 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x66, 0x6f, 0x72, 0x6d,
- 0x75, 0x6c, 0x61, 0x09, 0x09, 0x6f, 0x64, 0x66, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x61, 0x73, 0x69, 0x73, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x64,
- 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x66, 0x6f, 0x72, 0x6d,
- 0x75, 0x6c, 0x61, 0x2d, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65,
- 0x09, 0x6f, 0x64, 0x66, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x61,
- 0x73, 0x69, 0x73, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63,
- 0x73, 0x09, 0x09, 0x6f, 0x64, 0x67, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x61, 0x73, 0x69, 0x73, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63,
- 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69,
- 0x63, 0x73, 0x2d, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x09,
- 0x6f, 0x74, 0x67, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x61, 0x73, 0x69,
- 0x73, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
- 0x6e, 0x74, 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x09, 0x09, 0x6f, 0x64,
- 0x69, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x61, 0x73, 0x69, 0x73, 0x2e,
- 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2d, 0x74, 0x65, 0x6d, 0x70, 0x6c,
- 0x61, 0x74, 0x65, 0x09, 0x6f, 0x74, 0x69, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6f, 0x61, 0x73, 0x69, 0x73, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65,
- 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x09, 0x09, 0x6f, 0x64, 0x70,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x61, 0x73, 0x69, 0x73, 0x2e, 0x6f,
- 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
- 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2d, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x09, 0x6f, 0x74,
- 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x61, 0x73, 0x69, 0x73, 0x2e,
- 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68, 0x65, 0x65, 0x74,
- 0x09, 0x09, 0x6f, 0x64, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x61,
- 0x73, 0x69, 0x73, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73,
- 0x68, 0x65, 0x65, 0x74, 0x2d, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74,
- 0x65, 0x09, 0x6f, 0x74, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x61,
- 0x73, 0x69, 0x73, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x74, 0x65, 0x78, 0x74, 0x09, 0x09, 0x09,
- 0x6f, 0x64, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x61, 0x73, 0x69,
- 0x73, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
- 0x6e, 0x74, 0x2e, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x6d, 0x61, 0x73, 0x74,
- 0x65, 0x72, 0x09, 0x09, 0x6f, 0x64, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6f, 0x61, 0x73, 0x69, 0x73, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x74, 0x65, 0x78, 0x74, 0x2d,
- 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x09, 0x6f, 0x74, 0x74,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x61, 0x73, 0x69, 0x73, 0x2e, 0x6f,
- 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
- 0x74, 0x65, 0x78, 0x74, 0x2d, 0x77, 0x65, 0x62, 0x09, 0x09, 0x6f, 0x74,
- 0x68, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x62, 0x6e, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x66, 0x74, 0x6e, 0x2e, 0x6c,
- 0x31, 0x30, 0x6e, 0x2b, 0x6a, 0x73, 0x6f, 0x6e, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6f, 0x69, 0x70, 0x66, 0x2e, 0x63, 0x6f, 0x6e, 0x74,
- 0x65, 0x6e, 0x74, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x64, 0x6f, 0x77,
- 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x69, 0x70, 0x66, 0x2e, 0x63, 0x6f, 0x6e,
- 0x74, 0x65, 0x6e, 0x74, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x73, 0x74,
- 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x69, 0x70, 0x66, 0x2e, 0x63,
- 0x73, 0x70, 0x67, 0x2d, 0x68, 0x65, 0x78, 0x62, 0x69, 0x6e, 0x61, 0x72,
- 0x79, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x69, 0x70, 0x66,
- 0x2e, 0x64, 0x61, 0x65, 0x2e, 0x73, 0x76, 0x67, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x69, 0x70, 0x66, 0x2e,
- 0x64, 0x61, 0x65, 0x2e, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x69, 0x70, 0x66,
- 0x2e, 0x6d, 0x69, 0x70, 0x70, 0x76, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
- 0x6c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x69, 0x70, 0x66, 0x2e,
- 0x70, 0x61, 0x65, 0x2e, 0x67, 0x65, 0x6d, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6f, 0x69, 0x70, 0x66, 0x2e, 0x73, 0x70, 0x64, 0x69, 0x73,
- 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x69, 0x70, 0x66, 0x2e, 0x73, 0x70,
- 0x64, 0x6c, 0x69, 0x73, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x69, 0x70, 0x66, 0x2e, 0x75, 0x65, 0x70,
- 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x69, 0x70, 0x66, 0x2e, 0x75, 0x73,
- 0x65, 0x72, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6c, 0x70, 0x63, 0x2d, 0x73,
- 0x75, 0x67, 0x61, 0x72, 0x09, 0x09, 0x09, 0x78, 0x6f, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2d, 0x73, 0x63, 0x77, 0x73,
- 0x2d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2d, 0x73, 0x63, 0x77, 0x73, 0x2d, 0x68,
- 0x74, 0x74, 0x70, 0x2d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2d, 0x73, 0x63,
- 0x77, 0x73, 0x2d, 0x68, 0x74, 0x74, 0x70, 0x2d, 0x72, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x6d, 0x61, 0x2e, 0x62, 0x63, 0x61, 0x73, 0x74, 0x2e, 0x61, 0x73, 0x73,
- 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x2d, 0x70, 0x72, 0x6f, 0x63,
- 0x65, 0x64, 0x75, 0x72, 0x65, 0x2d, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65,
- 0x74, 0x65, 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x62, 0x63, 0x61, 0x73, 0x74, 0x2e,
- 0x64, 0x72, 0x6d, 0x2d, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d,
- 0x61, 0x2e, 0x62, 0x63, 0x61, 0x73, 0x74, 0x2e, 0x69, 0x6d, 0x64, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d,
- 0x61, 0x2e, 0x62, 0x63, 0x61, 0x73, 0x74, 0x2e, 0x6c, 0x74, 0x6b, 0x6d,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x62,
- 0x63, 0x61, 0x73, 0x74, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x62, 0x63, 0x61, 0x73,
- 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x69,
- 0x6e, 0x67, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x62, 0x63, 0x61, 0x73,
- 0x74, 0x2e, 0x73, 0x67, 0x62, 0x6f, 0x6f, 0x74, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x62, 0x63, 0x61, 0x73, 0x74,
- 0x2e, 0x73, 0x67, 0x64, 0x64, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x62, 0x63, 0x61, 0x73,
- 0x74, 0x2e, 0x73, 0x67, 0x64, 0x75, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x62, 0x63, 0x61, 0x73, 0x74, 0x2e, 0x73,
- 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x2d, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c,
- 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x62, 0x63, 0x61,
- 0x73, 0x74, 0x2e, 0x73, 0x6d, 0x61, 0x72, 0x74, 0x63, 0x61, 0x72, 0x64,
- 0x2d, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x62,
- 0x63, 0x61, 0x73, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x6f, 0x76, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61,
- 0x2e, 0x62, 0x63, 0x61, 0x73, 0x74, 0x2e, 0x73, 0x74, 0x6b, 0x6d, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x63, 0x61,
- 0x62, 0x2d, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2d, 0x62, 0x6f,
- 0x6f, 0x6b, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x63, 0x61, 0x62, 0x2d, 0x66, 0x65, 0x61,
- 0x74, 0x75, 0x72, 0x65, 0x2d, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x6d, 0x61, 0x2e, 0x63, 0x61, 0x62, 0x2d, 0x70, 0x63, 0x63, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61,
- 0x2e, 0x63, 0x61, 0x62, 0x2d, 0x75, 0x73, 0x65, 0x72, 0x2d, 0x70, 0x72,
- 0x65, 0x66, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x64, 0x63, 0x64, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x64, 0x63, 0x64, 0x63,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x64, 0x64, 0x32,
- 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x64, 0x64, 0x32, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x64, 0x72, 0x6d,
- 0x2e, 0x72, 0x69, 0x73, 0x64, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x67, 0x72, 0x6f, 0x75,
- 0x70, 0x2d, 0x75, 0x73, 0x61, 0x67, 0x65, 0x2d, 0x6c, 0x69, 0x73, 0x74,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x6d, 0x61, 0x2e, 0x70, 0x61, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x70, 0x6f, 0x63,
- 0x2e, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x2d, 0x70, 0x72,
- 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2d, 0x72, 0x65, 0x70, 0x6f, 0x72,
- 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6f, 0x6d, 0x61, 0x2e, 0x70, 0x6f, 0x63, 0x2e, 0x66, 0x69, 0x6e, 0x61,
- 0x6c, 0x2d, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x70,
- 0x6f, 0x63, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e,
- 0x70, 0x6f, 0x63, 0x2e, 0x69, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2d, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f,
- 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6f, 0x6d, 0x61, 0x2e, 0x70, 0x6f, 0x63, 0x2e, 0x6f, 0x70, 0x74, 0x69,
- 0x6d, 0x69, 0x7a, 0x65, 0x64, 0x2d, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65,
- 0x73, 0x73, 0x2d, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e,
- 0x70, 0x75, 0x73, 0x68, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x6d, 0x61, 0x2e, 0x73, 0x63, 0x69, 0x64, 0x6d, 0x2e, 0x6d, 0x65, 0x73,
- 0x73, 0x61, 0x67, 0x65, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x2e, 0x78, 0x63, 0x61, 0x70,
- 0x2d, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61,
- 0x64, 0x73, 0x2d, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x64, 0x73,
- 0x2d, 0x66, 0x69, 0x6c, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x64, 0x73, 0x2d, 0x66, 0x6f,
- 0x6c, 0x64, 0x65, 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6f, 0x6d, 0x61, 0x6c, 0x6f, 0x63, 0x2d, 0x73, 0x75,
- 0x70, 0x6c, 0x2d, 0x69, 0x6e, 0x69, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6f, 0x70, 0x65, 0x6e, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x6f, 0x72,
- 0x67, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x09,
- 0x09, 0x6f, 0x78, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2d,
- 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65,
- 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d,
- 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
- 0x6e, 0x74, 0x2e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x78, 0x6d, 0x6c,
- 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65,
- 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d,
- 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
- 0x6e, 0x74, 0x2e, 0x64, 0x72, 0x61, 0x77, 0x69, 0x6e, 0x67, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65,
- 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d,
- 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
- 0x6e, 0x74, 0x2e, 0x64, 0x72, 0x61, 0x77, 0x69, 0x6e, 0x67, 0x6d, 0x6c,
- 0x2e, 0x63, 0x68, 0x61, 0x72, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c,
- 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69,
- 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x64,
- 0x72, 0x61, 0x77, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x63, 0x68, 0x61,
- 0x72, 0x74, 0x73, 0x68, 0x61, 0x70, 0x65, 0x73, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78,
- 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66,
- 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x64, 0x72, 0x61, 0x77, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x64,
- 0x69, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x73,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x64, 0x72, 0x61, 0x77, 0x69, 0x6e, 0x67,
- 0x6d, 0x6c, 0x2e, 0x64, 0x69, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x64, 0x61,
- 0x74, 0x61, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d,
- 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x64, 0x72, 0x61, 0x77, 0x69,
- 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x64, 0x69, 0x61, 0x67, 0x72, 0x61, 0x6d,
- 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c,
- 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69,
- 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x64,
- 0x72, 0x61, 0x77, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x64, 0x69, 0x61,
- 0x67, 0x72, 0x61, 0x6d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
- 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f,
- 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
- 0x74, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x2d, 0x70,
- 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
- 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f,
- 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
- 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x6d, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74,
- 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d,
- 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66,
- 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
- 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x6d, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70,
- 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73,
- 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6c, 0x2e, 0x68, 0x61, 0x6e, 0x64, 0x6f,
- 0x75, 0x74, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78,
- 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66,
- 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x6d, 0x6c, 0x2e, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x6d, 0x61, 0x73,
- 0x74, 0x65, 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72,
- 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64,
- 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73,
- 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6c, 0x2e, 0x6e,
- 0x6f, 0x74, 0x65, 0x73, 0x73, 0x6c, 0x69, 0x64, 0x65, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d,
- 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66,
- 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
- 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x6d, 0x6c, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x09, 0x70, 0x70, 0x74, 0x78, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f,
- 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65,
- 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65,
- 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6c, 0x2e,
- 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2e, 0x6d, 0x61, 0x69, 0x6e, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66,
- 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63,
- 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72,
- 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6c,
- 0x2e, 0x70, 0x72, 0x65, 0x73, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78,
- 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66,
- 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x6d, 0x6c, 0x2e, 0x73, 0x6c, 0x69, 0x64, 0x65, 0x09, 0x73, 0x6c,
- 0x64, 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65,
- 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d,
- 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
- 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x6d, 0x6c, 0x2e, 0x73, 0x6c, 0x69, 0x64, 0x65, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70,
- 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73,
- 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6c, 0x2e, 0x73, 0x6c, 0x69, 0x64, 0x65,
- 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c,
- 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69,
- 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70,
- 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6d,
- 0x6c, 0x2e, 0x73, 0x6c, 0x69, 0x64, 0x65, 0x6d, 0x61, 0x73, 0x74, 0x65,
- 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70,
- 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73,
- 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6c, 0x2e, 0x73, 0x6c, 0x69, 0x64, 0x65,
- 0x73, 0x68, 0x6f, 0x77, 0x09, 0x70, 0x70, 0x73, 0x78, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66,
- 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63,
- 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72,
- 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6c,
- 0x2e, 0x73, 0x6c, 0x69, 0x64, 0x65, 0x73, 0x68, 0x6f, 0x77, 0x2e, 0x6d,
- 0x61, 0x69, 0x6e, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72,
- 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64,
- 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73,
- 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6c, 0x2e, 0x73,
- 0x6c, 0x69, 0x64, 0x65, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x69, 0x6e,
- 0x66, 0x6f, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d,
- 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65,
- 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6c, 0x2e, 0x74, 0x61,
- 0x62, 0x6c, 0x65, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
- 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f,
- 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
- 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x6d, 0x6c, 0x2e, 0x74, 0x61, 0x67, 0x73, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d,
- 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66,
- 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
- 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x6d, 0x6c, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x09,
- 0x70, 0x6f, 0x74, 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6c, 0x2e, 0x74, 0x65, 0x6d, 0x70,
- 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x6d, 0x61, 0x69, 0x6e, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
- 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f,
- 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
- 0x74, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x6d, 0x6c, 0x2e, 0x76, 0x69, 0x65, 0x77, 0x70, 0x72, 0x6f,
- 0x70, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d,
- 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61,
- 0x64, 0x73, 0x68, 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x63, 0x61, 0x6c,
- 0x63, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c,
- 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69,
- 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73,
- 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68, 0x65, 0x65, 0x74, 0x6d, 0x6c,
- 0x2e, 0x63, 0x68, 0x61, 0x72, 0x74, 0x73, 0x68, 0x65, 0x65, 0x74, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70,
- 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73,
- 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68,
- 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e,
- 0x74, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d,
- 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61,
- 0x64, 0x73, 0x68, 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x63, 0x6f, 0x6e,
- 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78,
- 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66,
- 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68, 0x65, 0x65, 0x74,
- 0x6d, 0x6c, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x73, 0x68, 0x65,
- 0x65, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d,
- 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61,
- 0x64, 0x73, 0x68, 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x65, 0x78, 0x74,
- 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x6b, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
- 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f,
- 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
- 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68, 0x65, 0x65,
- 0x74, 0x6d, 0x6c, 0x2e, 0x70, 0x69, 0x76, 0x6f, 0x74, 0x63, 0x61, 0x63,
- 0x68, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73,
- 0x68, 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x70, 0x69, 0x76, 0x6f, 0x74,
- 0x63, 0x61, 0x63, 0x68, 0x65, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73,
- 0x68, 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x70, 0x69, 0x76, 0x6f, 0x74,
- 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66,
- 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63,
- 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70,
- 0x72, 0x65, 0x61, 0x64, 0x73, 0x68, 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e,
- 0x71, 0x75, 0x65, 0x72, 0x79, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65,
- 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d,
- 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
- 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68, 0x65,
- 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
- 0x6e, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78,
- 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66,
- 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68, 0x65, 0x65, 0x74,
- 0x6d, 0x6c, 0x2e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x6c,
- 0x6f, 0x67, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d,
- 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61,
- 0x64, 0x73, 0x68, 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x73, 0x68, 0x61,
- 0x72, 0x65, 0x64, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78,
- 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66,
- 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68, 0x65, 0x65, 0x74,
- 0x6d, 0x6c, 0x2e, 0x73, 0x68, 0x65, 0x65, 0x74, 0x09, 0x78, 0x6c, 0x73,
- 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
- 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f,
- 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
- 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68, 0x65, 0x65,
- 0x74, 0x6d, 0x6c, 0x2e, 0x73, 0x68, 0x65, 0x65, 0x74, 0x2e, 0x6d, 0x61,
- 0x69, 0x6e, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d,
- 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61,
- 0x64, 0x73, 0x68, 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x73, 0x68, 0x65,
- 0x65, 0x74, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65,
- 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d,
- 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
- 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68, 0x65,
- 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70,
- 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73,
- 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68,
- 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70,
- 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73,
- 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68,
- 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73,
- 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78,
- 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66,
- 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68, 0x65, 0x65, 0x74,
- 0x6d, 0x6c, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x09,
- 0x78, 0x6c, 0x74, 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73,
- 0x68, 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c,
- 0x61, 0x74, 0x65, 0x2e, 0x6d, 0x61, 0x69, 0x6e, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78,
- 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66,
- 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73, 0x68, 0x65, 0x65, 0x74,
- 0x6d, 0x6c, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x73,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x73,
- 0x68, 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x76, 0x6f, 0x6c, 0x61, 0x74,
- 0x69, 0x6c, 0x65, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63,
- 0x69, 0x65, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72,
- 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64,
- 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x70, 0x72, 0x65,
- 0x61, 0x64, 0x73, 0x68, 0x65, 0x65, 0x74, 0x6d, 0x6c, 0x2e, 0x77, 0x6f,
- 0x72, 0x6b, 0x73, 0x68, 0x65, 0x65, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d,
- 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66,
- 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
- 0x74, 0x68, 0x65, 0x6d, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66,
- 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63,
- 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x74, 0x68,
- 0x65, 0x6d, 0x65, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70,
- 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73,
- 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x6d, 0x6c, 0x64, 0x72, 0x61, 0x77, 0x69,
- 0x6e, 0x67, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65,
- 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d,
- 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
- 0x6e, 0x74, 0x2e, 0x77, 0x6f, 0x72, 0x64, 0x70, 0x72, 0x6f, 0x63, 0x65,
- 0x73, 0x73, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
- 0x65, 0x6e, 0x74, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d,
- 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x77, 0x6f, 0x72, 0x64, 0x70,
- 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e,
- 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x09, 0x64, 0x6f, 0x63,
- 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
- 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f,
- 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
- 0x74, 0x2e, 0x77, 0x6f, 0x72, 0x64, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73,
- 0x73, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x6c, 0x6f, 0x73, 0x73, 0x61, 0x72, 0x79,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x77, 0x6f, 0x72, 0x64, 0x70, 0x72, 0x6f,
- 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x6d, 0x61, 0x69, 0x6e, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70,
- 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73,
- 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x77, 0x6f, 0x72, 0x64, 0x70, 0x72, 0x6f, 0x63,
- 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x65, 0x6e, 0x64,
- 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66,
- 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63,
- 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x77, 0x6f,
- 0x72, 0x64, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67,
- 0x6d, 0x6c, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x74, 0x61, 0x62, 0x6c, 0x65,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x77, 0x6f, 0x72, 0x64, 0x70, 0x72, 0x6f,
- 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x66, 0x6f,
- 0x6f, 0x74, 0x65, 0x72, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f,
- 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65,
- 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x77, 0x6f, 0x72,
- 0x64, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x6d,
- 0x6c, 0x2e, 0x66, 0x6f, 0x6f, 0x74, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70,
- 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73,
- 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x77, 0x6f, 0x72, 0x64, 0x70, 0x72, 0x6f, 0x63,
- 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x6e, 0x75, 0x6d,
- 0x62, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c,
- 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69,
- 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x77,
- 0x6f, 0x72, 0x64, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e,
- 0x67, 0x6d, 0x6c, 0x2e, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f,
- 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x77, 0x6f, 0x72, 0x64, 0x70, 0x72, 0x6f,
- 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x73, 0x74,
- 0x79, 0x6c, 0x65, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d,
- 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x77, 0x6f, 0x72, 0x64, 0x70,
- 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e,
- 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x09, 0x64, 0x6f, 0x74,
- 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
- 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f,
- 0x66, 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
- 0x74, 0x2e, 0x77, 0x6f, 0x72, 0x64, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73,
- 0x73, 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c,
- 0x61, 0x74, 0x65, 0x2e, 0x6d, 0x61, 0x69, 0x6e, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78,
- 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x6f, 0x66,
- 0x66, 0x69, 0x63, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x77, 0x6f, 0x72, 0x64, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73,
- 0x69, 0x6e, 0x67, 0x6d, 0x6c, 0x2e, 0x77, 0x65, 0x62, 0x73, 0x65, 0x74,
- 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c, 0x66,
- 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x70, 0x61, 0x63, 0x6b, 0x61,
- 0x67, 0x65, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2d, 0x70, 0x72, 0x6f, 0x70,
- 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x78, 0x6d, 0x6c,
- 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d, 0x70, 0x61, 0x63, 0x6b,
- 0x61, 0x67, 0x65, 0x2e, 0x64, 0x69, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x2d,
- 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2d, 0x78, 0x6d,
- 0x6c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x70, 0x65,
- 0x6e, 0x78, 0x6d, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x2d,
- 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x2e, 0x72, 0x65, 0x6c, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x73, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x71, 0x75, 0x6f, 0x62,
- 0x6a, 0x65, 0x63, 0x74, 0x2d, 0x71, 0x75, 0x6f, 0x78, 0x64, 0x6f, 0x63,
- 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6f, 0x73, 0x61, 0x2e, 0x6e, 0x65, 0x74, 0x64, 0x65, 0x70, 0x6c, 0x6f,
- 0x79, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x73, 0x67, 0x65, 0x6f, 0x2e,
- 0x6d, 0x61, 0x70, 0x67, 0x75, 0x69, 0x64, 0x65, 0x2e, 0x70, 0x61, 0x63,
- 0x6b, 0x61, 0x67, 0x65, 0x09, 0x09, 0x6d, 0x67, 0x70, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x73, 0x67, 0x69, 0x2e, 0x62, 0x75, 0x6e,
- 0x64, 0x6c, 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x73, 0x67, 0x69,
- 0x2e, 0x64, 0x70, 0x09, 0x09, 0x09, 0x09, 0x64, 0x70, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6f, 0x73, 0x67, 0x69, 0x2e, 0x73, 0x75, 0x62, 0x73, 0x79,
- 0x73, 0x74, 0x65, 0x6d, 0x09, 0x09, 0x09, 0x65, 0x73, 0x61, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x74, 0x70, 0x73, 0x2e, 0x63, 0x74,
- 0x2d, 0x6b, 0x69, 0x70, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x70, 0x61, 0x6c, 0x6d, 0x09, 0x09, 0x09, 0x09, 0x70, 0x64, 0x62,
- 0x20, 0x70, 0x71, 0x61, 0x20, 0x6f, 0x70, 0x72, 0x63, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x61, 0x6f, 0x73, 0x2e, 0x78, 0x6d, 0x6c,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x61, 0x77, 0x61, 0x61, 0x66, 0x69,
- 0x6c, 0x65, 0x09, 0x09, 0x09, 0x70, 0x61, 0x77, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x70, 0x67, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x09, 0x09,
- 0x09, 0x73, 0x74, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x67, 0x2e,
- 0x6f, 0x73, 0x61, 0x73, 0x6c, 0x69, 0x09, 0x09, 0x09, 0x65, 0x69, 0x36,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x69, 0x61, 0x63, 0x63,
- 0x65, 0x73, 0x73, 0x2e, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2d, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x63, 0x65, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x69, 0x63, 0x73, 0x65, 0x6c, 0x09, 0x09,
- 0x09, 0x09, 0x65, 0x66, 0x69, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70,
- 0x6d, 0x69, 0x2e, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74, 0x09, 0x09, 0x09,
- 0x77, 0x67, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x6f, 0x63,
- 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2d, 0x61, 0x64, 0x76, 0x65, 0x72,
- 0x74, 0x69, 0x73, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x6c,
- 0x65, 0x61, 0x72, 0x6e, 0x09, 0x09, 0x09, 0x70, 0x6c, 0x66, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x62, 0x75, 0x69, 0x6c,
- 0x64, 0x65, 0x72, 0x36, 0x09, 0x09, 0x09, 0x70, 0x62, 0x64, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x62, 0x75,
- 0x69, 0x6c, 0x64, 0x65, 0x72, 0x36, 0x2d, 0x73, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x62, 0x75, 0x69, 0x6c,
- 0x64, 0x65, 0x72, 0x37, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70,
- 0x6f, 0x77, 0x65, 0x72, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x37,
- 0x2d, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x6f, 0x77,
- 0x65, 0x72, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x37, 0x35, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x62,
- 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x37, 0x35, 0x2d, 0x73, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x6e, 0x65,
- 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x72, 0x65, 0x76, 0x69, 0x65,
- 0x77, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x62, 0x6f, 0x78,
- 0x09, 0x09, 0x62, 0x6f, 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x72,
- 0x6f, 0x74, 0x65, 0x75, 0x73, 0x2e, 0x6d, 0x61, 0x67, 0x61, 0x7a, 0x69,
- 0x6e, 0x65, 0x09, 0x09, 0x6d, 0x67, 0x7a, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2d, 0x64,
- 0x65, 0x6c, 0x74, 0x61, 0x2d, 0x74, 0x72, 0x65, 0x65, 0x09, 0x09, 0x71,
- 0x70, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x76, 0x69, 0x2e, 0x70,
- 0x74, 0x69, 0x64, 0x31, 0x09, 0x09, 0x09, 0x70, 0x74, 0x69, 0x64, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x77, 0x67, 0x2d, 0x6d, 0x75,
- 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x78, 0x65, 0x64, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x77, 0x67, 0x2d, 0x78, 0x68, 0x74, 0x6d,
- 0x6c, 0x2d, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x71, 0x75, 0x61, 0x6c, 0x63, 0x6f,
- 0x6d, 0x6d, 0x2e, 0x62, 0x72, 0x65, 0x77, 0x2d, 0x61, 0x70, 0x70, 0x2d,
- 0x72, 0x65, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x71, 0x75, 0x61, 0x72,
- 0x6b, 0x2e, 0x71, 0x75, 0x61, 0x72, 0x6b, 0x78, 0x70, 0x72, 0x65, 0x73,
- 0x73, 0x09, 0x09, 0x71, 0x78, 0x64, 0x20, 0x71, 0x78, 0x74, 0x20, 0x71,
- 0x77, 0x64, 0x20, 0x71, 0x77, 0x74, 0x20, 0x71, 0x78, 0x6c, 0x20, 0x71,
- 0x78, 0x62, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64,
- 0x69, 0x73, 0x79, 0x73, 0x2e, 0x6d, 0x6f, 0x6d, 0x6c, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64, 0x69,
- 0x73, 0x79, 0x73, 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64, 0x69, 0x73,
- 0x79, 0x73, 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2d, 0x61, 0x75, 0x64, 0x69,
- 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x72, 0x61, 0x64, 0x69, 0x73, 0x79, 0x73, 0x2e, 0x6d, 0x73, 0x6d, 0x6c,
- 0x2d, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2d, 0x63, 0x6f, 0x6e, 0x66, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61,
- 0x64, 0x69, 0x73, 0x79, 0x73, 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2d, 0x61,
- 0x75, 0x64, 0x69, 0x74, 0x2d, 0x63, 0x6f, 0x6e, 0x6e, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64, 0x69,
- 0x73, 0x79, 0x73, 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2d, 0x61, 0x75, 0x64,
- 0x69, 0x74, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64, 0x69,
- 0x73, 0x79, 0x73, 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2d, 0x61, 0x75, 0x64,
- 0x69, 0x74, 0x2d, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64, 0x69,
- 0x73, 0x79, 0x73, 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2d, 0x63, 0x6f, 0x6e,
- 0x66, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x72, 0x61, 0x64, 0x69, 0x73, 0x79, 0x73, 0x2e, 0x6d, 0x73, 0x6d, 0x6c,
- 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64, 0x69, 0x73, 0x79,
- 0x73, 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f,
- 0x67, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64, 0x69, 0x73, 0x79, 0x73,
- 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
- 0x2d, 0x66, 0x61, 0x78, 0x2d, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61,
- 0x64, 0x69, 0x73, 0x79, 0x73, 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2d, 0x64,
- 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x2d, 0x66, 0x61, 0x78, 0x2d, 0x73, 0x65,
- 0x6e, 0x64, 0x72, 0x65, 0x63, 0x76, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64, 0x69, 0x73, 0x79, 0x73,
- 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
- 0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64, 0x69, 0x73, 0x79, 0x73,
- 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
- 0x2d, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64, 0x69, 0x73, 0x79,
- 0x73, 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f,
- 0x67, 0x2d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61,
- 0x69, 0x6e, 0x73, 0x74, 0x6f, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x70, 0x69, 0x64, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x65, 0x61, 0x6c, 0x76, 0x6e, 0x63, 0x2e,
- 0x62, 0x65, 0x64, 0x09, 0x09, 0x09, 0x62, 0x65, 0x64, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x61, 0x72, 0x65, 0x2e,
- 0x6d, 0x75, 0x73, 0x69, 0x63, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x6d, 0x78,
- 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64,
- 0x61, 0x72, 0x65, 0x2e, 0x6d, 0x75, 0x73, 0x69, 0x63, 0x78, 0x6d, 0x6c,
- 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x6d, 0x75, 0x73, 0x69, 0x63, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x65, 0x6e,
- 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x2e, 0x72, 0x6c, 0x70, 0x72, 0x69, 0x6e,
- 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x69, 0x67, 0x2e, 0x63, 0x72,
- 0x79, 0x70, 0x74, 0x6f, 0x6e, 0x6f, 0x74, 0x65, 0x09, 0x09, 0x09, 0x63,
- 0x72, 0x79, 0x70, 0x74, 0x6f, 0x6e, 0x6f, 0x74, 0x65, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x72, 0x69, 0x6d, 0x2e, 0x63, 0x6f, 0x64, 0x09, 0x09, 0x09,
- 0x09, 0x63, 0x6f, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x6e, 0x2d,
- 0x72, 0x65, 0x61, 0x6c, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x09, 0x09, 0x09,
- 0x72, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x6e, 0x2d, 0x72, 0x65,
- 0x61, 0x6c, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x2d, 0x76, 0x62, 0x72, 0x09,
- 0x09, 0x72, 0x6d, 0x76, 0x62, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x6f,
- 0x75, 0x74, 0x65, 0x36, 0x36, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x36, 0x36,
- 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x6c, 0x69, 0x6e, 0x6b, 0x36, 0x36,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x73, 0x2d, 0x32, 0x37,
- 0x34, 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x75, 0x63,
- 0x6b, 0x75, 0x73, 0x2e, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x33, 0x73, 0x6d, 0x73,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x61, 0x69, 0x6c, 0x69, 0x6e, 0x67,
- 0x74, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x2e, 0x74, 0x72, 0x61, 0x63,
- 0x6b, 0x09, 0x09, 0x73, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x73, 0x62, 0x6d, 0x2e, 0x63, 0x69, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x73, 0x62, 0x6d, 0x2e, 0x6d, 0x69, 0x64, 0x32, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x63, 0x72, 0x69, 0x62, 0x75, 0x73,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x65, 0x61, 0x6c, 0x65,
- 0x64, 0x2e, 0x33, 0x64, 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x2e, 0x63, 0x73, 0x66, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x2e,
- 0x64, 0x6f, 0x63, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x65,
- 0x61, 0x6c, 0x65, 0x64, 0x2e, 0x65, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x2e, 0x6d, 0x68,
- 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x65, 0x61, 0x6c,
- 0x65, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x2e, 0x70, 0x70, 0x74, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64,
- 0x2e, 0x74, 0x69, 0x66, 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x2e, 0x78, 0x6c, 0x73, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x6d,
- 0x65, 0x64, 0x69, 0x61, 0x2e, 0x73, 0x6f, 0x66, 0x74, 0x73, 0x65, 0x61,
- 0x6c, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x6d, 0x65, 0x64, 0x69, 0x61,
- 0x2e, 0x73, 0x6f, 0x66, 0x74, 0x73, 0x65, 0x61, 0x6c, 0x2e, 0x70, 0x64,
- 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x65, 0x65, 0x6d, 0x61, 0x69,
- 0x6c, 0x09, 0x09, 0x09, 0x09, 0x73, 0x65, 0x65, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x73, 0x65, 0x6d, 0x61, 0x09, 0x09, 0x09, 0x09, 0x73, 0x65, 0x6d,
- 0x61, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x65, 0x6d, 0x64, 0x09, 0x09,
- 0x09, 0x09, 0x73, 0x65, 0x6d, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73,
- 0x65, 0x6d, 0x66, 0x09, 0x09, 0x09, 0x09, 0x73, 0x65, 0x6d, 0x66, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x68, 0x61, 0x6e, 0x61, 0x2e, 0x69, 0x6e,
- 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x64,
- 0x61, 0x74, 0x61, 0x09, 0x09, 0x69, 0x66, 0x6d, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x73, 0x68, 0x61, 0x6e, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6f, 0x72,
- 0x6d, 0x65, 0x64, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x74, 0x65, 0x6d, 0x70,
- 0x6c, 0x61, 0x74, 0x65, 0x09, 0x69, 0x74, 0x70, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x73, 0x68, 0x61, 0x6e, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6f, 0x72,
- 0x6d, 0x65, 0x64, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x68, 0x61,
- 0x6e, 0x67, 0x65, 0x09, 0x69, 0x69, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x73, 0x68, 0x61, 0x6e, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d,
- 0x65, 0x64, 0x2e, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x09, 0x09,
- 0x69, 0x70, 0x6b, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x69, 0x6d, 0x74,
- 0x65, 0x63, 0x68, 0x2d, 0x6d, 0x69, 0x6e, 0x64, 0x6d, 0x61, 0x70, 0x70,
- 0x65, 0x72, 0x09, 0x09, 0x74, 0x77, 0x64, 0x20, 0x74, 0x77, 0x64, 0x73,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x6d, 0x61, 0x66, 0x09, 0x09, 0x09,
- 0x09, 0x6d, 0x6d, 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73,
- 0x6d, 0x61, 0x72, 0x74, 0x2e, 0x6e, 0x6f, 0x74, 0x65, 0x62, 0x6f, 0x6f,
- 0x6b, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x6d, 0x61, 0x72, 0x74, 0x2e,
- 0x74, 0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x09, 0x09, 0x09, 0x74, 0x65,
- 0x61, 0x63, 0x68, 0x65, 0x72, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x73, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x36, 0x30, 0x32, 0x2e,
- 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x6f,
- 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x36, 0x30, 0x32, 0x2e, 0x66, 0x69,
- 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x2d, 0x78, 0x6d,
- 0x6c, 0x2d, 0x7a, 0x69, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x6f,
- 0x6c, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x64, 0x6b, 0x6d, 0x2b, 0x78, 0x6d,
- 0x6c, 0x09, 0x09, 0x09, 0x73, 0x64, 0x6b, 0x6d, 0x20, 0x73, 0x64, 0x6b,
- 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x66, 0x69,
- 0x72, 0x65, 0x2e, 0x64, 0x78, 0x70, 0x09, 0x09, 0x09, 0x64, 0x78, 0x70,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x66, 0x69, 0x72,
- 0x65, 0x2e, 0x73, 0x66, 0x73, 0x09, 0x09, 0x09, 0x73, 0x66, 0x73, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x73, 0x73, 0x2d, 0x63, 0x6f,
- 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x73, 0x73, 0x2d,
- 0x64, 0x74, 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x73,
- 0x73, 0x2d, 0x6e, 0x74, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x74,
- 0x61, 0x72, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x63,
- 0x61, 0x6c, 0x63, 0x09, 0x09, 0x73, 0x64, 0x63, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x73, 0x74, 0x61, 0x72, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f,
- 0x6e, 0x2e, 0x64, 0x72, 0x61, 0x77, 0x09, 0x09, 0x73, 0x64, 0x61, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x74, 0x61, 0x72, 0x64, 0x69, 0x76, 0x69,
- 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x69, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73,
- 0x09, 0x09, 0x73, 0x64, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x74,
- 0x61, 0x72, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x6d,
- 0x61, 0x74, 0x68, 0x09, 0x09, 0x73, 0x6d, 0x66, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x73, 0x74, 0x61, 0x72, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f,
- 0x6e, 0x2e, 0x77, 0x72, 0x69, 0x74, 0x65, 0x72, 0x09, 0x09, 0x73, 0x64,
- 0x77, 0x20, 0x76, 0x6f, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x74,
- 0x61, 0x72, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x77,
- 0x72, 0x69, 0x74, 0x65, 0x72, 0x2d, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c,
- 0x09, 0x73, 0x67, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x74, 0x65,
- 0x70, 0x6d, 0x61, 0x6e, 0x69, 0x61, 0x2e, 0x70, 0x61, 0x63, 0x6b, 0x61,
- 0x67, 0x65, 0x09, 0x09, 0x73, 0x6d, 0x7a, 0x69, 0x70, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x73, 0x74, 0x65, 0x70, 0x6d, 0x61, 0x6e, 0x69, 0x61, 0x2e,
- 0x73, 0x74, 0x65, 0x70, 0x63, 0x68, 0x61, 0x72, 0x74, 0x09, 0x09, 0x73,
- 0x6d, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x74, 0x72, 0x65,
- 0x65, 0x74, 0x2d, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x73, 0x75, 0x6e, 0x2e, 0x78, 0x6d, 0x6c, 0x2e, 0x63, 0x61,
- 0x6c, 0x63, 0x09, 0x09, 0x09, 0x73, 0x78, 0x63, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x73, 0x75, 0x6e, 0x2e, 0x78, 0x6d, 0x6c, 0x2e, 0x63, 0x61, 0x6c,
- 0x63, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x09, 0x09,
- 0x73, 0x74, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x75, 0x6e, 0x2e,
- 0x78, 0x6d, 0x6c, 0x2e, 0x64, 0x72, 0x61, 0x77, 0x09, 0x09, 0x09, 0x73,
- 0x78, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x75, 0x6e, 0x2e, 0x78,
- 0x6d, 0x6c, 0x2e, 0x64, 0x72, 0x61, 0x77, 0x2e, 0x74, 0x65, 0x6d, 0x70,
- 0x6c, 0x61, 0x74, 0x65, 0x09, 0x09, 0x73, 0x74, 0x64, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x73, 0x75, 0x6e, 0x2e, 0x78, 0x6d, 0x6c, 0x2e, 0x69, 0x6d,
- 0x70, 0x72, 0x65, 0x73, 0x73, 0x09, 0x09, 0x09, 0x73, 0x78, 0x69, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x75, 0x6e, 0x2e, 0x78, 0x6d, 0x6c, 0x2e,
- 0x69, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x74, 0x65, 0x6d, 0x70,
- 0x6c, 0x61, 0x74, 0x65, 0x09, 0x73, 0x74, 0x69, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x73, 0x75, 0x6e, 0x2e, 0x78, 0x6d, 0x6c, 0x2e, 0x6d, 0x61, 0x74,
- 0x68, 0x09, 0x09, 0x09, 0x73, 0x78, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x73, 0x75, 0x6e, 0x2e, 0x78, 0x6d, 0x6c, 0x2e, 0x77, 0x72, 0x69, 0x74,
- 0x65, 0x72, 0x09, 0x09, 0x09, 0x73, 0x78, 0x77, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x73, 0x75, 0x6e, 0x2e, 0x78, 0x6d, 0x6c, 0x2e, 0x77, 0x72, 0x69,
- 0x74, 0x65, 0x72, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x09, 0x09,
- 0x73, 0x78, 0x67, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x75, 0x6e, 0x2e,
- 0x78, 0x6d, 0x6c, 0x2e, 0x77, 0x72, 0x69, 0x74, 0x65, 0x72, 0x2e, 0x74,
- 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x09, 0x09, 0x73, 0x74, 0x77,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x75, 0x6e, 0x2e, 0x77,
- 0x61, 0x64, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x73, 0x75, 0x73, 0x2d, 0x63, 0x61, 0x6c, 0x65, 0x6e, 0x64, 0x61, 0x72,
- 0x09, 0x09, 0x09, 0x73, 0x75, 0x73, 0x20, 0x73, 0x75, 0x73, 0x70, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x76, 0x64, 0x09, 0x09, 0x09, 0x09, 0x73,
- 0x76, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x77, 0x69,
- 0x66, 0x74, 0x76, 0x69, 0x65, 0x77, 0x2d, 0x69, 0x63, 0x73, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x73, 0x79, 0x6d, 0x62, 0x69, 0x61, 0x6e, 0x2e, 0x69,
- 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x09, 0x09, 0x09, 0x73, 0x69, 0x73,
- 0x20, 0x73, 0x69, 0x73, 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x79,
- 0x6e, 0x63, 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x78,
- 0x73, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x79, 0x6e, 0x63, 0x6d,
- 0x6c, 0x2e, 0x64, 0x6d, 0x2b, 0x77, 0x62, 0x78, 0x6d, 0x6c, 0x09, 0x09,
- 0x09, 0x62, 0x64, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x79, 0x6e,
- 0x63, 0x6d, 0x6c, 0x2e, 0x64, 0x6d, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09,
- 0x09, 0x78, 0x64, 0x6d, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73,
- 0x79, 0x6e, 0x63, 0x6d, 0x6c, 0x2e, 0x64, 0x6d, 0x2e, 0x6e, 0x6f, 0x74,
- 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x79, 0x6e, 0x63, 0x6d, 0x6c, 0x2e, 0x64,
- 0x73, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x74, 0x61, 0x6f, 0x2e, 0x69,
- 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65,
- 0x2d, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x09, 0x74, 0x61, 0x6f,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x74, 0x63, 0x70, 0x64, 0x75, 0x6d, 0x70,
- 0x2e, 0x70, 0x63, 0x61, 0x70, 0x09, 0x09, 0x09, 0x70, 0x63, 0x61, 0x70,
- 0x20, 0x63, 0x61, 0x70, 0x20, 0x64, 0x6d, 0x70, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x74, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x2d, 0x6c, 0x69, 0x76,
- 0x65, 0x74, 0x76, 0x09, 0x09, 0x09, 0x74, 0x6d, 0x6f, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x74, 0x72, 0x69, 0x64, 0x2e, 0x74, 0x70, 0x74, 0x09, 0x09,
- 0x09, 0x74, 0x70, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x74, 0x72, 0x69,
- 0x73, 0x63, 0x61, 0x70, 0x65, 0x2e, 0x6d, 0x78, 0x73, 0x09, 0x09, 0x09,
- 0x6d, 0x78, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x74, 0x72, 0x75, 0x65,
- 0x61, 0x70, 0x70, 0x09, 0x09, 0x09, 0x09, 0x74, 0x72, 0x61, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x74, 0x72, 0x75, 0x65, 0x64, 0x6f, 0x63,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x75, 0x62, 0x69, 0x73, 0x6f,
- 0x66, 0x74, 0x2e, 0x77, 0x65, 0x62, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x75, 0x66, 0x64, 0x6c, 0x09, 0x09, 0x09,
- 0x09, 0x75, 0x66, 0x64, 0x20, 0x75, 0x66, 0x64, 0x6c, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x75, 0x69, 0x71, 0x2e, 0x74, 0x68, 0x65, 0x6d, 0x65, 0x09,
- 0x09, 0x09, 0x75, 0x74, 0x7a, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x75, 0x6d,
- 0x61, 0x6a, 0x69, 0x6e, 0x09, 0x09, 0x09, 0x09, 0x75, 0x6d, 0x6a, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x09, 0x09, 0x09,
- 0x09, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x77, 0x65, 0x62, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x75, 0x6f, 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09,
- 0x09, 0x75, 0x6f, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x75, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x61, 0x6c, 0x65, 0x72,
- 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x75, 0x70, 0x6c, 0x61,
- 0x6e, 0x65, 0x74, 0x2e, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x2d, 0x77, 0x62,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x75, 0x70,
- 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x62, 0x65, 0x61, 0x72, 0x65, 0x72,
- 0x2d, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x75, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x62, 0x65,
- 0x61, 0x72, 0x65, 0x72, 0x2d, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x2d,
- 0x77, 0x62, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x75, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x63, 0x61, 0x63, 0x68,
- 0x65, 0x6f, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x75, 0x70,
- 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x6f,
- 0x70, 0x2d, 0x77, 0x62, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x75, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x63, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x75, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x63, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x2d, 0x77, 0x62, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x75, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e,
- 0x6c, 0x69, 0x73, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x75,
- 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x2d,
- 0x77, 0x62, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x75, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x6c, 0x69, 0x73, 0x74,
- 0x63, 0x6d, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x75, 0x70,
- 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x63, 0x6d,
- 0x64, 0x2d, 0x77, 0x62, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x75, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x73, 0x69,
- 0x67, 0x6e, 0x61, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x76, 0x63, 0x78,
- 0x09, 0x09, 0x09, 0x09, 0x76, 0x63, 0x78, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x76, 0x64, 0x2d, 0x73, 0x74, 0x75, 0x64, 0x79, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x77,
- 0x6f, 0x72, 0x6b, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x76,
- 0x65, 0x72, 0x69, 0x6d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x2e, 0x76, 0x63,
- 0x61, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x76, 0x69, 0x64,
- 0x73, 0x6f, 0x66, 0x74, 0x2e, 0x76, 0x69, 0x64, 0x63, 0x6f, 0x6e, 0x66,
- 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x76,
- 0x69, 0x73, 0x69, 0x6f, 0x09, 0x09, 0x09, 0x09, 0x76, 0x73, 0x64, 0x20,
- 0x76, 0x73, 0x74, 0x20, 0x76, 0x73, 0x73, 0x20, 0x76, 0x73, 0x77, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x72,
- 0x79, 0x09, 0x09, 0x09, 0x76, 0x69, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x76, 0x69, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x2e,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x76, 0x73, 0x66, 0x09, 0x09, 0x09, 0x09, 0x76, 0x73,
- 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x61, 0x70, 0x2e,
- 0x73, 0x69, 0x63, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x61,
- 0x70, 0x2e, 0x73, 0x6c, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x61,
- 0x70, 0x2e, 0x77, 0x62, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x77, 0x62,
- 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x61, 0x70, 0x2e,
- 0x77, 0x6d, 0x6c, 0x63, 0x09, 0x09, 0x09, 0x77, 0x6d, 0x6c, 0x63, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x61, 0x70, 0x2e, 0x77, 0x6d, 0x6c, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x63, 0x09, 0x09, 0x09, 0x77, 0x6d, 0x6c,
- 0x73, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x65, 0x62, 0x74, 0x75,
- 0x72, 0x62, 0x6f, 0x09, 0x09, 0x09, 0x77, 0x74, 0x62, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x66, 0x61, 0x2e, 0x77, 0x73, 0x63, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x6d, 0x63, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x6d, 0x66, 0x2e, 0x62, 0x6f, 0x6f, 0x74,
- 0x73, 0x74, 0x72, 0x61, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x77, 0x6f, 0x6c, 0x66, 0x72, 0x61, 0x6d, 0x2e, 0x6d, 0x61, 0x74, 0x68,
- 0x65, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x77, 0x6f, 0x6c, 0x66, 0x72, 0x61, 0x6d, 0x2e, 0x6d, 0x61,
- 0x74, 0x68, 0x65, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x70, 0x61,
- 0x63, 0x6b, 0x61, 0x67, 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x6f,
- 0x6c, 0x66, 0x72, 0x61, 0x6d, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72,
- 0x09, 0x09, 0x09, 0x6e, 0x62, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77,
- 0x6f, 0x72, 0x64, 0x70, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x09, 0x09,
- 0x09, 0x77, 0x70, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x71, 0x64,
- 0x09, 0x09, 0x09, 0x09, 0x77, 0x71, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x77, 0x72, 0x71, 0x2d, 0x68, 0x70, 0x33, 0x30, 0x30, 0x30,
- 0x2d, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x6c, 0x65, 0x64, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x77, 0x74, 0x2e, 0x73, 0x74, 0x66, 0x09, 0x09, 0x09, 0x09,
- 0x73, 0x74, 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x76,
- 0x2e, 0x63, 0x73, 0x70, 0x2b, 0x77, 0x62, 0x78, 0x6d, 0x6c, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x76, 0x2e, 0x63, 0x73, 0x70, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x76,
- 0x2e, 0x73, 0x73, 0x70, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x78, 0x61, 0x72, 0x61, 0x09, 0x09, 0x09, 0x09, 0x78, 0x61, 0x72,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x78, 0x66, 0x64, 0x6c, 0x09, 0x09, 0x09,
- 0x09, 0x78, 0x66, 0x64, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x78, 0x66, 0x64, 0x6c, 0x2e, 0x77, 0x65, 0x62, 0x66, 0x6f, 0x72, 0x6d,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x78, 0x6d, 0x69, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x78, 0x6d, 0x70,
- 0x69, 0x65, 0x2e, 0x63, 0x70, 0x6b, 0x67, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x78, 0x6d, 0x70, 0x69, 0x65, 0x2e, 0x64, 0x70, 0x6b, 0x67,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x78, 0x6d, 0x70, 0x69, 0x65,
- 0x2e, 0x70, 0x6c, 0x61, 0x6e, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x78, 0x6d, 0x70, 0x69, 0x65, 0x2e, 0x70, 0x70, 0x6b, 0x67, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x78, 0x6d, 0x70, 0x69, 0x65, 0x2e, 0x78,
- 0x6c, 0x69, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x79, 0x61, 0x6d, 0x61,
- 0x68, 0x61, 0x2e, 0x68, 0x76, 0x2d, 0x64, 0x69, 0x63, 0x09, 0x09, 0x09,
- 0x68, 0x76, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x79, 0x61, 0x6d, 0x61,
- 0x68, 0x61, 0x2e, 0x68, 0x76, 0x2d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x09, 0x09, 0x68, 0x76, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x79, 0x61,
- 0x6d, 0x61, 0x68, 0x61, 0x2e, 0x68, 0x76, 0x2d, 0x76, 0x6f, 0x69, 0x63,
- 0x65, 0x09, 0x09, 0x09, 0x68, 0x76, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x79, 0x61, 0x6d, 0x61, 0x68, 0x61, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
- 0x63, 0x6f, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x09, 0x09,
- 0x09, 0x6f, 0x73, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x79, 0x61, 0x6d,
- 0x61, 0x68, 0x61, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x63, 0x6f, 0x72,
- 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x6f, 0x73, 0x66, 0x70,
- 0x76, 0x67, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x6f, 0x73, 0x66, 0x70, 0x76,
- 0x67, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x79, 0x61, 0x6d, 0x61,
- 0x68, 0x61, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2d, 0x73, 0x65,
- 0x74, 0x75, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x79, 0x61, 0x6d, 0x61,
- 0x68, 0x61, 0x2e, 0x73, 0x6d, 0x61, 0x66, 0x2d, 0x61, 0x75, 0x64, 0x69,
- 0x6f, 0x09, 0x09, 0x73, 0x61, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x79,
- 0x61, 0x6d, 0x61, 0x68, 0x61, 0x2e, 0x73, 0x6d, 0x61, 0x66, 0x2d, 0x70,
- 0x68, 0x72, 0x61, 0x73, 0x65, 0x09, 0x09, 0x73, 0x70, 0x66, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x79, 0x61, 0x6d, 0x61, 0x68, 0x61, 0x2e,
- 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x2d, 0x6e, 0x67, 0x6e, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x79, 0x61, 0x6d, 0x61, 0x68, 0x61,
- 0x2e, 0x74, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x2d, 0x75, 0x64, 0x70, 0x65,
- 0x6e, 0x63, 0x61, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x79, 0x65, 0x6c,
- 0x6c, 0x6f, 0x77, 0x72, 0x69, 0x76, 0x65, 0x72, 0x2d, 0x63, 0x75, 0x73,
- 0x74, 0x6f, 0x6d, 0x2d, 0x6d, 0x65, 0x6e, 0x75, 0x09, 0x09, 0x63, 0x6d,
- 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x7a, 0x75, 0x6c, 0x09, 0x09, 0x09,
- 0x09, 0x7a, 0x69, 0x72, 0x20, 0x7a, 0x69, 0x72, 0x7a, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x7a, 0x7a, 0x61, 0x7a, 0x7a, 0x2e, 0x64, 0x65, 0x63, 0x6b,
- 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x7a, 0x61, 0x7a, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76,
- 0x6f, 0x69, 0x63, 0x65, 0x78, 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09,
- 0x09, 0x09, 0x76, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x71, 0x2d,
- 0x72, 0x74, 0x63, 0x70, 0x78, 0x72, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x77, 0x61, 0x74,
- 0x63, 0x68, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x77, 0x68, 0x6f, 0x69, 0x73, 0x70, 0x70, 0x2d, 0x71,
- 0x75, 0x65, 0x72, 0x79, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x77, 0x68, 0x6f, 0x69, 0x73,
- 0x70, 0x70, 0x2d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x77, 0x69, 0x64, 0x67, 0x65, 0x74, 0x09, 0x09, 0x09, 0x09, 0x77, 0x67,
- 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x77, 0x69, 0x6e, 0x68, 0x6c, 0x70, 0x09, 0x09, 0x09, 0x09,
- 0x68, 0x6c, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x77, 0x69, 0x74, 0x61, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x77, 0x6f, 0x72, 0x64, 0x70, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74,
- 0x35, 0x2e, 0x31, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x77, 0x73, 0x64, 0x6c, 0x2b, 0x78, 0x6d, 0x6c,
- 0x09, 0x09, 0x09, 0x09, 0x77, 0x73, 0x64, 0x6c, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x77, 0x73, 0x70,
- 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09,
- 0x77, 0x73, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x37,
- 0x7a, 0x2d, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64,
- 0x09, 0x09, 0x09, 0x37, 0x7a, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x61, 0x62, 0x69, 0x77,
- 0x6f, 0x72, 0x64, 0x09, 0x09, 0x09, 0x09, 0x61, 0x62, 0x77, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x2d, 0x61, 0x63, 0x65, 0x2d, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73,
- 0x73, 0x65, 0x64, 0x09, 0x09, 0x09, 0x61, 0x63, 0x65, 0x0a, 0x23, 0x20,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x78, 0x2d, 0x61, 0x6d, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x61, 0x70, 0x70, 0x6c,
- 0x65, 0x2d, 0x64, 0x69, 0x73, 0x6b, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x09,
- 0x09, 0x09, 0x64, 0x6d, 0x67, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x61, 0x75, 0x74, 0x68,
- 0x6f, 0x72, 0x77, 0x61, 0x72, 0x65, 0x2d, 0x62, 0x69, 0x6e, 0x09, 0x09,
- 0x09, 0x61, 0x61, 0x62, 0x20, 0x78, 0x33, 0x32, 0x20, 0x75, 0x33, 0x32,
- 0x20, 0x76, 0x6f, 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x61, 0x75, 0x74, 0x68, 0x6f,
- 0x72, 0x77, 0x61, 0x72, 0x65, 0x2d, 0x6d, 0x61, 0x70, 0x09, 0x09, 0x09,
- 0x61, 0x61, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72,
- 0x77, 0x61, 0x72, 0x65, 0x2d, 0x73, 0x65, 0x67, 0x09, 0x09, 0x09, 0x61,
- 0x61, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x62, 0x63, 0x70, 0x69, 0x6f, 0x09, 0x09,
- 0x09, 0x09, 0x62, 0x63, 0x70, 0x69, 0x6f, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x62, 0x69,
- 0x74, 0x74, 0x6f, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x09, 0x09, 0x09, 0x74,
- 0x6f, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x62, 0x6c, 0x6f,
- 0x72, 0x62, 0x09, 0x09, 0x09, 0x09, 0x62, 0x6c, 0x62, 0x20, 0x62, 0x6c,
- 0x6f, 0x72, 0x62, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x62, 0x7a, 0x69, 0x70, 0x09, 0x09,
- 0x09, 0x09, 0x62, 0x7a, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x62, 0x7a, 0x69, 0x70, 0x32,
- 0x09, 0x09, 0x09, 0x09, 0x62, 0x7a, 0x32, 0x20, 0x62, 0x6f, 0x7a, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x78, 0x2d, 0x63, 0x62, 0x72, 0x09, 0x09, 0x09, 0x09, 0x63, 0x62, 0x72,
- 0x20, 0x63, 0x62, 0x61, 0x20, 0x63, 0x62, 0x74, 0x20, 0x63, 0x62, 0x7a,
- 0x20, 0x63, 0x62, 0x37, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x63, 0x64, 0x6c, 0x69, 0x6e,
- 0x6b, 0x09, 0x09, 0x09, 0x09, 0x76, 0x63, 0x64, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x63,
- 0x66, 0x73, 0x2d, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65,
- 0x64, 0x09, 0x09, 0x09, 0x63, 0x66, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x63, 0x68,
- 0x61, 0x74, 0x09, 0x09, 0x09, 0x09, 0x63, 0x68, 0x61, 0x74, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x2d, 0x63, 0x68, 0x65, 0x73, 0x73, 0x2d, 0x70, 0x67, 0x6e, 0x09, 0x09,
- 0x09, 0x09, 0x70, 0x67, 0x6e, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x63, 0x6f, 0x6e, 0x66,
- 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x09, 0x09, 0x09, 0x6e, 0x73, 0x63,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73,
- 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x63, 0x70, 0x69, 0x6f, 0x09, 0x09, 0x09, 0x09,
- 0x63, 0x70, 0x69, 0x6f, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x63, 0x73, 0x68, 0x09, 0x09,
- 0x09, 0x09, 0x63, 0x73, 0x68, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x64, 0x65, 0x62, 0x69,
- 0x61, 0x6e, 0x2d, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x09, 0x09,
- 0x09, 0x64, 0x65, 0x62, 0x20, 0x75, 0x64, 0x65, 0x62, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d,
- 0x64, 0x67, 0x63, 0x2d, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73,
- 0x65, 0x64, 0x09, 0x09, 0x09, 0x64, 0x67, 0x63, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x64,
- 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x09, 0x09, 0x09, 0x64, 0x69,
- 0x72, 0x20, 0x64, 0x63, 0x72, 0x20, 0x64, 0x78, 0x72, 0x20, 0x63, 0x73,
- 0x74, 0x20, 0x63, 0x63, 0x74, 0x20, 0x63, 0x78, 0x74, 0x20, 0x77, 0x33,
- 0x64, 0x20, 0x66, 0x67, 0x64, 0x20, 0x73, 0x77, 0x61, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d,
- 0x64, 0x6f, 0x6f, 0x6d, 0x09, 0x09, 0x09, 0x09, 0x77, 0x61, 0x64, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x78, 0x2d, 0x64, 0x74, 0x62, 0x6e, 0x63, 0x78, 0x2b, 0x78, 0x6d, 0x6c,
- 0x09, 0x09, 0x09, 0x6e, 0x63, 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x64, 0x74, 0x62,
- 0x6f, 0x6f, 0x6b, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x64, 0x74,
- 0x62, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x64, 0x74, 0x62, 0x72, 0x65, 0x73, 0x6f, 0x75,
- 0x72, 0x63, 0x65, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x72, 0x65,
- 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x64, 0x76, 0x69, 0x09, 0x09, 0x09, 0x09, 0x64,
- 0x76, 0x69, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x09, 0x09,
- 0x09, 0x09, 0x65, 0x76, 0x79, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x65, 0x76, 0x61, 0x09,
- 0x09, 0x09, 0x09, 0x65, 0x76, 0x61, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x66, 0x6f, 0x6e,
- 0x74, 0x2d, 0x62, 0x64, 0x66, 0x09, 0x09, 0x09, 0x09, 0x62, 0x64, 0x66,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x64, 0x6f,
- 0x73, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66,
- 0x72, 0x61, 0x6d, 0x65, 0x6d, 0x61, 0x6b, 0x65, 0x72, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d,
- 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x67, 0x68, 0x6f, 0x73, 0x74, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x09, 0x09, 0x09, 0x67, 0x73, 0x66, 0x0a, 0x23,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x78, 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x6c, 0x69, 0x62, 0x67,
- 0x72, 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x6c, 0x69,
- 0x6e, 0x75, 0x78, 0x2d, 0x70, 0x73, 0x66, 0x09, 0x09, 0x09, 0x70, 0x73,
- 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x6f, 0x74, 0x66,
- 0x09, 0x09, 0x09, 0x09, 0x6f, 0x74, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x66, 0x6f,
- 0x6e, 0x74, 0x2d, 0x70, 0x63, 0x66, 0x09, 0x09, 0x09, 0x09, 0x70, 0x63,
- 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x6e, 0x66,
- 0x09, 0x09, 0x09, 0x09, 0x73, 0x6e, 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d,
- 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x70, 0x65, 0x65, 0x64, 0x6f, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x75, 0x6e,
- 0x6f, 0x73, 0x2d, 0x6e, 0x65, 0x77, 0x73, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x66, 0x6f,
- 0x6e, 0x74, 0x2d, 0x74, 0x74, 0x66, 0x09, 0x09, 0x09, 0x09, 0x74, 0x74,
- 0x66, 0x20, 0x74, 0x74, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x66, 0x6f, 0x6e, 0x74,
- 0x2d, 0x74, 0x79, 0x70, 0x65, 0x31, 0x09, 0x09, 0x09, 0x70, 0x66, 0x61,
- 0x20, 0x70, 0x66, 0x62, 0x20, 0x70, 0x66, 0x6d, 0x20, 0x61, 0x66, 0x6d,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x77, 0x6f, 0x66, 0x66, 0x09, 0x09,
- 0x09, 0x09, 0x77, 0x6f, 0x66, 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x66,
- 0x6f, 0x6e, 0x74, 0x2d, 0x76, 0x66, 0x6f, 0x6e, 0x74, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d,
- 0x66, 0x72, 0x65, 0x65, 0x61, 0x72, 0x63, 0x09, 0x09, 0x09, 0x09, 0x61,
- 0x72, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x66, 0x75, 0x74, 0x75, 0x72, 0x65, 0x73,
- 0x70, 0x6c, 0x61, 0x73, 0x68, 0x09, 0x09, 0x09, 0x73, 0x70, 0x6c, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x78, 0x2d, 0x67, 0x63, 0x61, 0x2d, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65,
- 0x73, 0x73, 0x65, 0x64, 0x09, 0x09, 0x09, 0x67, 0x63, 0x61, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x2d, 0x67, 0x6c, 0x75, 0x6c, 0x78, 0x09, 0x09, 0x09, 0x09, 0x75, 0x6c,
- 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x67, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63,
- 0x09, 0x09, 0x09, 0x09, 0x67, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x78, 0x2d, 0x67, 0x72, 0x61, 0x6d, 0x70, 0x73, 0x2d, 0x78, 0x6d,
- 0x6c, 0x09, 0x09, 0x09, 0x67, 0x72, 0x61, 0x6d, 0x70, 0x73, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x2d, 0x67, 0x74, 0x61, 0x72, 0x09, 0x09, 0x09, 0x09, 0x67, 0x74, 0x61,
- 0x72, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x67, 0x7a, 0x69, 0x70, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x2d, 0x68, 0x64, 0x66, 0x09, 0x09, 0x09, 0x09, 0x68, 0x64, 0x66, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x78, 0x2d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x2d, 0x69, 0x6e,
- 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x09, 0x09,
- 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x69, 0x73,
- 0x6f, 0x39, 0x36, 0x36, 0x30, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x09,
- 0x09, 0x09, 0x69, 0x73, 0x6f, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6a, 0x61, 0x76, 0x61,
- 0x2d, 0x6a, 0x6e, 0x6c, 0x70, 0x2d, 0x66, 0x69, 0x6c, 0x65, 0x09, 0x09,
- 0x09, 0x6a, 0x6e, 0x6c, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6c, 0x61, 0x74, 0x65,
- 0x78, 0x09, 0x09, 0x09, 0x09, 0x6c, 0x61, 0x74, 0x65, 0x78, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x2d, 0x6c, 0x7a, 0x68, 0x2d, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73,
- 0x73, 0x65, 0x64, 0x09, 0x09, 0x09, 0x6c, 0x7a, 0x68, 0x20, 0x6c, 0x68,
- 0x61, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x6d, 0x69, 0x65, 0x09, 0x09, 0x09, 0x09, 0x6d,
- 0x69, 0x65, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6d, 0x6f, 0x62, 0x69, 0x70, 0x6f, 0x63,
- 0x6b, 0x65, 0x74, 0x2d, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x09, 0x09, 0x09,
- 0x70, 0x72, 0x63, 0x20, 0x6d, 0x6f, 0x62, 0x69, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6d,
- 0x73, 0x2d, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x09, 0x09, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6d, 0x73, 0x2d, 0x73, 0x68, 0x6f,
- 0x72, 0x74, 0x63, 0x75, 0x74, 0x09, 0x09, 0x09, 0x6c, 0x6e, 0x6b, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x78, 0x2d, 0x6d, 0x73, 0x2d, 0x77, 0x6d, 0x64, 0x09, 0x09, 0x09, 0x09,
- 0x77, 0x6d, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6d, 0x73, 0x2d, 0x77, 0x6d, 0x7a,
- 0x09, 0x09, 0x09, 0x09, 0x77, 0x6d, 0x7a, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6d, 0x73,
- 0x2d, 0x78, 0x62, 0x61, 0x70, 0x09, 0x09, 0x09, 0x09, 0x78, 0x62, 0x61,
- 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x6d, 0x73, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73,
- 0x09, 0x09, 0x09, 0x09, 0x6d, 0x64, 0x62, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6d, 0x73,
- 0x62, 0x69, 0x6e, 0x64, 0x65, 0x72, 0x09, 0x09, 0x09, 0x09, 0x6f, 0x62,
- 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x6d, 0x73, 0x63, 0x61, 0x72, 0x64, 0x66, 0x69,
- 0x6c, 0x65, 0x09, 0x09, 0x09, 0x63, 0x72, 0x64, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6d,
- 0x73, 0x63, 0x6c, 0x69, 0x70, 0x09, 0x09, 0x09, 0x09, 0x63, 0x6c, 0x70,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x78, 0x2d, 0x6d, 0x73, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61,
- 0x64, 0x09, 0x09, 0x09, 0x65, 0x78, 0x65, 0x20, 0x64, 0x6c, 0x6c, 0x20,
- 0x63, 0x6f, 0x6d, 0x20, 0x62, 0x61, 0x74, 0x20, 0x6d, 0x73, 0x69, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x78, 0x2d, 0x6d, 0x73, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x76, 0x69, 0x65,
- 0x77, 0x09, 0x09, 0x09, 0x6d, 0x76, 0x62, 0x20, 0x6d, 0x31, 0x33, 0x20,
- 0x6d, 0x31, 0x34, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6d, 0x73, 0x6d, 0x65, 0x74, 0x61,
- 0x66, 0x69, 0x6c, 0x65, 0x09, 0x09, 0x09, 0x77, 0x6d, 0x66, 0x20, 0x77,
- 0x6d, 0x7a, 0x20, 0x65, 0x6d, 0x66, 0x20, 0x65, 0x6d, 0x7a, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x2d, 0x6d, 0x73, 0x6d, 0x6f, 0x6e, 0x65, 0x79, 0x09, 0x09, 0x09, 0x09,
- 0x6d, 0x6e, 0x79, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6d, 0x73, 0x70, 0x75, 0x62, 0x6c,
- 0x69, 0x73, 0x68, 0x65, 0x72, 0x09, 0x09, 0x09, 0x70, 0x75, 0x62, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x78, 0x2d, 0x6d, 0x73, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65,
- 0x09, 0x09, 0x09, 0x73, 0x63, 0x64, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6d, 0x73, 0x74,
- 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x09, 0x09, 0x09, 0x74, 0x72,
- 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x6d, 0x73, 0x77, 0x72, 0x69, 0x74, 0x65, 0x09,
- 0x09, 0x09, 0x09, 0x77, 0x72, 0x69, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x6e, 0x65, 0x74,
- 0x63, 0x64, 0x66, 0x09, 0x09, 0x09, 0x09, 0x6e, 0x63, 0x20, 0x63, 0x64,
- 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x6e, 0x7a, 0x62, 0x09, 0x09, 0x09, 0x09, 0x6e,
- 0x7a, 0x62, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x70, 0x6b, 0x63, 0x73, 0x31, 0x32, 0x09,
- 0x09, 0x09, 0x09, 0x70, 0x31, 0x32, 0x20, 0x70, 0x66, 0x78, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x2d, 0x70, 0x6b, 0x63, 0x73, 0x37, 0x2d, 0x63, 0x65, 0x72, 0x74, 0x69,
- 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x09, 0x09, 0x70, 0x37, 0x62,
- 0x20, 0x73, 0x70, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x70, 0x6b, 0x63, 0x73, 0x37,
- 0x2d, 0x63, 0x65, 0x72, 0x74, 0x72, 0x65, 0x71, 0x72, 0x65, 0x73, 0x70,
- 0x09, 0x09, 0x09, 0x70, 0x37, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x72, 0x61, 0x72,
- 0x2d, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x09,
- 0x09, 0x09, 0x72, 0x61, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x72, 0x65, 0x73, 0x65,
- 0x61, 0x72, 0x63, 0x68, 0x2d, 0x69, 0x6e, 0x66, 0x6f, 0x2d, 0x73, 0x79,
- 0x73, 0x74, 0x65, 0x6d, 0x73, 0x09, 0x09, 0x72, 0x69, 0x73, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x2d, 0x73, 0x68, 0x09, 0x09, 0x09, 0x09, 0x73, 0x68, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d,
- 0x73, 0x68, 0x61, 0x72, 0x09, 0x09, 0x09, 0x09, 0x73, 0x68, 0x61, 0x72,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x78, 0x2d, 0x73, 0x68, 0x6f, 0x63, 0x6b, 0x77, 0x61, 0x76, 0x65,
- 0x2d, 0x66, 0x6c, 0x61, 0x73, 0x68, 0x09, 0x09, 0x09, 0x73, 0x77, 0x66,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x78, 0x2d, 0x73, 0x69, 0x6c, 0x76, 0x65, 0x72, 0x6c, 0x69, 0x67,
- 0x68, 0x74, 0x2d, 0x61, 0x70, 0x70, 0x09, 0x09, 0x09, 0x78, 0x61, 0x70,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x78, 0x2d, 0x73, 0x71, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x73, 0x71,
- 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x73, 0x74, 0x75, 0x66, 0x66, 0x69, 0x74, 0x09,
- 0x09, 0x09, 0x09, 0x73, 0x69, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x73, 0x74, 0x75,
- 0x66, 0x66, 0x69, 0x74, 0x78, 0x09, 0x09, 0x09, 0x09, 0x73, 0x69, 0x74,
- 0x78, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x73, 0x75, 0x62, 0x72, 0x69, 0x70, 0x09, 0x09,
- 0x09, 0x09, 0x73, 0x72, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x73, 0x76, 0x34, 0x63,
- 0x70, 0x69, 0x6f, 0x09, 0x09, 0x09, 0x09, 0x73, 0x76, 0x34, 0x63, 0x70,
- 0x69, 0x6f, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x73, 0x76, 0x34, 0x63, 0x72, 0x63, 0x09,
- 0x09, 0x09, 0x09, 0x73, 0x76, 0x34, 0x63, 0x72, 0x63, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d,
- 0x74, 0x33, 0x76, 0x6d, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x09, 0x09,
- 0x09, 0x74, 0x33, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x74, 0x61, 0x64, 0x73, 0x09, 0x09,
- 0x09, 0x09, 0x67, 0x61, 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x74, 0x61, 0x72, 0x09,
- 0x09, 0x09, 0x09, 0x74, 0x61, 0x72, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x74, 0x63, 0x6c,
- 0x09, 0x09, 0x09, 0x09, 0x74, 0x63, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x74, 0x65,
- 0x78, 0x09, 0x09, 0x09, 0x09, 0x74, 0x65, 0x78, 0x0a, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x74,
- 0x65, 0x78, 0x2d, 0x74, 0x66, 0x6d, 0x09, 0x09, 0x09, 0x09, 0x74, 0x66,
- 0x6d, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x2d, 0x74, 0x65, 0x78, 0x69, 0x6e, 0x66, 0x6f, 0x09,
- 0x09, 0x09, 0x09, 0x74, 0x65, 0x78, 0x69, 0x6e, 0x66, 0x6f, 0x20, 0x74,
- 0x65, 0x78, 0x69, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x74, 0x67, 0x69, 0x66, 0x09, 0x09,
- 0x09, 0x09, 0x6f, 0x62, 0x6a, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x75, 0x73, 0x74, 0x61,
- 0x72, 0x09, 0x09, 0x09, 0x09, 0x75, 0x73, 0x74, 0x61, 0x72, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x2d, 0x77, 0x61, 0x69, 0x73, 0x2d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
- 0x09, 0x09, 0x09, 0x73, 0x72, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x78, 0x35, 0x30,
- 0x39, 0x2d, 0x63, 0x61, 0x2d, 0x63, 0x65, 0x72, 0x74, 0x09, 0x09, 0x09,
- 0x64, 0x65, 0x72, 0x20, 0x63, 0x72, 0x74, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x78, 0x66,
- 0x69, 0x67, 0x09, 0x09, 0x09, 0x09, 0x66, 0x69, 0x67, 0x0a, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d,
- 0x78, 0x6c, 0x69, 0x66, 0x66, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09,
- 0x09, 0x78, 0x6c, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x78, 0x70, 0x69, 0x6e, 0x73,
- 0x74, 0x61, 0x6c, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x78, 0x70, 0x69, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x78, 0x2d, 0x78, 0x7a, 0x09, 0x09, 0x09, 0x09, 0x78, 0x7a, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x2d, 0x7a, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x09, 0x09, 0x09,
- 0x09, 0x7a, 0x31, 0x20, 0x7a, 0x32, 0x20, 0x7a, 0x33, 0x20, 0x7a, 0x34,
- 0x20, 0x7a, 0x35, 0x20, 0x7a, 0x36, 0x20, 0x7a, 0x37, 0x20, 0x7a, 0x38,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x34, 0x30, 0x30, 0x2d, 0x62, 0x70, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x61, 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x78,
- 0x61, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x63, 0x61, 0x70, 0x2d, 0x61,
- 0x74, 0x74, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x63, 0x61,
- 0x70, 0x2d, 0x63, 0x61, 0x70, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x63, 0x61, 0x70, 0x2d, 0x64, 0x69, 0x66, 0x66, 0x2b, 0x78, 0x6d, 0x6c,
- 0x09, 0x09, 0x09, 0x78, 0x64, 0x66, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x63, 0x61,
- 0x70, 0x2d, 0x65, 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
- 0x63, 0x61, 0x70, 0x2d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x2b, 0x78, 0x6d,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x63, 0x61, 0x70, 0x2d, 0x6e, 0x73, 0x2b,
- 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x63, 0x6f, 0x6e, 0x2d, 0x63,
- 0x6f, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x2d, 0x69, 0x6e,
- 0x66, 0x6f, 0x2d, 0x64, 0x69, 0x66, 0x66, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x2f, 0x78, 0x63, 0x6f, 0x6e, 0x2d, 0x63, 0x6f, 0x6e, 0x66, 0x65,
- 0x72, 0x65, 0x6e, 0x63, 0x65, 0x2d, 0x69, 0x6e, 0x66, 0x6f, 0x2b, 0x78,
- 0x6d, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x65, 0x6e, 0x63, 0x2b, 0x78, 0x6d, 0x6c, 0x09,
- 0x09, 0x09, 0x09, 0x78, 0x65, 0x6e, 0x63, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x68, 0x74, 0x6d,
- 0x6c, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x78, 0x68, 0x74,
- 0x6d, 0x6c, 0x20, 0x78, 0x68, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x68, 0x74,
- 0x6d, 0x6c, 0x2d, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x2b, 0x78, 0x6d, 0x6c,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x09, 0x78, 0x6d, 0x6c,
- 0x20, 0x78, 0x73, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x6d, 0x6c, 0x2d, 0x64, 0x74, 0x64,
- 0x09, 0x09, 0x09, 0x09, 0x64, 0x74, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x6d,
- 0x6c, 0x2d, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2d, 0x70,
- 0x61, 0x72, 0x73, 0x65, 0x64, 0x2d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
- 0x0a, 0x23, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x6d, 0x70, 0x70, 0x2b, 0x78, 0x6d, 0x6c, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x78, 0x6f, 0x70, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x78,
- 0x6f, 0x70, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x78, 0x70, 0x72, 0x6f, 0x63, 0x2b, 0x78, 0x6d, 0x6c,
- 0x09, 0x09, 0x09, 0x09, 0x78, 0x70, 0x6c, 0x0a, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x73, 0x6c, 0x74,
- 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x78, 0x73, 0x6c, 0x74,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x78, 0x73, 0x70, 0x66, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09,
- 0x09, 0x78, 0x73, 0x70, 0x66, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x76, 0x2b, 0x78, 0x6d, 0x6c,
- 0x09, 0x09, 0x09, 0x09, 0x6d, 0x78, 0x6d, 0x6c, 0x20, 0x78, 0x68, 0x76,
- 0x6d, 0x6c, 0x20, 0x78, 0x76, 0x6d, 0x6c, 0x20, 0x78, 0x76, 0x6d, 0x0a,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
- 0x79, 0x61, 0x6e, 0x67, 0x09, 0x09, 0x09, 0x09, 0x79, 0x61, 0x6e, 0x67,
- 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2f, 0x79, 0x69, 0x6e, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09,
- 0x79, 0x69, 0x6e, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2f, 0x7a, 0x69, 0x70, 0x09, 0x09, 0x09, 0x09, 0x09,
- 0x7a, 0x69, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x31, 0x64, 0x2d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6c, 0x65, 0x61, 0x76,
- 0x65, 0x64, 0x2d, 0x70, 0x61, 0x72, 0x69, 0x74, 0x79, 0x66, 0x65, 0x63,
- 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x33, 0x32, 0x6b,
- 0x61, 0x64, 0x70, 0x63, 0x6d, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69,
- 0x6f, 0x2f, 0x33, 0x67, 0x70, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64,
- 0x69, 0x6f, 0x2f, 0x33, 0x67, 0x70, 0x70, 0x32, 0x0a, 0x23, 0x20, 0x61,
- 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x61, 0x63, 0x33, 0x0a, 0x61, 0x75, 0x64,
- 0x69, 0x6f, 0x2f, 0x61, 0x64, 0x70, 0x63, 0x6d, 0x09, 0x09, 0x09, 0x09,
- 0x09, 0x61, 0x64, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x61, 0x6d, 0x72, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x61, 0x6d, 0x72, 0x2d, 0x77, 0x62, 0x0a, 0x23, 0x20, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x61, 0x6d, 0x72, 0x2d, 0x77, 0x62, 0x2b, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x61, 0x73, 0x63, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x61, 0x74, 0x72, 0x61,
- 0x63, 0x2d, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x2d, 0x6c,
- 0x6f, 0x73, 0x73, 0x6c, 0x65, 0x73, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x61, 0x74, 0x72, 0x61, 0x63, 0x2d, 0x78, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x61, 0x74, 0x72, 0x61,
- 0x63, 0x33, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x62, 0x61, 0x73,
- 0x69, 0x63, 0x09, 0x09, 0x09, 0x09, 0x09, 0x61, 0x75, 0x20, 0x73, 0x6e,
- 0x64, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x62, 0x76,
- 0x31, 0x36, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x62,
- 0x76, 0x33, 0x32, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x63, 0x6c, 0x65, 0x61, 0x72, 0x6d, 0x6f, 0x64, 0x65, 0x0a, 0x23, 0x20,
- 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x63, 0x6e, 0x0a, 0x23, 0x20, 0x61,
- 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x64, 0x61, 0x74, 0x31, 0x32, 0x0a, 0x23,
- 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x64, 0x6c, 0x73, 0x0a, 0x23,
- 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x64, 0x73, 0x72, 0x2d, 0x65,
- 0x73, 0x32, 0x30, 0x31, 0x31, 0x30, 0x38, 0x0a, 0x23, 0x20, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x64, 0x73, 0x72, 0x2d, 0x65, 0x73, 0x32, 0x30,
- 0x32, 0x30, 0x35, 0x30, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x64, 0x73, 0x72, 0x2d, 0x65, 0x73, 0x32, 0x30, 0x32, 0x32, 0x31,
- 0x31, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x64, 0x73,
- 0x72, 0x2d, 0x65, 0x73, 0x32, 0x30, 0x32, 0x32, 0x31, 0x32, 0x0a, 0x23,
- 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x64, 0x76, 0x0a, 0x23, 0x20,
- 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x64, 0x76, 0x69, 0x34, 0x0a, 0x23,
- 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x65, 0x61, 0x63, 0x33, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x65, 0x76, 0x72, 0x63,
- 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x65, 0x76, 0x72,
- 0x63, 0x2d, 0x71, 0x63, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69,
- 0x6f, 0x2f, 0x65, 0x76, 0x72, 0x63, 0x30, 0x0a, 0x23, 0x20, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x65, 0x76, 0x72, 0x63, 0x31, 0x0a, 0x23, 0x20,
- 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x65, 0x76, 0x72, 0x63, 0x62, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x65, 0x76, 0x72, 0x63,
- 0x62, 0x30, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x65,
- 0x76, 0x72, 0x63, 0x62, 0x31, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69,
- 0x6f, 0x2f, 0x65, 0x76, 0x72, 0x63, 0x77, 0x62, 0x0a, 0x23, 0x20, 0x61,
- 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x65, 0x76, 0x72, 0x63, 0x77, 0x62, 0x30,
- 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x65, 0x76, 0x72,
- 0x63, 0x77, 0x62, 0x31, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x0a, 0x23, 0x20, 0x61,
- 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x66, 0x77, 0x64, 0x72, 0x65, 0x64, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x67, 0x37, 0x31, 0x39,
- 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x67, 0x37, 0x32,
- 0x32, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x67, 0x37,
- 0x32, 0x32, 0x31, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x67, 0x37, 0x32, 0x33, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x67, 0x37, 0x32, 0x36, 0x2d, 0x31, 0x36, 0x0a, 0x23, 0x20, 0x61,
- 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x67, 0x37, 0x32, 0x36, 0x2d, 0x32, 0x34,
- 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x67, 0x37, 0x32,
- 0x36, 0x2d, 0x33, 0x32, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x67, 0x37, 0x32, 0x36, 0x2d, 0x34, 0x30, 0x0a, 0x23, 0x20, 0x61,
- 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x67, 0x37, 0x32, 0x38, 0x0a, 0x23, 0x20,
- 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x67, 0x37, 0x32, 0x39, 0x0a, 0x23,
- 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x67, 0x37, 0x32, 0x39, 0x31,
- 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x67, 0x37, 0x32,
- 0x39, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x67,
- 0x37, 0x32, 0x39, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x67, 0x73, 0x6d, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x67, 0x73, 0x6d, 0x2d, 0x65, 0x66, 0x72, 0x0a, 0x23, 0x20, 0x61,
- 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x67, 0x73, 0x6d, 0x2d, 0x68, 0x72, 0x2d,
- 0x30, 0x38, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x69,
- 0x6c, 0x62, 0x63, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x69, 0x70, 0x2d, 0x6d, 0x72, 0x5f, 0x76, 0x32, 0x2e, 0x35, 0x0a, 0x23,
- 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x69, 0x73, 0x61, 0x63, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x6c, 0x31, 0x36, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x6c, 0x32, 0x30, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x6c, 0x32, 0x34, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x6c, 0x38, 0x0a, 0x23,
- 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x6c, 0x70, 0x63, 0x0a, 0x61,
- 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x6d, 0x69, 0x64, 0x69, 0x09, 0x09, 0x09,
- 0x09, 0x09, 0x6d, 0x69, 0x64, 0x20, 0x6d, 0x69, 0x64, 0x69, 0x20, 0x6b,
- 0x61, 0x72, 0x20, 0x72, 0x6d, 0x69, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64,
- 0x69, 0x6f, 0x2f, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x2d, 0x78, 0x6d,
- 0x66, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x6d, 0x70, 0x34, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x6d, 0x70, 0x34, 0x61, 0x0a, 0x23, 0x20, 0x61,
- 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x6d, 0x70, 0x34, 0x61, 0x2d, 0x6c, 0x61,
- 0x74, 0x6d, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x6d,
- 0x70, 0x61, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x6d,
- 0x70, 0x61, 0x2d, 0x72, 0x6f, 0x62, 0x75, 0x73, 0x74, 0x0a, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x6d, 0x70, 0x65, 0x67, 0x09, 0x09, 0x09, 0x09,
- 0x09, 0x6d, 0x70, 0x67, 0x61, 0x20, 0x6d, 0x70, 0x32, 0x20, 0x6d, 0x70,
- 0x32, 0x61, 0x20, 0x6d, 0x70, 0x33, 0x20, 0x6d, 0x32, 0x61, 0x20, 0x6d,
- 0x33, 0x61, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x6d,
- 0x70, 0x65, 0x67, 0x34, 0x2d, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63,
- 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x6d, 0x75, 0x73,
- 0x65, 0x70, 0x61, 0x63, 0x6b, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x6f, 0x67, 0x67, 0x09, 0x09, 0x09, 0x09, 0x09, 0x6f, 0x67, 0x61, 0x20,
- 0x6f, 0x67, 0x67, 0x20, 0x73, 0x70, 0x78, 0x0a, 0x23, 0x20, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x6f, 0x70, 0x75, 0x73, 0x0a, 0x23, 0x20, 0x61,
- 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x70, 0x61, 0x72, 0x69, 0x74, 0x79, 0x66,
- 0x65, 0x63, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x70,
- 0x63, 0x6d, 0x61, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x70, 0x63, 0x6d, 0x61, 0x2d, 0x77, 0x62, 0x0a, 0x23, 0x20, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x70, 0x63, 0x6d, 0x75, 0x2d, 0x77, 0x62, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x70, 0x63, 0x6d, 0x75,
- 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x70, 0x72, 0x73,
- 0x2e, 0x73, 0x69, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x71, 0x63, 0x65, 0x6c, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64,
- 0x69, 0x6f, 0x2f, 0x72, 0x65, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64,
- 0x69, 0x6f, 0x2f, 0x72, 0x74, 0x70, 0x2d, 0x65, 0x6e, 0x63, 0x2d, 0x61,
- 0x65, 0x73, 0x63, 0x6d, 0x31, 0x32, 0x38, 0x0a, 0x23, 0x20, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x72, 0x74, 0x70, 0x2d, 0x6d, 0x69, 0x64, 0x69,
- 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x72, 0x74, 0x78,
- 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x73, 0x33, 0x6d, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x73, 0x33, 0x6d, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x73, 0x69, 0x6c, 0x6b, 0x09, 0x09, 0x09, 0x09, 0x09, 0x73, 0x69,
- 0x6c, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x73, 0x6d,
- 0x76, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x73, 0x6d,
- 0x76, 0x30, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x73,
- 0x6d, 0x76, 0x2d, 0x71, 0x63, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64,
- 0x69, 0x6f, 0x2f, 0x73, 0x70, 0x2d, 0x6d, 0x69, 0x64, 0x69, 0x0a, 0x23,
- 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x73, 0x70, 0x65, 0x65, 0x78,
- 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x74, 0x31, 0x34,
- 0x30, 0x63, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x74,
- 0x33, 0x38, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x74,
- 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x2d, 0x65, 0x76, 0x65,
- 0x6e, 0x74, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x74,
- 0x6f, 0x6e, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x75, 0x65, 0x6d, 0x63, 0x6c, 0x69, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x75, 0x6c, 0x70, 0x66, 0x65, 0x63, 0x0a, 0x23,
- 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x64, 0x76, 0x69, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6d, 0x72, 0x2d,
- 0x77, 0x62, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x33, 0x67, 0x70, 0x70, 0x2e, 0x69, 0x75, 0x66, 0x70,
- 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x34, 0x73, 0x62, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x6b, 0x6f,
- 0x7a, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x63, 0x65, 0x6c, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64,
- 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x69, 0x73, 0x63, 0x6f,
- 0x2e, 0x6e, 0x73, 0x65, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x6d, 0x6c, 0x65, 0x73, 0x2e, 0x72,
- 0x61, 0x64, 0x69, 0x6f, 0x2d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x63, 0x6e, 0x73, 0x2e, 0x61, 0x6e, 0x70, 0x31, 0x0a, 0x23, 0x20, 0x61,
- 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x6e, 0x73,
- 0x2e, 0x69, 0x6e, 0x66, 0x31, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x65, 0x63, 0x65, 0x2e, 0x61, 0x75, 0x64,
- 0x69, 0x6f, 0x09, 0x09, 0x09, 0x09, 0x75, 0x76, 0x61, 0x20, 0x75, 0x76,
- 0x76, 0x61, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x64, 0x69, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x2d, 0x77, 0x69, 0x6e,
- 0x64, 0x73, 0x09, 0x09, 0x09, 0x09, 0x65, 0x6f, 0x6c, 0x0a, 0x23, 0x20,
- 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x6c,
- 0x6e, 0x61, 0x2e, 0x61, 0x64, 0x74, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x6f, 0x6c, 0x62,
- 0x79, 0x2e, 0x68, 0x65, 0x61, 0x61, 0x63, 0x2e, 0x31, 0x0a, 0x23, 0x20,
- 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x6f,
- 0x6c, 0x62, 0x79, 0x2e, 0x68, 0x65, 0x61, 0x61, 0x63, 0x2e, 0x32, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x64, 0x6f, 0x6c, 0x62, 0x79, 0x2e, 0x6d, 0x6c, 0x70, 0x0a, 0x23, 0x20,
- 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x6f,
- 0x6c, 0x62, 0x79, 0x2e, 0x6d, 0x70, 0x73, 0x0a, 0x23, 0x20, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x6f, 0x6c, 0x62,
- 0x79, 0x2e, 0x70, 0x6c, 0x32, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69,
- 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x6f, 0x6c, 0x62, 0x79, 0x2e,
- 0x70, 0x6c, 0x32, 0x78, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x6f, 0x6c, 0x62, 0x79, 0x2e, 0x70,
- 0x6c, 0x32, 0x7a, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x6f, 0x6c, 0x62, 0x79, 0x2e, 0x70, 0x75,
- 0x6c, 0x73, 0x65, 0x2e, 0x31, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x72, 0x61, 0x09, 0x09, 0x09, 0x09, 0x09,
- 0x64, 0x72, 0x61, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x64, 0x74, 0x73, 0x09, 0x09, 0x09, 0x09, 0x09, 0x64, 0x74,
- 0x73, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x64, 0x74, 0x73, 0x2e, 0x68, 0x64, 0x09, 0x09, 0x09, 0x09, 0x64, 0x74,
- 0x73, 0x68, 0x64, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x66, 0x69, 0x6c, 0x65,
- 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x65, 0x76, 0x65, 0x72, 0x61, 0x64, 0x2e, 0x70, 0x6c, 0x6a, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x68, 0x6e, 0x73, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x0a, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6c, 0x75, 0x63, 0x65,
- 0x6e, 0x74, 0x2e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x09, 0x09, 0x09, 0x09,
- 0x6c, 0x76, 0x70, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x70, 0x6c, 0x61, 0x79, 0x72, 0x65, 0x61,
- 0x64, 0x79, 0x2e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x2e, 0x70, 0x79, 0x61,
- 0x09, 0x09, 0x70, 0x79, 0x61, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69,
- 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61, 0x2e,
- 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x2d, 0x78, 0x6d, 0x66, 0x0a, 0x23,
- 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e,
- 0x6f, 0x72, 0x74, 0x65, 0x6c, 0x2e, 0x76, 0x62, 0x6b, 0x0a, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x75, 0x65, 0x72,
- 0x61, 0x2e, 0x65, 0x63, 0x65, 0x6c, 0x70, 0x34, 0x38, 0x30, 0x30, 0x09,
- 0x09, 0x09, 0x65, 0x63, 0x65, 0x6c, 0x70, 0x34, 0x38, 0x30, 0x30, 0x0a,
- 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x75,
- 0x65, 0x72, 0x61, 0x2e, 0x65, 0x63, 0x65, 0x6c, 0x70, 0x37, 0x34, 0x37,
- 0x30, 0x09, 0x09, 0x09, 0x65, 0x63, 0x65, 0x6c, 0x70, 0x37, 0x34, 0x37,
- 0x30, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6e, 0x75, 0x65, 0x72, 0x61, 0x2e, 0x65, 0x63, 0x65, 0x6c, 0x70, 0x39,
- 0x36, 0x30, 0x30, 0x09, 0x09, 0x09, 0x65, 0x63, 0x65, 0x6c, 0x70, 0x39,
- 0x36, 0x30, 0x30, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x63, 0x74, 0x65, 0x6c, 0x2e, 0x73, 0x62,
- 0x63, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x71, 0x63, 0x65, 0x6c, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x68, 0x65, 0x74,
- 0x6f, 0x72, 0x65, 0x78, 0x2e, 0x33, 0x32, 0x6b, 0x61, 0x64, 0x70, 0x63,
- 0x6d, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x72, 0x69, 0x70, 0x09, 0x09, 0x09, 0x09, 0x09, 0x72, 0x69, 0x70, 0x0a,
- 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x2e,
- 0x73, 0x6f, 0x66, 0x74, 0x73, 0x65, 0x61, 0x6c, 0x2e, 0x6d, 0x70, 0x65,
- 0x67, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x76, 0x6d, 0x78, 0x2e, 0x63, 0x76, 0x73, 0x64, 0x0a, 0x23,
- 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6f, 0x72, 0x62, 0x69,
- 0x73, 0x0a, 0x23, 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x76, 0x6f,
- 0x72, 0x62, 0x69, 0x73, 0x2d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x0a,
- 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x77, 0x65, 0x62, 0x6d, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x77, 0x65, 0x62, 0x61, 0x0a, 0x61, 0x75, 0x64, 0x69,
- 0x6f, 0x2f, 0x78, 0x2d, 0x61, 0x61, 0x63, 0x09, 0x09, 0x09, 0x09, 0x09,
- 0x61, 0x61, 0x63, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x78, 0x2d,
- 0x61, 0x69, 0x66, 0x66, 0x09, 0x09, 0x09, 0x09, 0x09, 0x61, 0x69, 0x66,
- 0x20, 0x61, 0x69, 0x66, 0x66, 0x20, 0x61, 0x69, 0x66, 0x63, 0x0a, 0x61,
- 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x78, 0x2d, 0x63, 0x61, 0x66, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x63, 0x61, 0x66, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f,
- 0x2f, 0x78, 0x2d, 0x66, 0x6c, 0x61, 0x63, 0x09, 0x09, 0x09, 0x09, 0x09,
- 0x66, 0x6c, 0x61, 0x63, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x78,
- 0x2d, 0x6d, 0x61, 0x74, 0x72, 0x6f, 0x73, 0x6b, 0x61, 0x09, 0x09, 0x09,
- 0x09, 0x6d, 0x6b, 0x61, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x78,
- 0x2d, 0x6d, 0x70, 0x65, 0x67, 0x75, 0x72, 0x6c, 0x09, 0x09, 0x09, 0x09,
- 0x09, 0x6d, 0x33, 0x75, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x78,
- 0x2d, 0x6d, 0x73, 0x2d, 0x77, 0x61, 0x78, 0x09, 0x09, 0x09, 0x09, 0x09,
- 0x77, 0x61, 0x78, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x78, 0x2d,
- 0x6d, 0x73, 0x2d, 0x77, 0x6d, 0x61, 0x09, 0x09, 0x09, 0x09, 0x09, 0x77,
- 0x6d, 0x61, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x78, 0x2d, 0x70,
- 0x6e, 0x2d, 0x72, 0x65, 0x61, 0x6c, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x09,
- 0x09, 0x09, 0x09, 0x72, 0x61, 0x6d, 0x20, 0x72, 0x61, 0x0a, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x78, 0x2d, 0x70, 0x6e, 0x2d, 0x72, 0x65, 0x61,
- 0x6c, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2d, 0x70, 0x6c, 0x75, 0x67, 0x69,
- 0x6e, 0x09, 0x09, 0x09, 0x72, 0x6d, 0x70, 0x0a, 0x23, 0x20, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x78, 0x2d, 0x74, 0x74, 0x61, 0x0a, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x2f, 0x78, 0x2d, 0x77, 0x61, 0x76, 0x09, 0x09, 0x09,
- 0x09, 0x09, 0x77, 0x61, 0x76, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f,
- 0x78, 0x6d, 0x09, 0x09, 0x09, 0x09, 0x09, 0x78, 0x6d, 0x0a, 0x63, 0x68,
- 0x65, 0x6d, 0x69, 0x63, 0x61, 0x6c, 0x2f, 0x78, 0x2d, 0x63, 0x64, 0x78,
- 0x09, 0x09, 0x09, 0x09, 0x09, 0x63, 0x64, 0x78, 0x0a, 0x63, 0x68, 0x65,
- 0x6d, 0x69, 0x63, 0x61, 0x6c, 0x2f, 0x78, 0x2d, 0x63, 0x69, 0x66, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x63, 0x69, 0x66, 0x0a, 0x63, 0x68, 0x65, 0x6d,
- 0x69, 0x63, 0x61, 0x6c, 0x2f, 0x78, 0x2d, 0x63, 0x6d, 0x64, 0x66, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x63, 0x6d, 0x64, 0x66, 0x0a, 0x63, 0x68, 0x65,
- 0x6d, 0x69, 0x63, 0x61, 0x6c, 0x2f, 0x78, 0x2d, 0x63, 0x6d, 0x6c, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x63, 0x6d, 0x6c, 0x0a, 0x63, 0x68, 0x65, 0x6d,
- 0x69, 0x63, 0x61, 0x6c, 0x2f, 0x78, 0x2d, 0x63, 0x73, 0x6d, 0x6c, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x63, 0x73, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x63,
- 0x68, 0x65, 0x6d, 0x69, 0x63, 0x61, 0x6c, 0x2f, 0x78, 0x2d, 0x70, 0x64,
- 0x62, 0x0a, 0x63, 0x68, 0x65, 0x6d, 0x69, 0x63, 0x61, 0x6c, 0x2f, 0x78,
- 0x2d, 0x78, 0x79, 0x7a, 0x09, 0x09, 0x09, 0x09, 0x09, 0x78, 0x79, 0x7a,
- 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x62, 0x6d, 0x70, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x62, 0x6d, 0x70, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65,
- 0x2f, 0x63, 0x67, 0x6d, 0x09, 0x09, 0x09, 0x09, 0x09, 0x63, 0x67, 0x6d,
- 0x0a, 0x23, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x65, 0x78, 0x61,
- 0x6d, 0x70, 0x6c, 0x65, 0x0a, 0x23, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65,
- 0x2f, 0x66, 0x69, 0x74, 0x73, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f,
- 0x67, 0x33, 0x66, 0x61, 0x78, 0x09, 0x09, 0x09, 0x09, 0x09, 0x67, 0x33,
- 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x67, 0x69, 0x66, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x67, 0x69, 0x66, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65,
- 0x2f, 0x69, 0x65, 0x66, 0x09, 0x09, 0x09, 0x09, 0x09, 0x69, 0x65, 0x66,
- 0x0a, 0x23, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x6a, 0x70, 0x32,
- 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x6a, 0x70, 0x65, 0x67, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x6a, 0x70, 0x65, 0x67, 0x20, 0x6a, 0x70, 0x67,
- 0x20, 0x6a, 0x70, 0x65, 0x0a, 0x23, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65,
- 0x2f, 0x6a, 0x70, 0x6d, 0x0a, 0x23, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65,
- 0x2f, 0x6a, 0x70, 0x78, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x6b,
- 0x74, 0x78, 0x09, 0x09, 0x09, 0x09, 0x09, 0x6b, 0x74, 0x78, 0x0a, 0x23,
- 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x6e, 0x61, 0x70, 0x6c, 0x70,
- 0x73, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x70, 0x6e, 0x67, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x70, 0x6e, 0x67, 0x0a, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x2f, 0x70, 0x72, 0x73, 0x2e, 0x62, 0x74, 0x69, 0x66, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x62, 0x74, 0x69, 0x66, 0x0a, 0x23, 0x20, 0x69, 0x6d,
- 0x61, 0x67, 0x65, 0x2f, 0x70, 0x72, 0x73, 0x2e, 0x70, 0x74, 0x69, 0x0a,
- 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x73, 0x67, 0x69, 0x09, 0x09, 0x09,
- 0x09, 0x09, 0x73, 0x67, 0x69, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f,
- 0x73, 0x76, 0x67, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x09,
- 0x73, 0x76, 0x67, 0x20, 0x73, 0x76, 0x67, 0x7a, 0x0a, 0x23, 0x20, 0x69,
- 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x74, 0x33, 0x38, 0x0a, 0x69, 0x6d, 0x61,
- 0x67, 0x65, 0x2f, 0x74, 0x69, 0x66, 0x66, 0x09, 0x09, 0x09, 0x09, 0x09,
- 0x74, 0x69, 0x66, 0x66, 0x20, 0x74, 0x69, 0x66, 0x0a, 0x23, 0x20, 0x69,
- 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x74, 0x69, 0x66, 0x66, 0x2d, 0x66, 0x78,
- 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x61,
- 0x64, 0x6f, 0x62, 0x65, 0x2e, 0x70, 0x68, 0x6f, 0x74, 0x6f, 0x73, 0x68,
- 0x6f, 0x70, 0x09, 0x09, 0x09, 0x70, 0x73, 0x64, 0x0a, 0x23, 0x20, 0x69,
- 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x6e, 0x73,
- 0x2e, 0x69, 0x6e, 0x66, 0x32, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x65, 0x63, 0x65, 0x2e, 0x67, 0x72, 0x61,
- 0x70, 0x68, 0x69, 0x63, 0x09, 0x09, 0x09, 0x09, 0x75, 0x76, 0x69, 0x20,
- 0x75, 0x76, 0x76, 0x69, 0x20, 0x75, 0x76, 0x67, 0x20, 0x75, 0x76, 0x76,
- 0x67, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x64, 0x76, 0x62, 0x2e, 0x73, 0x75, 0x62, 0x74, 0x69, 0x74, 0x6c, 0x65,
- 0x09, 0x09, 0x09, 0x09, 0x73, 0x75, 0x62, 0x0a, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x6a, 0x76, 0x75, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x64, 0x6a, 0x76, 0x75, 0x20, 0x64, 0x6a, 0x76, 0x0a,
- 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x77,
- 0x67, 0x09, 0x09, 0x09, 0x09, 0x09, 0x64, 0x77, 0x67, 0x0a, 0x69, 0x6d,
- 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x78, 0x66, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x64, 0x78, 0x66, 0x0a, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x61, 0x73, 0x74, 0x62, 0x69,
- 0x64, 0x73, 0x68, 0x65, 0x65, 0x74, 0x09, 0x09, 0x09, 0x09, 0x66, 0x62,
- 0x73, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x66, 0x70, 0x78, 0x09, 0x09, 0x09, 0x09, 0x09, 0x66, 0x70, 0x78, 0x0a,
- 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x73,
- 0x74, 0x09, 0x09, 0x09, 0x09, 0x09, 0x66, 0x73, 0x74, 0x0a, 0x69, 0x6d,
- 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x75, 0x6a, 0x69,
- 0x78, 0x65, 0x72, 0x6f, 0x78, 0x2e, 0x65, 0x64, 0x6d, 0x69, 0x63, 0x73,
- 0x2d, 0x6d, 0x6d, 0x72, 0x09, 0x09, 0x09, 0x6d, 0x6d, 0x72, 0x0a, 0x69,
- 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x75, 0x6a,
- 0x69, 0x78, 0x65, 0x72, 0x6f, 0x78, 0x2e, 0x65, 0x64, 0x6d, 0x69, 0x63,
- 0x73, 0x2d, 0x72, 0x6c, 0x63, 0x09, 0x09, 0x09, 0x72, 0x6c, 0x63, 0x0a,
- 0x23, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69,
- 0x63, 0x73, 0x2e, 0x70, 0x67, 0x62, 0x0a, 0x23, 0x20, 0x69, 0x6d, 0x61,
- 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f,
- 0x73, 0x6f, 0x66, 0x74, 0x2e, 0x69, 0x63, 0x6f, 0x6e, 0x0a, 0x23, 0x20,
- 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x69,
- 0x78, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6d, 0x73, 0x2d, 0x6d, 0x6f, 0x64, 0x69, 0x09, 0x09, 0x09, 0x09, 0x6d,
- 0x64, 0x69, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6d, 0x73, 0x2d, 0x70, 0x68, 0x6f, 0x74, 0x6f, 0x09, 0x09, 0x09,
- 0x09, 0x77, 0x64, 0x70, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x2d, 0x66, 0x70, 0x78, 0x09, 0x09,
- 0x09, 0x09, 0x6e, 0x70, 0x78, 0x0a, 0x23, 0x20, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e,
- 0x63, 0x65, 0x0a, 0x23, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x2e, 0x70, 0x6e,
- 0x67, 0x0a, 0x23, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x6d, 0x65, 0x64, 0x69,
- 0x61, 0x2e, 0x73, 0x6f, 0x66, 0x74, 0x73, 0x65, 0x61, 0x6c, 0x2e, 0x67,
- 0x69, 0x66, 0x0a, 0x23, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x6d, 0x65, 0x64,
- 0x69, 0x61, 0x2e, 0x73, 0x6f, 0x66, 0x74, 0x73, 0x65, 0x61, 0x6c, 0x2e,
- 0x6a, 0x70, 0x67, 0x0a, 0x23, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x76, 0x66, 0x0a, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x61, 0x70, 0x2e, 0x77, 0x62,
- 0x6d, 0x70, 0x09, 0x09, 0x09, 0x09, 0x77, 0x62, 0x6d, 0x70, 0x0a, 0x69,
- 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x78, 0x69, 0x66,
- 0x66, 0x09, 0x09, 0x09, 0x09, 0x09, 0x78, 0x69, 0x66, 0x0a, 0x69, 0x6d,
- 0x61, 0x67, 0x65, 0x2f, 0x77, 0x65, 0x62, 0x70, 0x09, 0x09, 0x09, 0x09,
- 0x09, 0x77, 0x65, 0x62, 0x70, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f,
- 0x78, 0x2d, 0x33, 0x64, 0x73, 0x09, 0x09, 0x09, 0x09, 0x09, 0x33, 0x64,
- 0x73, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d, 0x63, 0x6d,
- 0x75, 0x2d, 0x72, 0x61, 0x73, 0x74, 0x65, 0x72, 0x09, 0x09, 0x09, 0x09,
- 0x72, 0x61, 0x73, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d,
- 0x63, 0x6d, 0x78, 0x09, 0x09, 0x09, 0x09, 0x09, 0x63, 0x6d, 0x78, 0x0a,
- 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d, 0x66, 0x72, 0x65, 0x65,
- 0x68, 0x61, 0x6e, 0x64, 0x09, 0x09, 0x09, 0x09, 0x66, 0x68, 0x20, 0x66,
- 0x68, 0x63, 0x20, 0x66, 0x68, 0x34, 0x20, 0x66, 0x68, 0x35, 0x20, 0x66,
- 0x68, 0x37, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d, 0x69,
- 0x63, 0x6f, 0x6e, 0x09, 0x09, 0x09, 0x09, 0x09, 0x69, 0x63, 0x6f, 0x0a,
- 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d, 0x6d, 0x72, 0x73, 0x69,
- 0x64, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x09, 0x09, 0x09, 0x09, 0x73,
- 0x69, 0x64, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d, 0x70,
- 0x63, 0x78, 0x09, 0x09, 0x09, 0x09, 0x09, 0x70, 0x63, 0x78, 0x0a, 0x69,
- 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d, 0x70, 0x69, 0x63, 0x74, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x70, 0x69, 0x63, 0x20, 0x70, 0x63, 0x74, 0x0a,
- 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d, 0x70, 0x6f, 0x72, 0x74,
- 0x61, 0x62, 0x6c, 0x65, 0x2d, 0x61, 0x6e, 0x79, 0x6d, 0x61, 0x70, 0x09,
- 0x09, 0x09, 0x09, 0x70, 0x6e, 0x6d, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65,
- 0x2f, 0x78, 0x2d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2d,
- 0x62, 0x69, 0x74, 0x6d, 0x61, 0x70, 0x09, 0x09, 0x09, 0x09, 0x70, 0x62,
- 0x6d, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d, 0x70, 0x6f,
- 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2d, 0x67, 0x72, 0x61, 0x79, 0x6d,
- 0x61, 0x70, 0x09, 0x09, 0x09, 0x70, 0x67, 0x6d, 0x0a, 0x69, 0x6d, 0x61,
- 0x67, 0x65, 0x2f, 0x78, 0x2d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c,
- 0x65, 0x2d, 0x70, 0x69, 0x78, 0x6d, 0x61, 0x70, 0x09, 0x09, 0x09, 0x09,
- 0x70, 0x70, 0x6d, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d,
- 0x72, 0x67, 0x62, 0x09, 0x09, 0x09, 0x09, 0x09, 0x72, 0x67, 0x62, 0x0a,
- 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d, 0x74, 0x67, 0x61, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x74, 0x67, 0x61, 0x0a, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x2f, 0x78, 0x2d, 0x78, 0x62, 0x69, 0x74, 0x6d, 0x61, 0x70, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x78, 0x62, 0x6d, 0x0a, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x2f, 0x78, 0x2d, 0x78, 0x70, 0x69, 0x78, 0x6d, 0x61, 0x70, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x78, 0x70, 0x6d, 0x0a, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x2f, 0x78, 0x2d, 0x78, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x64,
- 0x75, 0x6d, 0x70, 0x09, 0x09, 0x09, 0x09, 0x78, 0x77, 0x64, 0x0a, 0x23,
- 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f, 0x63, 0x70, 0x69,
- 0x6d, 0x0a, 0x23, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f,
- 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x2d, 0x73, 0x74, 0x61,
- 0x74, 0x75, 0x73, 0x0a, 0x23, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
- 0x65, 0x2f, 0x64, 0x69, 0x73, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f,
- 0x6e, 0x2d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x0a, 0x23, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
- 0x2f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x0a, 0x23, 0x20, 0x6d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f, 0x65, 0x78, 0x74, 0x65, 0x72,
- 0x6e, 0x61, 0x6c, 0x2d, 0x62, 0x6f, 0x64, 0x79, 0x0a, 0x23, 0x20, 0x6d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f, 0x66, 0x65, 0x65, 0x64, 0x62,
- 0x61, 0x63, 0x6b, 0x2d, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x0a, 0x23,
- 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f, 0x67, 0x6c, 0x6f,
- 0x62, 0x61, 0x6c, 0x0a, 0x23, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
- 0x65, 0x2f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2d, 0x64, 0x65, 0x6c,
- 0x69, 0x76, 0x65, 0x72, 0x79, 0x2d, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
- 0x0a, 0x23, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f, 0x67,
- 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2d, 0x64, 0x69, 0x73, 0x70, 0x6f, 0x73,
- 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x23, 0x20, 0x6d, 0x65, 0x73,
- 0x73, 0x61, 0x67, 0x65, 0x2f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2d,
- 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x0a, 0x23, 0x20, 0x6d, 0x65,
- 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f, 0x68, 0x74, 0x74, 0x70, 0x0a, 0x23,
- 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f, 0x69, 0x6d, 0x64,
- 0x6e, 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x6d, 0x65, 0x73, 0x73,
- 0x61, 0x67, 0x65, 0x2f, 0x6e, 0x65, 0x77, 0x73, 0x0a, 0x23, 0x20, 0x6d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69,
- 0x61, 0x6c, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f, 0x72,
- 0x66, 0x63, 0x38, 0x32, 0x32, 0x09, 0x09, 0x09, 0x09, 0x09, 0x65, 0x6d,
- 0x6c, 0x20, 0x6d, 0x69, 0x6d, 0x65, 0x0a, 0x23, 0x20, 0x6d, 0x65, 0x73,
- 0x73, 0x61, 0x67, 0x65, 0x2f, 0x73, 0x2d, 0x68, 0x74, 0x74, 0x70, 0x0a,
- 0x23, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f, 0x73, 0x69,
- 0x70, 0x0a, 0x23, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f,
- 0x73, 0x69, 0x70, 0x66, 0x72, 0x61, 0x67, 0x0a, 0x23, 0x20, 0x6d, 0x65,
- 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69,
- 0x6e, 0x67, 0x2d, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x0a, 0x23, 0x20,
- 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x73, 0x69, 0x2e, 0x73, 0x69, 0x6d, 0x70, 0x0a, 0x23, 0x20, 0x6d, 0x6f,
- 0x64, 0x65, 0x6c, 0x2f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x0a,
- 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x69, 0x67, 0x65, 0x73, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x69, 0x67, 0x73, 0x20, 0x69, 0x67, 0x65, 0x73, 0x0a,
- 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x6d, 0x73, 0x68, 0x20, 0x6d, 0x65, 0x73, 0x68, 0x20,
- 0x73, 0x69, 0x6c, 0x6f, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x64, 0x61, 0x2b, 0x78,
- 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x64, 0x61, 0x65, 0x0a, 0x6d, 0x6f,
- 0x64, 0x65, 0x6c, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x77, 0x66, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x64, 0x77, 0x66, 0x0a, 0x23, 0x20, 0x6d, 0x6f,
- 0x64, 0x65, 0x6c, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x6c, 0x61, 0x74,
- 0x6c, 0x61, 0x6e, 0x64, 0x2e, 0x33, 0x64, 0x6d, 0x6c, 0x0a, 0x6d, 0x6f,
- 0x64, 0x65, 0x6c, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x64, 0x6c, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x67, 0x64, 0x6c, 0x0a, 0x23, 0x20, 0x6d, 0x6f,
- 0x64, 0x65, 0x6c, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x73, 0x2d, 0x67,
- 0x64, 0x6c, 0x0a, 0x23, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x67, 0x73, 0x2e, 0x67, 0x64, 0x6c, 0x0a, 0x6d, 0x6f,
- 0x64, 0x65, 0x6c, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x67, 0x74, 0x77, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x67, 0x74, 0x77, 0x0a, 0x23, 0x20, 0x6d, 0x6f,
- 0x64, 0x65, 0x6c, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x6d, 0x6c,
- 0x2b, 0x78, 0x6d, 0x6c, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x74, 0x73, 0x09, 0x09, 0x09, 0x09, 0x09, 0x6d,
- 0x74, 0x73, 0x0a, 0x23, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x70, 0x61, 0x72, 0x61, 0x73, 0x6f, 0x6c, 0x69, 0x64,
- 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x74, 0x2e, 0x62, 0x69,
- 0x6e, 0x61, 0x72, 0x79, 0x0a, 0x23, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x70, 0x61, 0x72, 0x61, 0x73, 0x6f, 0x6c,
- 0x69, 0x64, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x74, 0x2e,
- 0x74, 0x65, 0x78, 0x74, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x76, 0x74, 0x75, 0x09, 0x09, 0x09, 0x09, 0x09, 0x76,
- 0x74, 0x75, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x76, 0x72, 0x6d,
- 0x6c, 0x09, 0x09, 0x09, 0x09, 0x09, 0x77, 0x72, 0x6c, 0x20, 0x76, 0x72,
- 0x6d, 0x6c, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x78, 0x33, 0x64,
- 0x2b, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x09, 0x09, 0x09, 0x09, 0x78,
- 0x33, 0x64, 0x62, 0x20, 0x78, 0x33, 0x64, 0x62, 0x7a, 0x0a, 0x6d, 0x6f,
- 0x64, 0x65, 0x6c, 0x2f, 0x78, 0x33, 0x64, 0x2b, 0x76, 0x72, 0x6d, 0x6c,
- 0x09, 0x09, 0x09, 0x09, 0x09, 0x78, 0x33, 0x64, 0x76, 0x20, 0x78, 0x33,
- 0x64, 0x76, 0x7a, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x78, 0x33,
- 0x64, 0x2b, 0x78, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x09, 0x78, 0x33,
- 0x64, 0x20, 0x78, 0x33, 0x64, 0x7a, 0x0a, 0x23, 0x20, 0x6d, 0x75, 0x6c,
- 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x2f, 0x61, 0x6c, 0x74, 0x65, 0x72,
- 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x0a, 0x23, 0x20, 0x6d, 0x75, 0x6c,
- 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x65,
- 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x0a, 0x23, 0x20, 0x6d, 0x75, 0x6c,
- 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x2f, 0x62, 0x79, 0x74, 0x65, 0x72,
- 0x61, 0x6e, 0x67, 0x65, 0x73, 0x0a, 0x23, 0x20, 0x6d, 0x75, 0x6c, 0x74,
- 0x69, 0x70, 0x61, 0x72, 0x74, 0x2f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74,
- 0x0a, 0x23, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x72, 0x74,
- 0x2f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x0a, 0x23,
- 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x2f, 0x65,
- 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x0a, 0x23, 0x20, 0x6d, 0x75, 0x6c,
- 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x2f, 0x66, 0x6f, 0x72, 0x6d, 0x2d,
- 0x64, 0x61, 0x74, 0x61, 0x0a, 0x23, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69,
- 0x70, 0x61, 0x72, 0x74, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x2d,
- 0x73, 0x65, 0x74, 0x0a, 0x23, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70,
- 0x61, 0x72, 0x74, 0x2f, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x0a, 0x23, 0x20,
- 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x2f, 0x70, 0x61,
- 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x0a, 0x23, 0x20, 0x6d, 0x75, 0x6c,
- 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x2f, 0x72, 0x65, 0x6c, 0x61, 0x74,
- 0x65, 0x64, 0x0a, 0x23, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61,
- 0x72, 0x74, 0x2f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x0a, 0x23, 0x20,
- 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x2f, 0x73, 0x69,
- 0x67, 0x6e, 0x65, 0x64, 0x0a, 0x23, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69,
- 0x70, 0x61, 0x72, 0x74, 0x2f, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x2d, 0x6d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78,
- 0x74, 0x2f, 0x31, 0x64, 0x2d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6c, 0x65,
- 0x61, 0x76, 0x65, 0x64, 0x2d, 0x70, 0x61, 0x72, 0x69, 0x74, 0x79, 0x66,
- 0x65, 0x63, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63, 0x61, 0x63, 0x68,
- 0x65, 0x2d, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x09, 0x09,
- 0x09, 0x09, 0x61, 0x70, 0x70, 0x63, 0x61, 0x63, 0x68, 0x65, 0x0a, 0x74,
- 0x65, 0x78, 0x74, 0x2f, 0x63, 0x61, 0x6c, 0x65, 0x6e, 0x64, 0x61, 0x72,
- 0x09, 0x09, 0x09, 0x09, 0x09, 0x69, 0x63, 0x73, 0x20, 0x69, 0x66, 0x62,
- 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73, 0x09, 0x09, 0x09,
- 0x09, 0x09, 0x63, 0x73, 0x73, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63,
- 0x73, 0x76, 0x09, 0x09, 0x09, 0x09, 0x09, 0x63, 0x73, 0x76, 0x0a, 0x23,
- 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
- 0x6f, 0x72, 0x79, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x64,
- 0x6e, 0x73, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x65, 0x63,
- 0x6d, 0x61, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x0a, 0x23, 0x20, 0x74,
- 0x65, 0x78, 0x74, 0x2f, 0x65, 0x6e, 0x72, 0x69, 0x63, 0x68, 0x65, 0x64,
- 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x65, 0x78, 0x61, 0x6d,
- 0x70, 0x6c, 0x65, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x66,
- 0x77, 0x64, 0x72, 0x65, 0x64, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x68,
- 0x74, 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x09, 0x68, 0x74, 0x6d, 0x6c,
- 0x20, 0x68, 0x74, 0x6d, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f,
- 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x0a, 0x74,
- 0x65, 0x78, 0x74, 0x2f, 0x6e, 0x33, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09,
- 0x6e, 0x33, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x70, 0x61,
- 0x72, 0x69, 0x74, 0x79, 0x66, 0x65, 0x63, 0x0a, 0x74, 0x65, 0x78, 0x74,
- 0x2f, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x09, 0x09, 0x09, 0x09, 0x09, 0x74,
- 0x78, 0x74, 0x20, 0x74, 0x65, 0x78, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x66,
- 0x20, 0x64, 0x65, 0x66, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6c, 0x6f,
- 0x67, 0x20, 0x69, 0x6e, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f,
- 0x70, 0x72, 0x73, 0x2e, 0x66, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x73, 0x74,
- 0x65, 0x69, 0x6e, 0x2e, 0x72, 0x73, 0x74, 0x0a, 0x74, 0x65, 0x78, 0x74,
- 0x2f, 0x70, 0x72, 0x73, 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2e, 0x74,
- 0x61, 0x67, 0x09, 0x09, 0x09, 0x09, 0x64, 0x73, 0x63, 0x0a, 0x23, 0x20,
- 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x72, 0x61, 0x64,
- 0x69, 0x73, 0x79, 0x73, 0x2e, 0x6d, 0x73, 0x6d, 0x6c, 0x2d, 0x62, 0x61,
- 0x73, 0x69, 0x63, 0x2d, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x0a, 0x23,
- 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x72, 0x65, 0x64, 0x0a, 0x23, 0x20,
- 0x74, 0x65, 0x78, 0x74, 0x2f, 0x72, 0x66, 0x63, 0x38, 0x32, 0x32, 0x2d,
- 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x0a, 0x74, 0x65, 0x78, 0x74,
- 0x2f, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x78, 0x74, 0x09, 0x09, 0x09,
- 0x09, 0x09, 0x72, 0x74, 0x78, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74,
- 0x2f, 0x72, 0x74, 0x66, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f,
- 0x72, 0x74, 0x70, 0x2d, 0x65, 0x6e, 0x63, 0x2d, 0x61, 0x65, 0x73, 0x63,
- 0x6d, 0x31, 0x32, 0x38, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f,
- 0x72, 0x74, 0x78, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x73, 0x67, 0x6d,
- 0x6c, 0x09, 0x09, 0x09, 0x09, 0x09, 0x73, 0x67, 0x6d, 0x6c, 0x20, 0x73,
- 0x67, 0x6d, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x74, 0x31,
- 0x34, 0x30, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x74, 0x61, 0x62, 0x2d,
- 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x2d, 0x76, 0x61,
- 0x6c, 0x75, 0x65, 0x73, 0x09, 0x09, 0x09, 0x74, 0x73, 0x76, 0x0a, 0x74,
- 0x65, 0x78, 0x74, 0x2f, 0x74, 0x72, 0x6f, 0x66, 0x66, 0x09, 0x09, 0x09,
- 0x09, 0x09, 0x74, 0x20, 0x74, 0x72, 0x20, 0x72, 0x6f, 0x66, 0x66, 0x20,
- 0x6d, 0x61, 0x6e, 0x20, 0x6d, 0x65, 0x20, 0x6d, 0x73, 0x0a, 0x74, 0x65,
- 0x78, 0x74, 0x2f, 0x74, 0x75, 0x72, 0x74, 0x6c, 0x65, 0x09, 0x09, 0x09,
- 0x09, 0x09, 0x74, 0x74, 0x6c, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74,
- 0x2f, 0x75, 0x6c, 0x70, 0x66, 0x65, 0x63, 0x0a, 0x74, 0x65, 0x78, 0x74,
- 0x2f, 0x75, 0x72, 0x69, 0x2d, 0x6c, 0x69, 0x73, 0x74, 0x09, 0x09, 0x09,
- 0x09, 0x09, 0x75, 0x72, 0x69, 0x20, 0x75, 0x72, 0x69, 0x73, 0x20, 0x75,
- 0x72, 0x6c, 0x73, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x63, 0x61,
- 0x72, 0x64, 0x09, 0x09, 0x09, 0x09, 0x09, 0x76, 0x63, 0x61, 0x72, 0x64,
- 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x61, 0x62, 0x63, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x63, 0x75, 0x72, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x09, 0x63, 0x75,
- 0x72, 0x6c, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x63, 0x75, 0x72, 0x6c, 0x2e, 0x64, 0x63, 0x75, 0x72, 0x6c, 0x09, 0x09,
- 0x09, 0x09, 0x64, 0x63, 0x75, 0x72, 0x6c, 0x0a, 0x74, 0x65, 0x78, 0x74,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x75, 0x72, 0x6c, 0x2e, 0x73, 0x63,
- 0x75, 0x72, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x73, 0x63, 0x75, 0x72, 0x6c,
- 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x63, 0x75,
- 0x72, 0x6c, 0x2e, 0x6d, 0x63, 0x75, 0x72, 0x6c, 0x09, 0x09, 0x09, 0x09,
- 0x6d, 0x63, 0x75, 0x72, 0x6c, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x6d, 0x63, 0x6c, 0x69, 0x65, 0x6e,
- 0x74, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x0a, 0x74, 0x65, 0x78, 0x74,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x76, 0x62, 0x2e, 0x73, 0x75, 0x62,
- 0x74, 0x69, 0x74, 0x6c, 0x65, 0x09, 0x09, 0x09, 0x09, 0x73, 0x75, 0x62,
- 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x65, 0x73, 0x6d, 0x65, 0x72, 0x74, 0x65, 0x63, 0x2e, 0x74, 0x68, 0x65,
- 0x6d, 0x65, 0x2d, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f,
- 0x72, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66,
- 0x6c, 0x79, 0x09, 0x09, 0x09, 0x09, 0x09, 0x66, 0x6c, 0x79, 0x0a, 0x74,
- 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x66, 0x6d, 0x69, 0x2e,
- 0x66, 0x6c, 0x65, 0x78, 0x73, 0x74, 0x6f, 0x72, 0x09, 0x09, 0x09, 0x09,
- 0x66, 0x6c, 0x78, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x76, 0x69, 0x7a, 0x09, 0x09, 0x09,
- 0x09, 0x67, 0x76, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x69, 0x6e, 0x33, 0x64, 0x2e, 0x33, 0x64, 0x6d, 0x6c, 0x09, 0x09,
- 0x09, 0x09, 0x33, 0x64, 0x6d, 0x6c, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x6e, 0x33, 0x64, 0x2e, 0x73, 0x70, 0x6f,
- 0x74, 0x09, 0x09, 0x09, 0x09, 0x73, 0x70, 0x6f, 0x74, 0x0a, 0x23, 0x20,
- 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x70, 0x74,
- 0x63, 0x2e, 0x6e, 0x65, 0x77, 0x73, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x74,
- 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x70, 0x74, 0x63,
- 0x2e, 0x6e, 0x69, 0x74, 0x66, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6c, 0x61, 0x74, 0x65, 0x78, 0x2d, 0x7a,
- 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x6d, 0x6f, 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x61, 0x2e, 0x72, 0x65, 0x66,
- 0x6c, 0x65, 0x78, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x70,
- 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78,
- 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x32, 0x70, 0x68,
- 0x6f, 0x6e, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x63, 0x65, 0x6e, 0x74,
- 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x0a, 0x23,
- 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x69,
- 0x2e, 0x75, 0x72, 0x69, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x75,
- 0x65, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73,
- 0x75, 0x6e, 0x2e, 0x6a, 0x32, 0x6d, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x2d,
- 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x09, 0x09,
- 0x6a, 0x61, 0x64, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x74, 0x65, 0x63, 0x68,
- 0x2e, 0x6c, 0x69, 0x6e, 0x67, 0x75, 0x69, 0x73, 0x74, 0x0a, 0x23, 0x20,
- 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x61, 0x70,
- 0x2e, 0x73, 0x69, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x76,
- 0x6e, 0x64, 0x2e, 0x77, 0x61, 0x70, 0x2e, 0x73, 0x6c, 0x0a, 0x74, 0x65,
- 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x61, 0x70, 0x2e, 0x77,
- 0x6d, 0x6c, 0x09, 0x09, 0x09, 0x09, 0x77, 0x6d, 0x6c, 0x0a, 0x74, 0x65,
- 0x78, 0x74, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x77, 0x61, 0x70, 0x2e, 0x77,
- 0x6d, 0x6c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x09, 0x09, 0x09, 0x09,
- 0x77, 0x6d, 0x6c, 0x73, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x78, 0x2d,
- 0x61, 0x73, 0x6d, 0x09, 0x09, 0x09, 0x09, 0x09, 0x73, 0x20, 0x61, 0x73,
- 0x6d, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x78, 0x2d, 0x63, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x63, 0x20, 0x63, 0x63, 0x20, 0x63, 0x78, 0x78, 0x20,
- 0x63, 0x70, 0x70, 0x20, 0x68, 0x20, 0x68, 0x68, 0x20, 0x64, 0x69, 0x63,
- 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x78, 0x2d, 0x66, 0x6f, 0x72, 0x74,
- 0x72, 0x61, 0x6e, 0x09, 0x09, 0x09, 0x09, 0x09, 0x66, 0x20, 0x66, 0x6f,
- 0x72, 0x20, 0x66, 0x37, 0x37, 0x20, 0x66, 0x39, 0x30, 0x0a, 0x74, 0x65,
- 0x78, 0x74, 0x2f, 0x78, 0x2d, 0x6a, 0x61, 0x76, 0x61, 0x2d, 0x73, 0x6f,
- 0x75, 0x72, 0x63, 0x65, 0x09, 0x09, 0x09, 0x09, 0x6a, 0x61, 0x76, 0x61,
- 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x78, 0x2d, 0x6f, 0x70, 0x6d, 0x6c,
- 0x09, 0x09, 0x09, 0x09, 0x09, 0x6f, 0x70, 0x6d, 0x6c, 0x0a, 0x74, 0x65,
- 0x78, 0x74, 0x2f, 0x78, 0x2d, 0x70, 0x61, 0x73, 0x63, 0x61, 0x6c, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x70, 0x20, 0x70, 0x61, 0x73, 0x0a, 0x74, 0x65,
- 0x78, 0x74, 0x2f, 0x78, 0x2d, 0x6e, 0x66, 0x6f, 0x09, 0x09, 0x09, 0x09,
- 0x09, 0x6e, 0x66, 0x6f, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x78, 0x2d,
- 0x73, 0x65, 0x74, 0x65, 0x78, 0x74, 0x09, 0x09, 0x09, 0x09, 0x09, 0x65,
- 0x74, 0x78, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x78, 0x2d, 0x73, 0x66,
- 0x76, 0x09, 0x09, 0x09, 0x09, 0x09, 0x73, 0x66, 0x76, 0x0a, 0x74, 0x65,
- 0x78, 0x74, 0x2f, 0x78, 0x2d, 0x75, 0x75, 0x65, 0x6e, 0x63, 0x6f, 0x64,
- 0x65, 0x09, 0x09, 0x09, 0x09, 0x09, 0x75, 0x75, 0x0a, 0x74, 0x65, 0x78,
- 0x74, 0x2f, 0x78, 0x2d, 0x76, 0x63, 0x61, 0x6c, 0x65, 0x6e, 0x64, 0x61,
- 0x72, 0x09, 0x09, 0x09, 0x09, 0x76, 0x63, 0x73, 0x0a, 0x74, 0x65, 0x78,
- 0x74, 0x2f, 0x78, 0x2d, 0x76, 0x63, 0x61, 0x72, 0x64, 0x09, 0x09, 0x09,
- 0x09, 0x09, 0x76, 0x63, 0x66, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74,
- 0x2f, 0x78, 0x6d, 0x6c, 0x0a, 0x23, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2f,
- 0x78, 0x6d, 0x6c, 0x2d, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
- 0x2d, 0x70, 0x61, 0x72, 0x73, 0x65, 0x64, 0x2d, 0x65, 0x6e, 0x74, 0x69,
- 0x74, 0x79, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x31,
- 0x64, 0x2d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6c, 0x65, 0x61, 0x76, 0x65,
- 0x64, 0x2d, 0x70, 0x61, 0x72, 0x69, 0x74, 0x79, 0x66, 0x65, 0x63, 0x0a,
- 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x33, 0x67, 0x70, 0x70, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x33, 0x67, 0x70, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64,
- 0x65, 0x6f, 0x2f, 0x33, 0x67, 0x70, 0x70, 0x2d, 0x74, 0x74, 0x0a, 0x76,
- 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x33, 0x67, 0x70, 0x70, 0x32, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x33, 0x67, 0x32, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64,
- 0x65, 0x6f, 0x2f, 0x62, 0x6d, 0x70, 0x65, 0x67, 0x0a, 0x23, 0x20, 0x76,
- 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x62, 0x74, 0x36, 0x35, 0x36, 0x0a, 0x23,
- 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x63, 0x65, 0x6c, 0x62, 0x0a,
- 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x64, 0x76, 0x0a, 0x23,
- 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x65, 0x78, 0x61, 0x6d, 0x70,
- 0x6c, 0x65, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x68, 0x32, 0x36,
- 0x31, 0x09, 0x09, 0x09, 0x09, 0x09, 0x68, 0x32, 0x36, 0x31, 0x0a, 0x76,
- 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x68, 0x32, 0x36, 0x33, 0x09, 0x09, 0x09,
- 0x09, 0x09, 0x68, 0x32, 0x36, 0x33, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64,
- 0x65, 0x6f, 0x2f, 0x68, 0x32, 0x36, 0x33, 0x2d, 0x31, 0x39, 0x39, 0x38,
- 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x68, 0x32, 0x36,
- 0x33, 0x2d, 0x32, 0x30, 0x30, 0x30, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f,
- 0x2f, 0x68, 0x32, 0x36, 0x34, 0x09, 0x09, 0x09, 0x09, 0x09, 0x68, 0x32,
- 0x36, 0x34, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x68,
- 0x32, 0x36, 0x34, 0x2d, 0x72, 0x63, 0x64, 0x6f, 0x0a, 0x23, 0x20, 0x76,
- 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x68, 0x32, 0x36, 0x34, 0x2d, 0x73, 0x76,
- 0x63, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x6a, 0x70, 0x65, 0x67,
- 0x09, 0x09, 0x09, 0x09, 0x09, 0x6a, 0x70, 0x67, 0x76, 0x0a, 0x23, 0x20,
- 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x6a, 0x70, 0x65, 0x67, 0x32, 0x30,
- 0x30, 0x30, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x6a, 0x70, 0x6d,
- 0x09, 0x09, 0x09, 0x09, 0x09, 0x6a, 0x70, 0x6d, 0x20, 0x6a, 0x70, 0x67,
- 0x6d, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x6d, 0x6a, 0x32, 0x09,
- 0x09, 0x09, 0x09, 0x09, 0x6d, 0x6a, 0x32, 0x20, 0x6d, 0x6a, 0x70, 0x32,
- 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x6d, 0x70, 0x31,
- 0x73, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x6d, 0x70,
- 0x32, 0x70, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x6d,
- 0x70, 0x32, 0x74, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x6d, 0x70,
- 0x34, 0x09, 0x09, 0x09, 0x09, 0x09, 0x6d, 0x70, 0x34, 0x20, 0x6d, 0x70,
- 0x34, 0x76, 0x20, 0x6d, 0x70, 0x67, 0x34, 0x0a, 0x23, 0x20, 0x76, 0x69,
- 0x64, 0x65, 0x6f, 0x2f, 0x6d, 0x70, 0x34, 0x76, 0x2d, 0x65, 0x73, 0x0a,
- 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x6d, 0x70, 0x65, 0x67, 0x09, 0x09,
- 0x09, 0x09, 0x09, 0x6d, 0x70, 0x65, 0x67, 0x20, 0x6d, 0x70, 0x67, 0x20,
- 0x6d, 0x70, 0x65, 0x20, 0x6d, 0x31, 0x76, 0x20, 0x6d, 0x32, 0x76, 0x0a,
- 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x6d, 0x70, 0x65, 0x67,
- 0x34, 0x2d, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x0a, 0x23, 0x20,
- 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x6d, 0x70, 0x76, 0x0a, 0x23, 0x20,
- 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x6e, 0x76, 0x0a, 0x76, 0x69, 0x64,
- 0x65, 0x6f, 0x2f, 0x6f, 0x67, 0x67, 0x09, 0x09, 0x09, 0x09, 0x09, 0x6f,
- 0x67, 0x76, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x70,
- 0x61, 0x72, 0x69, 0x74, 0x79, 0x66, 0x65, 0x63, 0x0a, 0x23, 0x20, 0x76,
- 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72,
- 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x71, 0x75, 0x69, 0x63, 0x6b,
- 0x74, 0x69, 0x6d, 0x65, 0x09, 0x09, 0x09, 0x09, 0x09, 0x71, 0x74, 0x20,
- 0x6d, 0x6f, 0x76, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f,
- 0x72, 0x61, 0x77, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f,
- 0x72, 0x74, 0x70, 0x2d, 0x65, 0x6e, 0x63, 0x2d, 0x61, 0x65, 0x73, 0x63,
- 0x6d, 0x31, 0x32, 0x38, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f,
- 0x2f, 0x72, 0x74, 0x78, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f,
- 0x2f, 0x73, 0x6d, 0x70, 0x74, 0x65, 0x32, 0x39, 0x32, 0x6d, 0x0a, 0x23,
- 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x75, 0x6c, 0x70, 0x66, 0x65,
- 0x63, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x63,
- 0x31, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x63, 0x63, 0x74, 0x76, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x65, 0x63, 0x65, 0x2e, 0x68, 0x64,
- 0x09, 0x09, 0x09, 0x09, 0x75, 0x76, 0x68, 0x20, 0x75, 0x76, 0x76, 0x68,
- 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64,
- 0x65, 0x63, 0x65, 0x2e, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x09, 0x09,
- 0x09, 0x09, 0x75, 0x76, 0x6d, 0x20, 0x75, 0x76, 0x76, 0x6d, 0x0a, 0x23,
- 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64,
- 0x65, 0x63, 0x65, 0x2e, 0x6d, 0x70, 0x34, 0x0a, 0x76, 0x69, 0x64, 0x65,
- 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x65, 0x63, 0x65, 0x2e, 0x70,
- 0x64, 0x09, 0x09, 0x09, 0x09, 0x75, 0x76, 0x70, 0x20, 0x75, 0x76, 0x76,
- 0x70, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x64, 0x65, 0x63, 0x65, 0x2e, 0x73, 0x64, 0x09, 0x09, 0x09, 0x09, 0x75,
- 0x76, 0x73, 0x20, 0x75, 0x76, 0x76, 0x73, 0x0a, 0x76, 0x69, 0x64, 0x65,
- 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x65, 0x63, 0x65, 0x2e, 0x76,
- 0x69, 0x64, 0x65, 0x6f, 0x09, 0x09, 0x09, 0x09, 0x75, 0x76, 0x76, 0x20,
- 0x75, 0x76, 0x76, 0x76, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x76,
- 0x2e, 0x6d, 0x70, 0x65, 0x67, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65,
- 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
- 0x76, 0x2e, 0x6d, 0x70, 0x65, 0x67, 0x2d, 0x74, 0x74, 0x73, 0x0a, 0x23,
- 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64,
- 0x6c, 0x6e, 0x61, 0x2e, 0x6d, 0x70, 0x65, 0x67, 0x2d, 0x74, 0x74, 0x73,
- 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x64,
- 0x76, 0x62, 0x2e, 0x66, 0x69, 0x6c, 0x65, 0x09, 0x09, 0x09, 0x09, 0x64,
- 0x76, 0x62, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x66, 0x76, 0x74, 0x09, 0x09, 0x09, 0x09, 0x09, 0x66, 0x76, 0x74,
- 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x68, 0x6e, 0x73, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x0a, 0x23,
- 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69,
- 0x70, 0x74, 0x76, 0x66, 0x6f, 0x72, 0x75, 0x6d, 0x2e, 0x31, 0x64, 0x70,
- 0x61, 0x72, 0x69, 0x74, 0x79, 0x66, 0x65, 0x63, 0x2d, 0x31, 0x30, 0x31,
- 0x30, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x69, 0x70, 0x74, 0x76, 0x66, 0x6f, 0x72, 0x75, 0x6d, 0x2e,
- 0x31, 0x64, 0x70, 0x61, 0x72, 0x69, 0x74, 0x79, 0x66, 0x65, 0x63, 0x2d,
- 0x32, 0x30, 0x30, 0x35, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x70, 0x74, 0x76, 0x66, 0x6f, 0x72,
- 0x75, 0x6d, 0x2e, 0x32, 0x64, 0x70, 0x61, 0x72, 0x69, 0x74, 0x79, 0x66,
- 0x65, 0x63, 0x2d, 0x31, 0x30, 0x31, 0x30, 0x0a, 0x23, 0x20, 0x76, 0x69,
- 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x70, 0x74, 0x76,
- 0x66, 0x6f, 0x72, 0x75, 0x6d, 0x2e, 0x32, 0x64, 0x70, 0x61, 0x72, 0x69,
- 0x74, 0x79, 0x66, 0x65, 0x63, 0x2d, 0x32, 0x30, 0x30, 0x35, 0x0a, 0x23,
- 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x69,
- 0x70, 0x74, 0x76, 0x66, 0x6f, 0x72, 0x75, 0x6d, 0x2e, 0x74, 0x74, 0x73,
- 0x61, 0x76, 0x63, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x69, 0x70, 0x74, 0x76, 0x66, 0x6f, 0x72, 0x75,
- 0x6d, 0x2e, 0x74, 0x74, 0x73, 0x6d, 0x70, 0x65, 0x67, 0x32, 0x0a, 0x23,
- 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d,
- 0x6f, 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x61, 0x2e, 0x76, 0x69, 0x64, 0x65,
- 0x6f, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e,
- 0x64, 0x2e, 0x6d, 0x6f, 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x61, 0x2e, 0x76,
- 0x69, 0x64, 0x65, 0x6f, 0x70, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f,
- 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x70, 0x65, 0x67, 0x75, 0x72, 0x6c, 0x09,
- 0x09, 0x09, 0x09, 0x6d, 0x78, 0x75, 0x20, 0x6d, 0x34, 0x75, 0x0a, 0x76,
- 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6d, 0x73, 0x2d,
- 0x70, 0x6c, 0x61, 0x79, 0x72, 0x65, 0x61, 0x64, 0x79, 0x2e, 0x6d, 0x65,
- 0x64, 0x69, 0x61, 0x2e, 0x70, 0x79, 0x76, 0x09, 0x09, 0x70, 0x79, 0x76,
- 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64,
- 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72,
- 0x6c, 0x65, 0x61, 0x76, 0x65, 0x64, 0x2d, 0x6d, 0x75, 0x6c, 0x74, 0x69,
- 0x6d, 0x65, 0x64, 0x69, 0x61, 0x0a, 0x23, 0x20, 0x76, 0x69, 0x64, 0x65,
- 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6e, 0x6f, 0x6b, 0x69, 0x61, 0x2e,
- 0x76, 0x69, 0x64, 0x65, 0x6f, 0x76, 0x6f, 0x69, 0x70, 0x0a, 0x23, 0x20,
- 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x6f, 0x62,
- 0x6a, 0x65, 0x63, 0x74, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x0a, 0x23, 0x20,
- 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73, 0x65,
- 0x61, 0x6c, 0x65, 0x64, 0x2e, 0x6d, 0x70, 0x65, 0x67, 0x31, 0x0a, 0x23,
- 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73,
- 0x65, 0x61, 0x6c, 0x65, 0x64, 0x2e, 0x6d, 0x70, 0x65, 0x67, 0x34, 0x0a,
- 0x23, 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e,
- 0x73, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x2e, 0x73, 0x77, 0x66, 0x0a, 0x23,
- 0x20, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x73,
- 0x65, 0x61, 0x6c, 0x65, 0x64, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x2e, 0x73,
- 0x6f, 0x66, 0x74, 0x73, 0x65, 0x61, 0x6c, 0x2e, 0x6d, 0x6f, 0x76, 0x0a,
- 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x75, 0x76,
- 0x76, 0x75, 0x2e, 0x6d, 0x70, 0x34, 0x09, 0x09, 0x09, 0x09, 0x75, 0x76,
- 0x75, 0x20, 0x75, 0x76, 0x76, 0x75, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f,
- 0x2f, 0x76, 0x6e, 0x64, 0x2e, 0x76, 0x69, 0x76, 0x6f, 0x09, 0x09, 0x09,
- 0x09, 0x09, 0x76, 0x69, 0x76, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f,
- 0x77, 0x65, 0x62, 0x6d, 0x09, 0x09, 0x09, 0x09, 0x09, 0x77, 0x65, 0x62,
- 0x6d, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x78, 0x2d, 0x66, 0x34,
- 0x76, 0x09, 0x09, 0x09, 0x09, 0x09, 0x66, 0x34, 0x76, 0x0a, 0x76, 0x69,
- 0x64, 0x65, 0x6f, 0x2f, 0x78, 0x2d, 0x66, 0x6c, 0x69, 0x09, 0x09, 0x09,
- 0x09, 0x09, 0x66, 0x6c, 0x69, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f,
- 0x78, 0x2d, 0x66, 0x6c, 0x76, 0x09, 0x09, 0x09, 0x09, 0x09, 0x66, 0x6c,
- 0x76, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x78, 0x2d, 0x6d, 0x34,
- 0x76, 0x09, 0x09, 0x09, 0x09, 0x09, 0x6d, 0x34, 0x76, 0x0a, 0x76, 0x69,
- 0x64, 0x65, 0x6f, 0x2f, 0x78, 0x2d, 0x6d, 0x61, 0x74, 0x72, 0x6f, 0x73,
- 0x6b, 0x61, 0x09, 0x09, 0x09, 0x09, 0x6d, 0x6b, 0x76, 0x20, 0x6d, 0x6b,
- 0x33, 0x64, 0x20, 0x6d, 0x6b, 0x73, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f,
- 0x2f, 0x78, 0x2d, 0x6d, 0x6e, 0x67, 0x09, 0x09, 0x09, 0x09, 0x09, 0x6d,
- 0x6e, 0x67, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x78, 0x2d, 0x6d,
- 0x73, 0x2d, 0x61, 0x73, 0x66, 0x09, 0x09, 0x09, 0x09, 0x09, 0x61, 0x73,
- 0x66, 0x20, 0x61, 0x73, 0x78, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f,
- 0x78, 0x2d, 0x6d, 0x73, 0x2d, 0x76, 0x6f, 0x62, 0x09, 0x09, 0x09, 0x09,
- 0x09, 0x76, 0x6f, 0x62, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x78,
- 0x2d, 0x6d, 0x73, 0x2d, 0x77, 0x6d, 0x09, 0x09, 0x09, 0x09, 0x09, 0x77,
- 0x6d, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x78, 0x2d, 0x6d, 0x73,
- 0x2d, 0x77, 0x6d, 0x76, 0x09, 0x09, 0x09, 0x09, 0x09, 0x77, 0x6d, 0x76,
- 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x78, 0x2d, 0x6d, 0x73, 0x2d,
- 0x77, 0x6d, 0x78, 0x09, 0x09, 0x09, 0x09, 0x09, 0x77, 0x6d, 0x78, 0x0a,
- 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x78, 0x2d, 0x6d, 0x73, 0x2d, 0x77,
- 0x76, 0x78, 0x09, 0x09, 0x09, 0x09, 0x09, 0x77, 0x76, 0x78, 0x0a, 0x76,
- 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x78, 0x2d, 0x6d, 0x73, 0x76, 0x69, 0x64,
- 0x65, 0x6f, 0x09, 0x09, 0x09, 0x09, 0x09, 0x61, 0x76, 0x69, 0x0a, 0x76,
- 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x78, 0x2d, 0x73, 0x67, 0x69, 0x2d, 0x6d,
- 0x6f, 0x76, 0x69, 0x65, 0x09, 0x09, 0x09, 0x09, 0x6d, 0x6f, 0x76, 0x69,
- 0x65, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x78, 0x2d, 0x73, 0x6d,
- 0x76, 0x09, 0x09, 0x09, 0x09, 0x09, 0x73, 0x6d, 0x76, 0x0a, 0x78, 0x2d,
- 0x63, 0x6f, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x2f, 0x78,
- 0x2d, 0x63, 0x6f, 0x6f, 0x6c, 0x74, 0x61, 0x6c, 0x6b, 0x09, 0x09, 0x09,
- 0x09, 0x69, 0x63, 0x65, 0x0a
-};
-static unsigned int mime_types_len = 53009;
diff --git a/protocols/Telegram/src/tgl/mtproto-client.c b/protocols/Telegram/src/tgl/mtproto-client.c
deleted file mode 100644
index 37530b5afb..0000000000
--- a/protocols/Telegram/src/tgl/mtproto-client.c
+++ /dev/null
@@ -1,1489 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Nikolay Durov, Andrey Lopatin 2012-2013
- Vitaly Valtman 2013-2015
-*/
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#define _FILE_OFFSET_BITS 64
-
-#include <assert.h>
-#include <string.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <signal.h>
-#if defined(WIN32) || defined(_WIN32)
-#include <io.h>
-#include <stdint.h>
-#include <winsock2.h>
-#include <ws2tcpip.h>
-#define WIN32_LEAN_AND_MEAN
-#include <windows.h>
-#undef WIN32_LEAN_AND_MEAN
-#else
-#include <unistd.h>
-#include <netdb.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <netinet/tcp.h>
-#include <poll.h>
-#endif
-#include <fcntl.h>
-#if defined(__FreeBSD__) || defined(__OpenBSD__)
-#include <sys/endian.h>
-#endif
-#include <sys/types.h>
-#include <openssl/rand.h>
-#include <openssl/rsa.h>
-#include <openssl/pem.h>
-#include <openssl/sha.h>
-
-//#include "telegram.h"
-#include "queries.h"
-//#include "loop.h"
-#include "tgl-structures.h"
-#include "tgl-binlog.h"
-#include "auto.h"
-#include "auto/auto-types.h"
-#include "auto/auto-skip.h"
-#include "tgl.h"
-#include "mtproto-client.h"
-#include "tools.h"
-#include "tree.h"
-#include "updates.h"
-#include "mtproto-utils.h"
-#include "auto.h"
-#include "tgl-methods-in.h"
-
-#if defined(__FreeBSD__)
-#define __builtin_bswap32(x) bswap32(x)
-#endif
-
-#if defined(__OpenBSD__)
-#define __builtin_bswap32(x) __swap32gen(x)
-#endif
-
-#define sha1 SHA1
-
-#include "mtproto-common.h"
-
-#define MAX_NET_RES (1L << 16)
-//extern int log_level;
-
-static long long generate_next_msg_id (struct tgl_state *TLS, struct tgl_dc *DC, struct tgl_session *S);
-static double get_server_time (struct tgl_dc *DC);
-
-#if !defined(HAVE___BUILTIN_BSWAP32) && !defined(__FreeBSD__) && !defined(__OpenBSD__)
-static inline unsigned __builtin_bswap32(unsigned x) {
- return ((x << 24) & 0xff000000 ) |
- ((x << 8) & 0x00ff0000 ) |
- ((x >> 8) & 0x0000ff00 ) |
- ((x >> 24) & 0x000000ff );
-}
-#endif
-
-// for statistic only
-static int total_packets_sent;
-static long long total_data_sent;
-
-
-static int rpc_execute (struct tgl_state *TLS, struct connection *c, int op, int len);
-static int rpc_becomes_ready (struct tgl_state *TLS, struct connection *c);
-static int rpc_close (struct tgl_state *TLS, struct connection *c);
-
-static double get_utime (int clock_id) {
- struct timespec T;
- tgl_my_clock_gettime (clock_id, &T);
- return T.tv_sec + (double) T.tv_nsec * 1e-9;
-}
-
-
-#define MAX_RESPONSE_SIZE (1L << 24)
-
-static RSA *rsa_load_public_key (struct tgl_state *TLS, const char *public_key_name) {
-#if defined(_MSC_VER) && _MSC_VER >= 1400
- FILE * f = NULL;
- errno_t err = fopen_s(&f, public_key_name, "r");
- if (err != 0) {
-#else
- FILE *f = fopen (public_key_name, "r");
- if (f == NULL) {
-#endif
- vlogprintf (E_WARNING, "Couldn't open public key file: %s\n", public_key_name);
- return NULL;
- }
- RSA *res = PEM_read_RSAPublicKey (f, NULL, NULL, NULL);
- fclose (f);
- if (res == NULL) {
- vlogprintf (E_WARNING, "PEM_read_RSAPublicKey returns NULL.\n");
- return NULL;
- }
-
- vlogprintf (E_NOTICE, "public key '%s' loaded successfully\n", public_key_name);
-
- return res;
-}
-
-
-
-
-/*
- *
- * UNAUTHORIZED (DH KEY EXCHANGE) PROTOCOL PART
- *
- */
-
-#define ENCRYPT_BUFFER_INTS 16384
-static int encrypt_buffer[ENCRYPT_BUFFER_INTS];
-
-#define DECRYPT_BUFFER_INTS 16384
-static int decrypt_buffer[ENCRYPT_BUFFER_INTS];
-
-static int encrypt_packet_buffer (struct tgl_state *TLS, struct tgl_dc *DC) {
- RSA *key = TLS->rsa_key_loaded[DC->rsa_key_idx];
- return tgl_pad_rsa_encrypt (TLS, (char *) packet_buffer, (packet_ptr - packet_buffer) * 4, (char *) encrypt_buffer, ENCRYPT_BUFFER_INTS * 4, key->n, key->e);
-}
-
-static int encrypt_packet_buffer_aes_unauth (const char server_nonce[16], const char hidden_client_nonce[32]) {
- tgl_init_aes_unauth (server_nonce, hidden_client_nonce, AES_ENCRYPT);
- return tgl_pad_aes_encrypt ((char *) packet_buffer, (packet_ptr - packet_buffer) * 4, (char *) encrypt_buffer, ENCRYPT_BUFFER_INTS * 4);
-}
-
-//
-// Used in unauthorized part of protocol
-//
-static int rpc_send_packet (struct tgl_state *TLS, struct connection *c) {
- static struct {
- long long auth_key_id;
- long long out_msg_id;
- int msg_len;
- } unenc_msg_header;
-
- int len = (packet_ptr - packet_buffer) * 4;
- TLS->net_methods->incr_out_packet_num (c);
-
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
- struct tgl_session *S = TLS->net_methods->get_session (c);
-
- unenc_msg_header.out_msg_id = generate_next_msg_id (TLS, DC, S);
- unenc_msg_header.msg_len = len;
-
- int total_len = len + 20;
- assert (total_len > 0 && !(total_len & 0xfc000003));
- total_len >>= 2;
- vlogprintf (E_DEBUG, "writing packet: total_len = %d, len = %d\n", total_len, len);
- if (total_len < 0x7f) {
- assert (TLS->net_methods->write_out (c, &total_len, 1) == 1);
- } else {
- total_len = (total_len << 8) | 0x7f;
- assert (TLS->net_methods->write_out (c, &total_len, 4) == 4);
- }
- TLS->net_methods->write_out (c, &unenc_msg_header, 20);
- TLS->net_methods->write_out (c, packet_buffer, len);
- TLS->net_methods->flush_out (c);
-
- total_packets_sent ++;
- total_data_sent += total_len;
- return 1;
-}
-
-static int rpc_send_message (struct tgl_state *TLS, struct connection *c, void *data, int len) {
- assert (len > 0 && !(len & 0xfc000003));
-
- int total_len = len >> 2;
- if (total_len < 0x7f) {
- assert (TLS->net_methods->write_out (c, &total_len, 1) == 1);
- } else {
- total_len = (total_len << 8) | 0x7f;
- assert (TLS->net_methods->write_out (c, &total_len, 4) == 4);
- }
-
- TLS->net_methods->incr_out_packet_num (c);
- assert (TLS->net_methods->write_out (c, data, len) == len);
- TLS->net_methods->flush_out (c);
-
- total_packets_sent ++;
- total_data_sent += total_len;
- return 1;
-}
-
-//
-// State machine. See description at
-// https://core.telegram.org/mtproto/auth_key
-//
-
-
-static int check_unauthorized_header (struct tgl_state *TLS) {
- long long auth_key_id = fetch_long ();
- if (auth_key_id) {
- vlogprintf (E_ERROR, "ERROR: auth_key_id should be NULL\n");
- return -1;
- }
- fetch_long (); // msg_id
- int len = fetch_int ();
- if (len != 4 * (in_end - in_ptr)) {
- vlogprintf (E_ERROR, "ERROR: length mismatch\n");
- return -1;
- }
- return 0;
-}
-
-/* {{{ REQ_PQ */
-// req_pq#60469778 nonce:int128 = ResPQ
-static int send_req_pq_packet (struct tgl_state *TLS, struct connection *c) {
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
- assert (DC->state == st_init);
-
- tglt_secure_random (DC->nonce, 16);
- clear_packet ();
- out_int (CODE_req_pq);
- out_ints ((int *)DC->nonce, 4);
- rpc_send_packet (TLS, c);
-
- DC->state = st_reqpq_sent;
- return 1;
-}
-
-// req_pq#60469778 nonce:int128 = ResPQ
-static int send_req_pq_temp_packet (struct tgl_state *TLS, struct connection *c) {
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
- assert (DC->state == st_authorized);
-
- tglt_secure_random (DC->nonce, 16);
- clear_packet ();
- out_int (CODE_req_pq);
- out_ints ((int *)DC->nonce, 4);
- rpc_send_packet (TLS, c);
-
- DC->state = st_reqpq_sent_temp;
- return 1;
-}
-/* }}} */
-
-/* {{{ REQ DH */
-// req_DH_params#d712e4be nonce:int128 server_nonce:int128 p:string q:string public_key_fingerprint:long encrypted_data:string = Server_DH_Params;
-// p_q_inner_data#83c95aec pq:string p:string q:string nonce:int128 server_nonce:int128 new_nonce:int256 = P_Q_inner_data;
-// p_q_inner_data_temp#3c6a84d4 pq:string p:string q:string nonce:int128 server_nonce:int128 new_nonce:int256 expires_in:int = P_Q_inner_data;
-static void send_req_dh_packet (struct tgl_state *TLS, struct connection *c, BIGNUM *pq, int temp_key) {
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
-
- BIGNUM *p = BN_new ();
- BIGNUM *q = BN_new ();
- assert (bn_factorize (pq, p, q) >= 0);
-
- clear_packet ();
- packet_ptr += 5;
- out_int (temp_key ? CODE_p_q_inner_data_temp : CODE_p_q_inner_data);
-
- out_bignum (pq);
- out_bignum (p);
- out_bignum (q);
-
- out_ints ((int *) DC->nonce, 4);
- out_ints ((int *) DC->server_nonce, 4);
- tglt_secure_random (DC->new_nonce, 32);
- out_ints ((int *) DC->new_nonce, 8);
- if (temp_key) {
- out_int (TLS->temp_key_expire_time);
- }
- sha1 ((unsigned char *) (packet_buffer + 5), (packet_ptr - packet_buffer - 5) * 4, (unsigned char *) packet_buffer);
-
- int l = encrypt_packet_buffer (TLS, DC);
-
- clear_packet ();
- out_int (CODE_req_DH_params);
- out_ints ((int *) DC->nonce, 4);
- out_ints ((int *) DC->server_nonce, 4);
- out_bignum (p);
- out_bignum (q);
-
- out_long (TLS->rsa_key_fingerprint[DC->rsa_key_idx]);
- out_cstring ((char *) encrypt_buffer, l);
-
- BN_free (p);
- BN_free (q);
- DC->state = temp_key ? st_reqdh_sent_temp : st_reqdh_sent;
- rpc_send_packet (TLS, c);
-}
-/* }}} */
-
-/* {{{ SEND DH PARAMS */
-// set_client_DH_params#f5045f1f nonce:int128 server_nonce:int128 encrypted_data:string = Set_client_DH_params_answer;
-// client_DH_inner_data#6643b654 nonce:int128 server_nonce:int128 retry_id:long g_b:string = Client_DH_Inner_Data
-static void send_dh_params (struct tgl_state *TLS, struct connection *c, BIGNUM *dh_prime, BIGNUM *g_a, int g, int temp_key) {
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
-
- clear_packet ();
- packet_ptr += 5;
- out_int (CODE_client_DH_inner_data);
- out_ints ((int *) DC->nonce, 4);
- out_ints ((int *) DC->server_nonce, 4);
- out_long (0);
-
- BIGNUM *dh_g = BN_new ();
- ensure (BN_set_word (dh_g, g));
-
- static unsigned char s_power[256];
- tglt_secure_random (s_power, 256);
- BIGNUM *dh_power = BN_bin2bn ((unsigned char *)s_power, 256, 0);
- ensure_ptr (dh_power);
-
- BIGNUM *y = BN_new ();
- ensure_ptr (y);
- ensure (BN_mod_exp (y, dh_g, dh_power, dh_prime, TLS->BN_ctx));
- out_bignum (y);
- BN_free (y);
-
- BIGNUM *auth_key_num = BN_new ();
- ensure (BN_mod_exp (auth_key_num, g_a, dh_power, dh_prime, TLS->BN_ctx));
- int l = BN_num_bytes (auth_key_num);
- assert (l >= 250 && l <= 256);
- assert (BN_bn2bin (auth_key_num, (unsigned char *)(temp_key ? DC->temp_auth_key : DC->auth_key)));
- if (l < 256) {
- char *key = temp_key ? DC->temp_auth_key : DC->auth_key;
- memmove (key + 256 - l, key, l);
- memset (key, 0, 256 - l);
- }
-
- BN_free (dh_power);
- BN_free (auth_key_num);
- BN_free (dh_g);
-
- sha1 ((unsigned char *) (packet_buffer + 5), (packet_ptr - packet_buffer - 5) * 4, (unsigned char *) packet_buffer);
-
- l = encrypt_packet_buffer_aes_unauth (DC->server_nonce, DC->new_nonce);
-
- clear_packet ();
- out_int (CODE_set_client_DH_params);
- out_ints ((int *) DC->nonce, 4);
- out_ints ((int *) DC->server_nonce, 4);
- out_cstring ((char *) encrypt_buffer, l);
-
- DC->state = temp_key ? st_client_dh_sent_temp : st_client_dh_sent;;
- rpc_send_packet (TLS, c);
-}
-/* }}} */
-
-/* {{{ RECV RESPQ */
-// resPQ#05162463 nonce:int128 server_nonce:int128 pq:string server_public_key_fingerprints:Vector long = ResPQ
-static int process_respq_answer (struct tgl_state *TLS, struct connection *c, char *packet, int len, int temp_key) {
- assert (!(len & 3));
- in_ptr = (int *)packet;
- in_end = in_ptr + (len / 4);
- if (check_unauthorized_header (TLS) < 0) {
- return -1;
- }
-
- int *in_save = in_ptr;
- if (skip_type_any (TYPE_TO_PARAM (res_p_q)) < 0 || in_ptr != in_end) {
- vlogprintf (E_ERROR, "can not parse req_p_q answer\n");
- return -1;
- }
- in_ptr = in_save;
-
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
-
- assert (fetch_int() == CODE_res_p_q);
-
- static int tmp[4];
- fetch_ints (tmp, 4);
- if (memcmp (tmp, DC->nonce, 16)) {
- vlogprintf (E_ERROR, "nonce mismatch\n");
- return -1;
- }
- fetch_ints (DC->server_nonce, 4);
-
- BIGNUM *pq = BN_new ();
- assert (fetch_bignum (pq) >= 0);
-
- assert (fetch_int () == CODE_vector);
- int fingerprints_num = fetch_int ();
- assert (fingerprints_num >= 0);
- DC->rsa_key_idx = -1;
-
- int i;
- for (i = 0; i < fingerprints_num; i++) {
- int j;
- long long fprint = fetch_long ();
- for (j = 0; j < TLS->rsa_key_num; j++) {
- if (TLS->rsa_key_loaded[j]) {
- if (fprint == TLS->rsa_key_fingerprint[j]) {
- DC->rsa_key_idx = j;
- break;
- }
- }
- }
- }
- assert (in_ptr == in_end);
- if (DC->rsa_key_idx == -1) {
- vlogprintf (E_ERROR, "fatal: don't have any matching keys\n");
- return -1;
- }
-
- send_req_dh_packet (TLS, c, pq, temp_key);
-
- BN_free (pq);
- return 1;
-}
-/* }}} */
-
-/* {{{ RECV DH */
-// server_DH_params_fail#79cb045d nonce:int128 server_nonce:int128 new_nonce_hash:int128 = Server_DH_Params;
-// server_DH_params_ok#d0e8075c nonce:int128 server_nonce:int128 encrypted_answer:string = Server_DH_Params;
-// server_DH_inner_data#b5890dba nonce:int128 server_nonce:int128 g:int dh_prime:string g_a:string server_time:int = Server_DH_inner_data;
-static int process_dh_answer (struct tgl_state *TLS, struct connection *c, char *packet, int len, int temp_key) {
- assert (!(len & 3));
- in_ptr = (int *)packet;
- in_end = in_ptr + (len / 4);
- if (check_unauthorized_header (TLS) < 0) {
- return -1;
- }
-
- int *in_save = in_ptr;
- if (skip_type_any (TYPE_TO_PARAM (server_d_h_params)) < 0 || in_ptr != in_end) {
- vlogprintf (E_ERROR, "can not parse server_DH_params answer\n");
- return -1;
- }
- in_ptr = in_save;
-
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
-
- unsigned op = fetch_int ();
- assert (op == CODE_server__d_h_params_ok || op == CODE_server__d_h_params_fail);
-
- int tmp[4];
- fetch_ints (tmp, 4);
- if (memcmp (tmp, DC->nonce, 16)) {
- vlogprintf (E_ERROR, "nonce mismatch\n");
- return -1;
- }
- assert (!memcmp (tmp, DC->nonce, 16));
- fetch_ints (tmp, 4);
- if (memcmp (tmp, DC->server_nonce, 16)) {
- vlogprintf (E_ERROR, "nonce mismatch\n");
- return -1;
- }
- assert (!memcmp (tmp, DC->server_nonce, 16));
-
- if (op == CODE_server__d_h_params_fail) {
- vlogprintf (E_ERROR, "DH params fail\n");
- return -1;
- }
-
- tgl_init_aes_unauth (DC->server_nonce, DC->new_nonce, AES_DECRYPT);
-
- int l = prefetch_strlen ();
- assert (l >= 0);
- if (!l) {
- vlogprintf (E_ERROR, "non-empty encrypted part expected\n");
- return -1;
- }
- l = tgl_pad_aes_decrypt (fetch_str (l), l, (char *) decrypt_buffer, DECRYPT_BUFFER_INTS * 4 - 16);
- assert (in_ptr == in_end);
-
- in_ptr = decrypt_buffer + 5;
- in_end = decrypt_buffer + (l >> 2);
- if (skip_type_any (TYPE_TO_PARAM (server_d_h_inner_data)) < 0) {
- vlogprintf (E_ERROR, "can not parse server_DH_inner_data answer\n");
- return -1;
- }
- in_ptr = decrypt_buffer + 5;
-
- assert (fetch_int () == (int)CODE_server_DH_inner_data);
- fetch_ints (tmp, 4);
- if (memcmp (tmp, DC->nonce, 16)) {
- vlogprintf (E_ERROR, "nonce mismatch\n");
- return -1;
- }
- assert (!memcmp (tmp, DC->nonce, 16));
- fetch_ints (tmp, 4);
- if (memcmp (tmp, DC->server_nonce, 16)) {
- vlogprintf (E_ERROR, "nonce mismatch\n");
- return -1;
- }
- assert (!memcmp (tmp, DC->server_nonce, 16));
- int g = fetch_int ();
-
- BIGNUM *dh_prime = BN_new ();
- BIGNUM *g_a = BN_new ();
- assert (fetch_bignum (dh_prime) > 0);
- assert (fetch_bignum (g_a) > 0);
-
- if (tglmp_check_DH_params (TLS, dh_prime, g) < 0) {
- vlogprintf (E_ERROR, "bad DH params\n");
- return -1;
- }
- if (tglmp_check_g_a (TLS, dh_prime, g_a) < 0) {
- vlogprintf (E_ERROR, "bad dh_prime\n");
- return -1;
- }
-
- int server_time = fetch_int ();
- assert (in_ptr <= in_end);
-
- static char sha1_buffer[20];
- sha1 ((unsigned char *) decrypt_buffer + 20, (in_ptr - decrypt_buffer - 5) * 4, (unsigned char *) sha1_buffer);
- if (memcmp (decrypt_buffer, sha1_buffer, 20)) {
- vlogprintf (E_ERROR, "bad encrypted message SHA1\n");
- return -1;
- }
- if ((char *) in_end - (char *) in_ptr >= 16) {
- vlogprintf (E_ERROR, "too much padding\n");
- return -1;
- }
-
- DC->server_time_delta = server_time - get_utime (CLOCK_REALTIME);
- DC->server_time_udelta = server_time - get_utime (CLOCK_MONOTONIC);
-
- send_dh_params (TLS, c, dh_prime, g_a, g, temp_key);
-
- BN_free (dh_prime);
- BN_free (g_a);
-
- return 1;
-}
-/* }}} */
-
-static void create_temp_auth_key (struct tgl_state *TLS, struct connection *c) {
- assert (TLS->enable_pfs);
- send_req_pq_temp_packet (TLS, c);
-}
-
-int tglmp_encrypt_inner_temp (struct tgl_state *TLS, struct connection *c, int *msg, int msg_ints, int useful, void *data, long long msg_id);
-static long long msg_id_override;
-static void mpc_on_get_config (struct tgl_state *TLS, void *extra, int success);
-static void bind_temp_auth_key (struct tgl_state *TLS, struct connection *c);
-
-/* {{{ RECV AUTH COMPLETE */
-
-// dh_gen_ok#3bcbf734 nonce:int128 server_nonce:int128 new_nonce_hash1:int128 = Set_client_DH_params_answer;
-// dh_gen_retry#46dc1fb9 nonce:int128 server_nonce:int128 new_nonce_hash2:int128 = Set_client_DH_params_answer;
-// dh_gen_fail#a69dae02 nonce:int128 server_nonce:int128 new_nonce_hash3:int128 = Set_client_DH_params_answer;
-static int process_auth_complete (struct tgl_state *TLS, struct connection *c, char *packet, int len, int temp_key) {
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
-
- assert (!(len & 3));
- in_ptr = (int *)packet;
- in_end = in_ptr + (len / 4);
- if (check_unauthorized_header (TLS) < 0) {
- return -1;
- }
-
- int *in_save = in_ptr;
- if (skip_type_any (TYPE_TO_PARAM (set_client_d_h_params_answer)) < 0 || in_ptr != in_end) {
- vlogprintf (E_ERROR, "can not parse server_DH_params answer\n");
- return -1;
- }
- in_ptr = in_save;
-
- unsigned op = fetch_int ();
- assert (op == CODE_dh_gen_ok || op == CODE_dh_gen_retry || op == CODE_dh_gen_fail);
-
- int tmp[4];
- fetch_ints (tmp, 4);
- if (memcmp (DC->nonce, tmp, 16)) {
- vlogprintf (E_ERROR, "nonce mismatch\n");
- return -1;
- }
- fetch_ints (tmp, 4);
- if (memcmp (DC->server_nonce, tmp, 16)) {
- vlogprintf (E_ERROR, "nonce mismatch\n");
- return -1;
- }
- if (op != CODE_dh_gen_ok) {
- vlogprintf (E_ERROR, "something bad. Retry regen\n");
- return -1;
- }
-
- fetch_ints (tmp, 4);
-
- static unsigned char th[44], sha1_buffer[20];
- memcpy (th, DC->new_nonce, 32);
- th[32] = 1;
- if (!temp_key) {
- sha1 ((unsigned char *)DC->auth_key, 256, sha1_buffer);
- } else {
- sha1 ((unsigned char *)DC->temp_auth_key, 256, sha1_buffer);
- }
- memcpy (th + 33, sha1_buffer, 8);
- sha1 (th, 41, sha1_buffer);
- if (memcmp (tmp, sha1_buffer + 4, 16)) {
- vlogprintf (E_ERROR, "hash mismatch\n");
- return -1;
- }
-
- if (!temp_key) {
- bl_do_set_auth_key (TLS, DC->id, (unsigned char *)DC->auth_key);
- sha1 ((unsigned char *)DC->auth_key, 256, sha1_buffer);
- } else {
- sha1 ((unsigned char *)DC->temp_auth_key, 256, sha1_buffer);
- DC->temp_auth_key_id = *(long long *)(sha1_buffer + 12);
- }
-
- DC->server_salt = *(long long *)DC->server_nonce ^ *(long long *)DC->new_nonce;
-
- DC->state = st_authorized;
-
- vlogprintf (E_DEBUG, "Auth success\n");
- if (temp_key) {
- bind_temp_auth_key (TLS, c);
- } else {
- DC->flags |= 1;
- if (TLS->enable_pfs) {
- create_temp_auth_key (TLS, c);
- } else {
- DC->temp_auth_key_id = DC->auth_key_id;
- memcpy (DC->temp_auth_key, DC->auth_key, 256);
- DC->flags |= 2;
- if (!(DC->flags & 4)) {
- tgl_do_help_get_config_dc (TLS, DC, mpc_on_get_config, DC);
- }
- }
- }
-
- return 1;
-}
-/* }}} */
-
-static void bind_temp_auth_key (struct tgl_state *TLS, struct connection *c) {
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
- if (DC->temp_auth_key_bind_query_id) {
- tglq_query_delete (TLS, DC->temp_auth_key_bind_query_id);
- }
- struct tgl_session *S = TLS->net_methods->get_session (c);
- long long msg_id = generate_next_msg_id (TLS, DC, S);
-
- clear_packet ();
- out_int (CODE_bind_auth_key_inner);
- long long rand;
- tglt_secure_random (&rand, 8);
- out_long (rand);
- out_long (DC->temp_auth_key_id);
- out_long (DC->auth_key_id);
-
- if (!S->session_id) {
- tglt_secure_random (&S->session_id, 8);
- }
- out_long (S->session_id);
- int expires = (int)time (0) + DC->server_time_delta + TLS->temp_key_expire_time;
- out_int (expires);
-
- static int data[1000];
- int len = tglmp_encrypt_inner_temp (TLS, c, packet_buffer, packet_ptr - packet_buffer, 0, data, msg_id);
- msg_id_override = msg_id;
- DC->temp_auth_key_bind_query_id = msg_id;
- tgl_do_send_bind_temp_key (TLS, DC, rand, expires, (void *)data, len, msg_id);
- msg_id_override = 0;
-}
-
-/*
- *
- * AUTHORIZED (MAIN) PROTOCOL PART
- *
- */
-
-static struct encrypted_message enc_msg;
-
-static double get_server_time (struct tgl_dc *DC) {
- //if (!DC->server_time_udelta) {
- // DC->server_time_udelta = get_utime (CLOCK_REALTIME) - get_utime (CLOCK_MONOTONIC);
- //}
- return get_utime (CLOCK_MONOTONIC) + DC->server_time_udelta;
-}
-
-static long long generate_next_msg_id (struct tgl_state *TLS, struct tgl_dc *DC, struct tgl_session *S) {
- long long next_id = (long long) (get_server_time (DC) * (1LL << 32)) & -4;
- if (next_id <= S->last_msg_id) {
- next_id = S->last_msg_id += 4;
- } else {
- S->last_msg_id = next_id;
- }
- return next_id;
-}
-
-static void init_enc_msg (struct tgl_state *TLS, struct tgl_session *S, int useful) {
- struct tgl_dc *DC = S->dc;
- assert (DC->state == st_authorized);
- assert (DC->temp_auth_key_id);
- vlogprintf (E_DEBUG, "temp_auth_key_id = 0x%016llx, auth_key_id = 0x%016llx\n", DC->temp_auth_key_id, DC->auth_key_id);
- enc_msg.auth_key_id = DC->temp_auth_key_id;
- enc_msg.server_salt = DC->server_salt;
- if (!S->session_id) {
- tglt_secure_random (&S->session_id, 8);
- }
- enc_msg.session_id = S->session_id;
- enc_msg.msg_id = msg_id_override ? msg_id_override : generate_next_msg_id (TLS, DC, S);
- enc_msg.seq_no = S->seq_no;
- if (useful) {
- enc_msg.seq_no |= 1;
- }
- S->seq_no += 2;
-};
-
-static void init_enc_msg_inner_temp (struct tgl_dc *DC, long long msg_id) {
- enc_msg.auth_key_id = DC->auth_key_id;
- tglt_secure_random (&enc_msg.server_salt, 8);
- tglt_secure_random (&enc_msg.session_id, 8);
- enc_msg.msg_id = msg_id;
- enc_msg.seq_no = 0;
-};
-
-
-static int aes_encrypt_message (struct tgl_state *TLS, char *key, struct encrypted_message *enc) {
- unsigned char sha1_buffer[20];
- const int MINSZ = offsetof (struct encrypted_message, message);
- const int UNENCSZ = offsetof (struct encrypted_message, server_salt);
-
- int enc_len = (MINSZ - UNENCSZ) + enc->msg_len;
- assert (enc->msg_len >= 0 && enc->msg_len <= MAX_MESSAGE_INTS * 4 - 16 && !(enc->msg_len & 3));
- sha1 ((unsigned char *) &enc->server_salt, enc_len, sha1_buffer);
- vlogprintf (E_DEBUG, "sending message with sha1 %08x\n", *(int *)sha1_buffer);
- memcpy (enc->msg_key, sha1_buffer + 4, 16);
- tgl_init_aes_auth (key, enc->msg_key, AES_ENCRYPT);
- return tgl_pad_aes_encrypt ((char *) &enc->server_salt, enc_len, (char *) &enc->server_salt, MAX_MESSAGE_INTS * 4 + (MINSZ - UNENCSZ));
-}
-
-long long tglmp_encrypt_send_message (struct tgl_state *TLS, struct connection *c, int *msg, int msg_ints, int flags) {
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
- struct tgl_session *S = TLS->net_methods->get_session (c);
- assert (S);
- if (!(DC->flags & 4) && !(flags & 2)) {
- return generate_next_msg_id (TLS, DC, S);
- }
-
- const int UNENCSZ = offsetof (struct encrypted_message, server_salt);
- if (msg_ints <= 0 || msg_ints > MAX_MESSAGE_INTS - 4) {
- return -1;
- }
- if (msg) {
- memcpy (enc_msg.message, msg, msg_ints * 4);
- enc_msg.msg_len = msg_ints * 4;
- } else {
- if ((enc_msg.msg_len & 0x80000003) || enc_msg.msg_len > MAX_MESSAGE_INTS * 4 - 16) {
- return -1;
- }
- }
- init_enc_msg (TLS, S, flags & 1);
-
- int l = aes_encrypt_message (TLS, DC->temp_auth_key, &enc_msg);
- assert (l > 0);
- rpc_send_message (TLS, c, &enc_msg, l + UNENCSZ);
-
- return S->last_msg_id;
-}
-
-int tglmp_encrypt_inner_temp (struct tgl_state *TLS, struct connection *c, int *msg, int msg_ints, int useful, void *data, long long msg_id) {
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
- struct tgl_session *S = TLS->net_methods->get_session (c);
- assert (S);
-
- const int UNENCSZ = offsetof (struct encrypted_message, server_salt);
- if (msg_ints <= 0 || msg_ints > MAX_MESSAGE_INTS - 4) {
- return -1;
- }
- memcpy (enc_msg.message, msg, msg_ints * 4);
- enc_msg.msg_len = msg_ints * 4;
-
- init_enc_msg_inner_temp (DC, msg_id);
-
- int l = aes_encrypt_message (TLS, DC->auth_key, &enc_msg);
- assert (l > 0);
- //rpc_send_message (c, &enc_msg, l + UNENCSZ);
- memcpy (data, &enc_msg, l + UNENCSZ);
-
- return l + UNENCSZ;
-}
-
-static int rpc_execute_answer (struct tgl_state *TLS, struct connection *c, long long msg_id);
-
-static int work_container (struct tgl_state *TLS, struct connection *c, long long msg_id) {
- vlogprintf (E_DEBUG, "work_container: msg_id = %"_PRINTF_INT64_"d\n", msg_id);
- assert (fetch_int () == CODE_msg_container);
- int n = fetch_int ();
- int i;
- for (i = 0; i < n; i++) {
- long long id = fetch_long ();
- //int seqno = fetch_int ();
- fetch_int (); // seq_no
- if (id & 1) {
- tgln_insert_msg_id (TLS, TLS->net_methods->get_session (c), id);
- }
- int bytes = fetch_int ();
- int *t = in_end;
- in_end = in_ptr + (bytes / 4);
- int r = rpc_execute_answer (TLS, c, id);
- if (r < 0) { return -1; }
- assert (in_ptr == in_end);
- in_end = t;
- }
- return 0;
-}
-
-static int work_new_session_created (struct tgl_state *TLS, struct connection *c, long long msg_id) {
- vlogprintf (E_DEBUG, "work_new_session_created: msg_id = %"_PRINTF_INT64_"d\n", msg_id);
- assert (fetch_int () == (int)CODE_new_session_created);
- fetch_long (); // first message id
- fetch_long (); // unique_id
- TLS->net_methods->get_dc (c)->server_salt = fetch_long ();
- if (TLS->started && !(TLS->locks & TGL_LOCK_DIFF) && (TLS->DC_working->flags & TGLDCF_LOGGED_IN)) {
- tgl_do_get_difference (TLS, 0, 0, 0);
- }
- return 0;
-}
-
-static int work_msgs_ack (struct tgl_state *TLS, struct connection *c, long long msg_id) {
- vlogprintf (E_DEBUG, "work_msgs_ack: msg_id = %"_PRINTF_INT64_"d\n", msg_id);
- assert (fetch_int () == CODE_msgs_ack);
- assert (fetch_int () == CODE_vector);
- int n = fetch_int ();
- int i;
- for (i = 0; i < n; i++) {
- long long id = fetch_long ();
- vlogprintf (E_DEBUG + 1, "ack for %"_PRINTF_INT64_"d\n", id);
- tglq_query_ack (TLS, id);
- }
- return 0;
-}
-
-static int work_rpc_result (struct tgl_state *TLS, struct connection *c, long long msg_id) {
- vlogprintf (E_DEBUG, "work_rpc_result: msg_id = %"_PRINTF_INT64_"d\n", msg_id);
- assert (fetch_int () == (int)CODE_rpc_result);
- long long id = fetch_long ();
- int op = prefetch_int ();
- if (op == CODE_rpc_error) {
- return tglq_query_error (TLS, id);
- } else {
- return tglq_query_result (TLS, id);
- }
-}
-
-#define MAX_PACKED_SIZE (1 << 24)
-static int work_packed (struct tgl_state *TLS, struct connection *c, long long msg_id) {
- assert (fetch_int () == CODE_gzip_packed);
- static int in_gzip;
- static int buf[MAX_PACKED_SIZE >> 2];
- assert (!in_gzip);
- in_gzip = 1;
-
- int l = prefetch_strlen ();
- char *s = fetch_str (l);
-
- int total_out = tgl_inflate (s, l, buf, MAX_PACKED_SIZE);
- int *end = in_ptr;
- int *eend = in_end;
- //assert (total_out % 4 == 0);
- in_ptr = buf;
- in_end = in_ptr + total_out / 4;
- int r = rpc_execute_answer (TLS, c, msg_id);
- in_ptr = end;
- in_end = eend;
- in_gzip = 0;
- return r;
-}
-
-static int work_bad_server_salt (struct tgl_state *TLS, struct connection *c, long long msg_id) {
- assert (fetch_int () == (int)CODE_bad_server_salt);
- long long id = fetch_long ();
- tglq_query_restart (TLS, id);
- fetch_int (); // seq_no
- fetch_int (); // error_code
- long long new_server_salt = fetch_long ();
- TLS->net_methods->get_dc (c)->server_salt = new_server_salt;
- return 0;
-}
-
-static int work_pong (struct tgl_state *TLS, struct connection *c, long long msg_id) {
- assert (fetch_int () == CODE_pong);
- fetch_long (); // msg_id
- fetch_long (); // ping_id
- return 0;
-}
-
-static int work_detailed_info (struct tgl_state *TLS, struct connection *c, long long msg_id) {
- assert (fetch_int () == CODE_msg_detailed_info);
- fetch_long (); // msg_id
- fetch_long (); // answer_msg_id
- fetch_int (); // bytes
- fetch_int (); // status
- return 0;
-}
-
-static int work_new_detailed_info (struct tgl_state *TLS, struct connection *c, long long msg_id) {
- assert (fetch_int () == (int)CODE_msg_new_detailed_info);
- fetch_long (); // answer_msg_id
- fetch_int (); // bytes
- fetch_int (); // status
- return 0;
-}
-
-static int work_bad_msg_notification (struct tgl_state *TLS, struct connection *c, long long msg_id) {
- assert (fetch_int () == (int)CODE_bad_msg_notification);
- long long m1 = fetch_long ();
- int s = fetch_int ();
- int e = fetch_int ();
- vlogprintf (E_NOTICE, "bad_msg_notification: msg_id = %"_PRINTF_INT64_"d, seq = %d, error = %d\n", m1, s, e);
- switch (e) {
- // Too low msg id
- case 16:
- tglq_regen_query (TLS, m1);
- break;
- // Too high msg id
- case 17:
- tglq_regen_query (TLS, m1);
- break;
- default:
- vlogprintf (E_NOTICE, "bad_msg_notification: msg_id = %"_PRINTF_INT64_"d, seq = %d, error = %d\n", m1, s, e);
- break;
- }
-
- return -1;
-}
-
-static int rpc_execute_answer (struct tgl_state *TLS, struct connection *c, long long msg_id) {
- int op = prefetch_int ();
- switch (op) {
- case CODE_msg_container:
- return work_container (TLS, c, msg_id);
- case CODE_new_session_created:
- return work_new_session_created (TLS, c, msg_id);
- case CODE_msgs_ack:
- return work_msgs_ack (TLS, c, msg_id);
- case CODE_rpc_result:
- return work_rpc_result (TLS, c, msg_id);
- case CODE_update_short:
- case CODE_updates:
- case CODE_update_short_message:
- case CODE_update_short_chat_message:
- case CODE_updates_too_long:
- tglu_work_any_updates (TLS);
- return 0;
- case CODE_gzip_packed:
- return work_packed (TLS, c, msg_id);
- case CODE_bad_server_salt:
- return work_bad_server_salt (TLS, c, msg_id);
- case CODE_pong:
- return work_pong (TLS, c, msg_id);
- case CODE_msg_detailed_info:
- return work_detailed_info (TLS, c, msg_id);
- case CODE_msg_new_detailed_info:
- return work_new_detailed_info (TLS, c, msg_id);
- case CODE_bad_msg_notification:
- return work_bad_msg_notification (TLS, c, msg_id);
- }
- vlogprintf (E_WARNING, "Unknown message: %08x\n", op);
- in_ptr = in_end; // Will not fail due to assertion in_ptr == in_end
- return 0;
-}
-
-static struct mtproto_methods mtproto_methods;
-void tgls_free_session (struct tgl_state *TLS, struct tgl_session *S);
-/*
-static char *get_ipv6 (struct tgl_state *TLS, int num) {
- static char res[1<< 10];
- if (TLS->test_mode) {
- switch (num) {
- case 1:
- strcpy (res, TG_SERVER_TEST_IPV6_1);
- break;
- case 2:
- strcpy (res, TG_SERVER_TEST_IPV6_2);
- break;
- case 3:
- strcpy (res, TG_SERVER_TEST_IPV6_3);
- break;
- default:
- assert (0);
- }
- } else {
- switch (num) {
- case 1:
- strcpy (res, TG_SERVER_IPV6_1);
- break;
- case 2:
- strcpy (res, TG_SERVER_IPV6_2);
- break;
- case 3:
- strcpy (res, TG_SERVER_IPV6_3);
- break;
- case 4:
- strcpy (res, TG_SERVER_IPV6_4);
- break;
- case 5:
- strcpy (res, TG_SERVER_IPV6_5);
- break;
- default:
- assert (0);
- }
- }
- return res;
-}
-*/
-
-static void create_session_connect (struct tgl_state *TLS, struct tgl_session *S) {
- struct tgl_dc *DC = S->dc;
-
- if (TLS->ipv6_enabled) {
- S->c = TLS->net_methods->create_connection (TLS, DC->options[1]->ip, DC->options[1]->port, S, DC, &mtproto_methods);
- } else {
- S->c = TLS->net_methods->create_connection (TLS, DC->options[0]->ip, DC->options[0]->port, S, DC, &mtproto_methods);
- }
-}
-
-static void fail_connection (struct tgl_state *TLS, struct connection *c) {
- struct tgl_session *S = TLS->net_methods->get_session (c);
- TLS->net_methods->free (c);
- create_session_connect (TLS, S);
-}
-
-static void fail_session (struct tgl_state *TLS, struct tgl_session *S) {
- vlogprintf (E_NOTICE, "failing session %"_PRINTF_INT64_"d\n", S->session_id);
- struct tgl_dc *DC = S->dc;
- tgls_free_session (TLS, S);
- DC->sessions[0] = NULL;
- tglmp_dc_create_session (TLS, DC);
-}
-
-static int process_rpc_message (struct tgl_state *TLS, struct connection *c, struct encrypted_message *enc, int len) {
- const int MINSZ = offsetof (struct encrypted_message, message);
- const int UNENCSZ = offsetof (struct encrypted_message, server_salt);
- vlogprintf (E_DEBUG, "process_rpc_message(), len=%d\n", len);
- if (len < MINSZ || (len & 15) != (UNENCSZ & 15)) {
- vlogprintf (E_WARNING, "Incorrect packet from server. Closing connection\n");
- fail_connection (TLS, c);
- return -1;
- }
- assert (len >= MINSZ && (len & 15) == (UNENCSZ & 15));
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
- if (enc->auth_key_id != DC->temp_auth_key_id && enc->auth_key_id != DC->auth_key_id) {
- vlogprintf (E_WARNING, "received msg from dc %d with auth_key_id %"_PRINTF_INT64_"d (perm_auth_key_id %"_PRINTF_INT64_"d temp_auth_key_id %"_PRINTF_INT64_"d). Dropping\n",
- DC->id, enc->auth_key_id, DC->auth_key_id, DC->temp_auth_key_id);
- return 0;
- }
- if (enc->auth_key_id == DC->temp_auth_key_id) {
- assert (enc->auth_key_id == DC->temp_auth_key_id);
- assert (DC->temp_auth_key_id);
- tgl_init_aes_auth (DC->temp_auth_key + 8, enc->msg_key, AES_DECRYPT);
- } else {
- assert (enc->auth_key_id == DC->auth_key_id);
- assert (DC->auth_key_id);
- tgl_init_aes_auth (DC->auth_key + 8, enc->msg_key, AES_DECRYPT);
- }
-
- int l = tgl_pad_aes_decrypt ((char *)&enc->server_salt, len - UNENCSZ, (char *)&enc->server_salt, len - UNENCSZ);
- assert (l == len - UNENCSZ);
-
- if (!(!(enc->msg_len & 3) && enc->msg_len > 0 && enc->msg_len <= len - MINSZ && len - MINSZ - enc->msg_len <= 12)) {
- vlogprintf (E_WARNING, "Incorrect packet from server. Closing connection\n");
- fail_connection (TLS, c);
- return -1;
- }
- assert (!(enc->msg_len & 3) && enc->msg_len > 0 && enc->msg_len <= len - MINSZ && len - MINSZ - enc->msg_len <= 12);
-
- struct tgl_session *S = TLS->net_methods->get_session (c);
- if (!S || S->session_id != enc->session_id) {
- vlogprintf (E_WARNING, "Message to bad session. Drop.\n");
- return 0;
- }
-
- static unsigned char sha1_buffer[20];
- sha1 ((void *)&enc->server_salt, enc->msg_len + (MINSZ - UNENCSZ), sha1_buffer);
- if (memcmp (&enc->msg_key, sha1_buffer + 4, 16)) {
- vlogprintf (E_WARNING, "Incorrect packet from server. Closing connection\n");
- fail_connection (TLS, c);
- return -1;
- }
- assert (!memcmp (&enc->msg_key, sha1_buffer + 4, 16));
-
- int this_server_time = enc->msg_id >> 32LL;
- if (!S->received_messages) {
- DC->server_time_delta = this_server_time - get_utime (CLOCK_REALTIME);
- if (DC->server_time_udelta) {
- vlogprintf (E_WARNING, "adjusting CLOCK_MONOTONIC delta to %lf\n",
- DC->server_time_udelta - this_server_time + get_utime (CLOCK_MONOTONIC));
- }
- DC->server_time_udelta = this_server_time - get_utime (CLOCK_MONOTONIC);
- }
-
- double st = get_server_time (DC);
- if (this_server_time < st - 300 || this_server_time > st + 30) {
- vlogprintf (E_WARNING, "bad msg time: salt = %"_PRINTF_INT64_"d, session_id = %"_PRINTF_INT64_"d, msg_id = %"_PRINTF_INT64_"d, seq_no = %d, st = %lf, now = %lf\n", enc->server_salt, enc->session_id, enc->msg_id, enc->seq_no, st, get_utime (CLOCK_REALTIME));
- fail_session (TLS, S);
- return -1;
- }
- S->received_messages ++;
-
- if (DC->server_salt != enc->server_salt) {
- DC->server_salt = enc->server_salt;
- }
-
- assert (this_server_time >= st - 300 && this_server_time <= st + 30);
- //assert (enc->msg_id > server_last_msg_id && (enc->msg_id & 3) == 1);
- vlogprintf (E_DEBUG, "received mesage id %016llx\n", enc->msg_id);
- //server_last_msg_id = enc->msg_id;
-
- //*(long long *)(longpoll_query + 3) = *(long long *)((char *)(&enc->msg_id) + 0x3c);
- //*(long long *)(longpoll_query + 5) = *(long long *)((char *)(&enc->msg_id) + 0x3c);
-
- assert (l >= (MINSZ - UNENCSZ) + 8);
- //assert (enc->message[0] == CODE_rpc_result && *(long long *)(enc->message + 1) == client_last_msg_id);
-
- in_ptr = enc->message;
- in_end = in_ptr + (enc->msg_len / 4);
-
- if (enc->msg_id & 1) {
- tgln_insert_msg_id (TLS, S, enc->msg_id);
- }
- assert (S->session_id == enc->session_id);
-
- if (rpc_execute_answer (TLS, c, enc->msg_id) < 0) {
- fail_session (TLS, S);
- return -1;
- }
- assert (in_ptr == in_end);
- return 0;
-}
-
-
-static int rpc_execute (struct tgl_state *TLS, struct connection *c, int op, int len) {
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
-
- if (len >= MAX_RESPONSE_SIZE/* - 12*/ || len < 0/*12*/) {
- vlogprintf (E_WARNING, "answer too long (%d bytes), skipping\n", len);
- return 0;
- }
-
- int Response_len = len;
-
- static char Response[MAX_RESPONSE_SIZE];
- vlogprintf (E_DEBUG, "Response_len = %d\n", Response_len);
- assert (TLS->net_methods->read_in (c, Response, Response_len) == Response_len);
-
-#if !defined(WIN32) || !defined(_WIN32)
- setsockopt(c->fd, IPPROTO_TCP, TCP_QUICKACK, (int[]) { 0 }, 4);
-#endif
-#if !defined(__MACH__) && !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined (__CYGWIN__)
-// setsockopt (c->fd, IPPROTO_TCP, TCP_QUICKACK, (int[]){0}, 4);
-#endif
- int o = DC->state;
- //if (DC->flags & 1) { o = st_authorized;}
- if (o != st_authorized) {
- vlogprintf (E_DEBUG, "%s: state = %d\n", __func__, o);
- }
- switch (o) {
- case st_reqpq_sent:
- process_respq_answer (TLS, c, Response/* + 8*/, Response_len/* - 12*/, 0);
- return 0;
- case st_reqdh_sent:
- process_dh_answer (TLS, c, Response/* + 8*/, Response_len/* - 12*/, 0);
- return 0;
- case st_client_dh_sent:
- process_auth_complete (TLS, c, Response/* + 8*/, Response_len/* - 12*/, 0);
- return 0;
- case st_reqpq_sent_temp:
- process_respq_answer (TLS, c, Response/* + 8*/, Response_len/* - 12*/, 1);
- return 0;
- case st_reqdh_sent_temp:
- process_dh_answer (TLS, c, Response/* + 8*/, Response_len/* - 12*/, 1);
- return 0;
- case st_client_dh_sent_temp:
- process_auth_complete (TLS, c, Response/* + 8*/, Response_len/* - 12*/, 1);
- return 0;
- case st_authorized:
- if (op < 0 && op >= -999) {
- vlogprintf (E_WARNING, "Server error %d\n", op);
- } else {
- return process_rpc_message (TLS, c, (void *)(Response/* + 8*/), Response_len/* - 12*/);
- }
- return 0;
- default:
- vlogprintf (E_ERROR, "fatal: cannot receive answer in state %d\n", DC->state);
- exit (2);
- }
-
- return 0;
-}
-
-
-static int tc_close (struct tgl_state *TLS, struct connection *c, int who) {
- vlogprintf (E_DEBUG, "outbound rpc connection from dc #%d : closing by %d\n", TLS->net_methods->get_dc(c)->id, who);
- return 0;
-}
-
-static void mpc_on_get_config (struct tgl_state *TLS, void *extra, int success) {
- assert (success);
- struct tgl_dc *DC = extra;
- DC->flags |= 4;
-}
-
-static int tc_becomes_ready (struct tgl_state *TLS, struct connection *c) {
- vlogprintf (E_NOTICE, "outbound rpc connection from dc #%d becomed ready\n", TLS->net_methods->get_dc(c)->id);
- //char byte = 0xef;
- //assert (TLS->net_methods->write_out (c, &byte, 1) == 1);
- //TLS->net_methods->flush_out (c);
-
- struct tgl_dc *DC = TLS->net_methods->get_dc (c);
- if (DC->flags & 1) { DC->state = st_authorized; }
- int o = DC->state;
- if (o == st_authorized && !TLS->enable_pfs) {
- DC->temp_auth_key_id = DC->auth_key_id;
- memcpy (DC->temp_auth_key, DC->auth_key, 256);
- DC->flags |= 2;
- }
- switch (o) {
- case st_init:
- send_req_pq_packet (TLS, c);
- break;
- case st_authorized:
- if (!(DC->flags & 2)) {
- assert (TLS->enable_pfs);
- if (!DC->temp_auth_key_id) {
- assert (!DC->temp_auth_key_id);
- create_temp_auth_key (TLS, c);
- } else {
- bind_temp_auth_key (TLS, c);
- }
- } else if (!(DC->flags & 4)) {
- tgl_do_help_get_config_dc (TLS, DC, mpc_on_get_config, DC);
- }
- break;
- default:
- vlogprintf (E_DEBUG, "c_state = %d\n", DC->state);
- DC->state = st_init; // previous connection was reset
- send_req_pq_packet (TLS, c);
- break;
- }
- return 0;
-}
-
-static int rpc_becomes_ready (struct tgl_state *TLS, struct connection *c) {
- return tc_becomes_ready (TLS, c);
-}
-
-static int rpc_close (struct tgl_state *TLS, struct connection *c) {
- return tc_close (TLS, c, 0);
-}
-
-
-#define RANDSEED_PASSWORD_FILENAME NULL
-#define RANDSEED_PASSWORD_LENGTH 0
-void tglmp_on_start (struct tgl_state *TLS) {
- tgl_prng_seed (TLS, RANDSEED_PASSWORD_FILENAME, RANDSEED_PASSWORD_LENGTH);
-
- int i;
- int ok = 0;
- for (i = 0; i < TLS->rsa_key_num; i++) {
- char *key = TLS->rsa_key_list[i];
- RSA *res = rsa_load_public_key (TLS, key);
- if (!res) {
- vlogprintf (E_WARNING, "Can not load key %s\n", key);
- TLS->rsa_key_loaded[i] = NULL;
- } else {
- ok = 1;
- TLS->rsa_key_loaded[i] = res;
- TLS->rsa_key_fingerprint[i] = tgl_do_compute_rsa_key_fingerprint (res);
- }
- }
-
- if (!ok) {
- vlogprintf (E_ERROR, "No public keys found\n");
- exit (1);
- }
-}
-
-void tgl_dc_authorize (struct tgl_state *TLS, struct tgl_dc *DC) {
- //c_state = 0;
- if (!DC->sessions[0]) {
- tglmp_dc_create_session (TLS, DC);
- }
- vlogprintf (E_DEBUG, "Starting authorization for DC #%d\n", DC->id);
- //net_loop (0, auth_ok);
-}
-
-#define long_cmp(a,b) ((a) > (b) ? 1 : (a) == (b) ? 0 : -1)
-DEFINE_TREE(long,long long,long_cmp,0)
-
-static int send_all_acks (struct tgl_state *TLS, struct tgl_session *S) {
- clear_packet ();
- out_int (CODE_msgs_ack);
- out_int (CODE_vector);
- out_int (tree_count_long (S->ack_tree));
- while (S->ack_tree) {
- long long x = tree_get_min_long (S->ack_tree);
- out_long (x);
- S->ack_tree = tree_delete_long (S->ack_tree, x);
- }
- tglmp_encrypt_send_message (TLS, S->c, packet_buffer, packet_ptr - packet_buffer, 0);
- return 0;
-}
-
-static void send_all_acks_gateway (struct tgl_state *TLS, void *arg) {
- send_all_acks (TLS, arg);
-}
-
-
-void tgln_insert_msg_id (struct tgl_state *TLS, struct tgl_session *S, long long id) {
- if (!S->ack_tree) {
- TLS->timer_methods->insert (S->ev, ACK_TIMEOUT);
- }
- if (!tree_lookup_long (S->ack_tree, id)) {
- S->ack_tree = tree_insert_long (S->ack_tree, id, lrand48 ());
- }
-}
-
-//extern struct tgl_dc *DC_list[];
-
-
-static void regen_temp_key_gw (struct tgl_state *TLS, void *arg) {
- tglmp_regenerate_temp_auth_key (TLS, arg);
-}
-
-struct tgl_dc *tglmp_alloc_dc (struct tgl_state *TLS, int flags, int id, char *ip, int port) {
- //assert (!TLS->DC_list[id]);
-
- if (!TLS->DC_list[id]) {
- struct tgl_dc *DC = talloc0 (sizeof (*DC));
- DC->id = id;
- TLS->DC_list[id] = DC;
- if (id > TLS->max_dc_num) {
- TLS->max_dc_num = id;
- }
- DC->ev = TLS->timer_methods->alloc (TLS, regen_temp_key_gw, DC);
- TLS->timer_methods->insert (DC->ev, 0);
- }
-
- struct tgl_dc *DC = TLS->DC_list[id];
-
- struct tgl_dc_option *O = DC->options[flags & 3];
-
- struct tgl_dc_option *O2 = O;
- while (O2) {
- if (!strcmp (O2->ip, ip)) {
- tfree_str (ip);
- return DC;
- }
- O2 = O2->next;
- }
-
- struct tgl_dc_option *T = talloc (sizeof (*T));
- T->ip = ip;
- T->port = port;
- T->next = O;
- DC->options[flags & 3] = T;
-
-
- return DC;
-}
-
-static struct mtproto_methods mtproto_methods = {
- .execute = rpc_execute,
- .ready = rpc_becomes_ready,
- .close = rpc_close
-};
-
-void tglmp_dc_create_session (struct tgl_state *TLS, struct tgl_dc *DC) {
- struct tgl_session *S = talloc0 (sizeof (*S));
- assert (RAND_pseudo_bytes ((unsigned char *) &S->session_id, 8) >= 0);
- S->dc = DC;
- //S->c = TLS->net_methods->create_connection (TLS, DC->ip, DC->port, S, DC, &mtproto_methods);
-
- create_session_connect (TLS, S);
- S->ev = TLS->timer_methods->alloc (TLS, send_all_acks_gateway, S);
- assert (!DC->sessions[0]);
- DC->sessions[0] = S;
-}
-
-void tgl_do_send_ping (struct tgl_state *TLS, struct connection *c) {
- int x[3];
- x[0] = CODE_ping;
- *(long long *)(x + 1) = lrand48 () * (1ll << 32) + lrand48 ();
- tglmp_encrypt_send_message (TLS, c, x, 3, 0);
-}
-
-void tgl_dc_iterator (struct tgl_state *TLS, void (*iterator)(struct tgl_dc *DC)) {
- int i;
- for (i = 0; i <= TLS->max_dc_num; i++) {
- iterator (TLS->DC_list[i]);
- }
-}
-
-void tgl_dc_iterator_ex (struct tgl_state *TLS, void (*iterator)(struct tgl_dc *DC, void *extra), void *extra) {
- int i;
- for (i = 0; i <= TLS->max_dc_num; i++) {
- iterator (TLS->DC_list[i], extra);
- }
-}
-
-
-void tglmp_regenerate_temp_auth_key (struct tgl_state *TLS, struct tgl_dc *DC) {
- DC->flags &= ~6;
- DC->temp_auth_key_id = 0;
- memset (DC->temp_auth_key, 0, 256);
-
- if (!DC->sessions[0]) {
- tgl_dc_authorize (TLS, DC);
- return;
- }
-
-
- struct tgl_session *S = DC->sessions[0];
- tglt_secure_random (&S->session_id, 8);
- S->seq_no = 0;
-
- TLS->timer_methods->remove (S->ev);
- S->ack_tree = tree_clear_long (S->ack_tree);
-
- if (DC->state != st_authorized) {
- return;
- }
-
- if (S->c) {
- create_temp_auth_key (TLS, S->c);
- }
-}
-
-void tgls_free_session (struct tgl_state *TLS, struct tgl_session *S) {
- S->ack_tree = tree_clear_long (S->ack_tree);
- if (S->ev) { TLS->timer_methods->free (S->ev); }
- if (S->c) {
- TLS->net_methods->free (S->c);
- }
- tfree (S, sizeof (*S));
-}
-
-void tgls_free_dc (struct tgl_state *TLS, struct tgl_dc *DC) {
- //if (DC->ip) { tfree_str (DC->ip); }
-
- struct tgl_session *S = DC->sessions[0];
- if (S) { tgls_free_session (TLS, S); }
-
- if (DC->ev) { TLS->timer_methods->free (DC->ev); }
- tfree (DC, sizeof (*DC));
-}
-
-void tgls_free_pubkey (struct tgl_state *TLS) {
- int i;
- for (i = 0; i < TLS->rsa_key_num; i++) {
- if (TLS->rsa_key_loaded[i]) {
- RSA_free (TLS->rsa_key_loaded[i]);
- TLS->rsa_key_loaded[i] = NULL;
- }
- }
-}
diff --git a/protocols/Telegram/src/tgl/mtproto-client.h b/protocols/Telegram/src/tgl/mtproto-client.h
deleted file mode 100644
index 13a98fd406..0000000000
--- a/protocols/Telegram/src/tgl/mtproto-client.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Nikolay Durov, Andrey Lopatin 2012-2013
- Vitaly Valtman 2013-2015
-*/
-#ifndef __MTPROTO_CLIENT_H__
-#define __MTPROTO_CLIENT_H__
-//#include "net.h"
-#include <openssl/bn.h>
-//void on_start (void);
-//..long long encrypt_send_message (struct connection *c, int *msg, int msg_ints, int useful);
-//void dc_authorize (struct tgl_dc *DC);
-//void work_update (struct connection *c, long long msg_id);
-//void work_update_binlog (void);
-//int check_g (unsigned char p[256], BIGNUM *g);
-//int check_g_bn (BIGNUM *p, BIGNUM *g);
-//int check_DH_params (BIGNUM *p, int g);
-//void secure_random (void *s, int l);
-
-#include "tgl.h"
-
-struct connection;
-struct tgl_dc;
-//#include "queries.h"
-#define TG_APP_HASH "844584f2b1fd2daecee726166dcc1ef8"
-#define TG_APP_ID 10534
-
-#define ACK_TIMEOUT 1
-#define MAX_DC_ID 10
-
-struct connection;
-
-long long tglmp_encrypt_send_message (struct tgl_state *TLS, struct connection *c, int *msg, int msg_ints, int flags);
-void tglmp_dc_create_session (struct tgl_state *TLS, struct tgl_dc *DC);
-//int tglmp_check_g (struct tgl_state *TLS, unsigned char p[256], BIGNUM *g);
-//int tglmp_check_DH_params (struct tgl_state *TLS, BIGNUM *p, int g);
-struct tgl_dc *tglmp_alloc_dc (struct tgl_state *TLS, int flags, int id, char *ip, int port);
-void tglmp_regenerate_temp_auth_key (struct tgl_state *TLS, struct tgl_dc *D);
-
-void tgln_insert_msg_id (struct tgl_state *TLS, struct tgl_session *S, long long id);
-void tglmp_on_start (struct tgl_state *TLS);
-void tgl_dc_authorize (struct tgl_state *TLS, struct tgl_dc *DC);
-void tgls_free_dc (struct tgl_state *TLS, struct tgl_dc *DC);
-void tgls_free_pubkey (struct tgl_state *TLS);
-void tgl_do_send_ping (struct tgl_state *TLS, struct connection *c);
-#endif
diff --git a/protocols/Telegram/src/tgl/mtproto-common.c b/protocols/Telegram/src/tgl/mtproto-common.c
deleted file mode 100644
index 32a9597639..0000000000
--- a/protocols/Telegram/src/tgl/mtproto-common.c
+++ /dev/null
@@ -1,475 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Nikolay Durov, Andrey Lopatin 2012-2013
- Vitaly Valtman 2013-2015
-*/
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#define _FILE_OFFSET_BITS 64
-
-#include <assert.h>
-#include <string.h>
-#include <stdio.h>
-#include <stdlib.h>
-#ifdef _MSC_VER
-#include <io.h>
-#include <stdint.h>
-#include <string.h>
-#include <intrin.h>
-#include <process.h>
-#define WIN32_LEAN_AND_MEAN
-#include <windows.h>
-#undef WIN32_LEAN_AND_MEAN
-#include <tlhelp32.h>
-#include <sys/stat.h>
-#include "tgl.h"
-#elif defined(__MINGW32__)
-#include "tgl.h"
-+#include <winsock2.h>
-#include <unistd.h>
-#else
-#include <unistd.h>
-#include <netdb.h>
-#endif
-#include <fcntl.h>
-#include <share.h>
-#include <sys/types.h>
-#include <openssl/bn.h>
-#include <openssl/rand.h>
-#include <openssl/pem.h>
-#include <openssl/aes.h>
-#include <openssl/sha.h>
-#include <openssl/rand.h>
-
-#include "mtproto-common.h"
-#include "tools.h"
-
-#ifdef __MACH__
-#include <mach/clock.h>
-#include <mach/mach.h>
-#endif
-
-
-static int __packet_buffer[PACKET_BUFFER_SIZE + 16];
-int *tgl_packet_ptr;
-int *tgl_packet_buffer = __packet_buffer + 16;
-
-static long long rsa_encrypted_chunks, rsa_decrypted_chunks;
-
-//int verbosity;
-
-static int get_random_bytes (struct tgl_state *TLS, unsigned char *buf, int n) {
-#if defined(WIN32) || defined(_WIN32)
- if (RAND_bytes(buf, n) != 1)
- return 0;
-
- vlogprintf(E_DEBUG, "added %d bytes of real entropy to secure random numbers seed\n", n);
- *(long *)buf ^= lrand48();
- srand48(*(long *)buf);
- return n;
-#else
- int r = 0, h = open ("/dev/random", O_RDONLY | O_NONBLOCK);
- if (h >= 0) {
- r = read (h, buf, n);
- if (r > 0) {
- vlogprintf (E_DEBUG, "added %d bytes of real entropy to secure random numbers seed\n", r);
- } else {
- r = 0;
- }
- close (h);
- }
-
- if (r < n) {
- h = open ("/dev/urandom", O_RDONLY);
- if (h < 0) {
- return r;
- }
- int s = read (h, buf + r, n - r);
- close (h);
- if (s > 0) {
- r += s;
- }
- }
-
- if (r >= (int) sizeof (long)) {
- *(long *)buf ^= lrand48 ();
- srand48 (*(long *)buf);
- }
-
- return r;
-#endif
-}
-
-
-/* RDTSC */
-#ifdef _MSC_VER
-#define HAVE_RDTSC
-#pragma intrinsic(__rdtsc)
-static __inline unsigned long long rdtsc(void) {
- return __rdtsc();
-}
-
-inline DWORD getppid() {
- HANDLE hSnapshot = INVALID_HANDLE_VALUE;
- PROCESSENTRY32 pe32;
- DWORD ppid = 0, pid = GetCurrentProcessId();
-
- hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
- __try {
- if (hSnapshot == INVALID_HANDLE_VALUE) __leave;
- ZeroMemory(&pe32, sizeof(pe32));
- pe32.dwSize = sizeof(pe32);
- if (!Process32First(hSnapshot, &pe32)) __leave;
-
- do {
- if (pe32.th32ProcessID == pid) {
- ppid = pe32.th32ParentProcessID;
- break;
- }
- } while (Process32Next(hSnapshot, &pe32));
-
- }
- __finally {
- if (hSnapshot != INVALID_HANDLE_VALUE) CloseHandle(hSnapshot);
- }
- return ppid;
-}
-
-#elif defined(__i386__)
-#define HAVE_RDTSC
-static __inline__ unsigned long long rdtsc (void) {
- unsigned long long int x;
- __asm__ volatile ("rdtsc" : "=A" (x));
- return x;
-}
-#elif defined(__x86_64__)
-#define HAVE_RDTSC
-static __inline__ unsigned long long rdtsc (void) {
- unsigned hi, lo;
- __asm__ __volatile__ ("rdtsc" : "=a"(lo), "=d"(hi));
- return ((unsigned long long) lo) | (((unsigned long long) hi) << 32);
-}
-#endif
-
-void tgl_prng_seed (struct tgl_state *TLS, const char *password_filename, int password_length) {
- struct timespec T;
- tgl_my_clock_gettime (CLOCK_REALTIME, &T);
- RAND_add (&T, sizeof (T), 4.0);
-#ifdef HAVE_RDTSC
- unsigned long long r = rdtsc ();
- RAND_add (&r, 8, 4.0);
-#endif
-#if defined(_MSC_VER)
- DWORD p = GetCurrentProcessId ();
-#else
- unsigned short p = getpid ();
-#endif
- RAND_add (&p, sizeof (p), 0.0);
- p = getppid ();
- RAND_add (&p, sizeof (p), 0.0);
- unsigned char rb[32];
- int s = get_random_bytes (TLS, rb, 32);
- if (s > 0) {
- RAND_add (rb, s, s);
- }
- memset (rb, 0, sizeof (rb));
- if (password_filename && password_length > 0) {
-#if defined(_MSC_VER) && _MSC_VER >= 1400
- int fd = 0;
- errno_t err = _sopen_s(&fd, password_filename, _O_RDONLY | _O_BINARY, _SH_DENYNO, _S_IREAD | _S_IWRITE);
- if (err != 0) {
- vlogprintf(E_WARNING, "Warning: fail to open password file - \"%s\", %s.\n", password_filename, GetErrnoStr (errno));
-#elif defined(WIN32) || defined(_WIN32)
- int fd = open(password_filename, O_RDONLY | O_BINARY);
- if (fd < 0) {
- vlogprintf (E_WARNING, "Warning: fail to open password file - \"%s\", %s.\n", password_filename, GetErrnoStr (errno));
-#else
- int fd = open (password_filename, O_RDONLY);
- if (fd < 0) {
- vlogprintf (E_WARNING, "Warning: fail to open password file - \"%s\", %m.\n", password_filename);
-#endif
- } else {
- unsigned char *a = talloc0 (password_length);
- int l = read (fd, a, password_length);
- if (l < 0) {
-#if defined(WIN32) || defined(_WIN32)
- vlogprintf (E_WARNING, "Warning: fail to read password file - \"%s\", %s.\n", password_filename, GetErrnoStr (errno));
-#else
- vlogprintf (E_WARNING, "Warning: fail to read password file - \"%s\", %m.\n", password_filename);
-#endif
- } else {
- vlogprintf (E_DEBUG, "read %d bytes from password file.\n", l);
- RAND_add (a, l, l);
- }
- close (fd);
- tfree_secure (a, password_length);
- }
- }
- TLS->BN_ctx = BN_CTX_new ();
- ensure_ptr (TLS->BN_ctx);
-}
-
-int tgl_serialize_bignum (BIGNUM *b, char *buffer, int maxlen) {
- int itslen = BN_num_bytes (b);
- int reqlen;
- if (itslen < 254) {
- reqlen = itslen + 1;
- } else {
- reqlen = itslen + 4;
- }
- int newlen = (reqlen + 3) & -4;
- int pad = newlen - reqlen;
- reqlen = newlen;
- if (reqlen > maxlen) {
- return -reqlen;
- }
- if (itslen < 254) {
- *buffer++ = itslen;
- } else {
- *(int *)buffer = (itslen << 8) + 0xfe;
- buffer += 4;
- }
- int l = BN_bn2bin (b, (unsigned char *)buffer);
- assert (l == itslen);
- buffer += l;
- while (pad --> 0) {
- *buffer++ = 0;
- }
- return reqlen;
-}
-
-
-long long tgl_do_compute_rsa_key_fingerprint (RSA *key) {
- static char tempbuff[4096];
- static unsigned char sha[20];
- assert (key->n && key->e);
- int l1 = tgl_serialize_bignum (key->n, tempbuff, 4096);
- assert (l1 > 0);
- int l2 = tgl_serialize_bignum (key->e, tempbuff + l1, 4096 - l1);
- assert (l2 > 0 && l1 + l2 <= 4096);
- SHA1 ((unsigned char *)tempbuff, l1 + l2, sha);
- return *(long long *)(sha + 12);
-}
-
-void tgl_out_cstring (const char *str, long len) {
- assert (len >= 0 && len < (1 << 24));
- assert ((char *) packet_ptr + len + 8 < (char *) (packet_buffer + PACKET_BUFFER_SIZE));
- char *dest = (char *) packet_ptr;
- if (len < 254) {
- *dest++ = len;
- } else {
- *packet_ptr = (len << 8) + 0xfe;
- dest += 4;
- }
- memcpy (dest, str, len);
- dest += len;
- while ((long) dest & 3) {
- *dest++ = 0;
- }
- packet_ptr = (int *) dest;
-}
-
-void tgl_out_cstring_careful (const char *str, long len) {
- assert (len >= 0 && len < (1 << 24));
- assert ((char *) packet_ptr + len + 8 < (char *) (packet_buffer + PACKET_BUFFER_SIZE));
- char *dest = (char *) packet_ptr;
- if (len < 254) {
- dest++;
- if (dest != str) {
- memmove (dest, str, len);
- }
- dest[-1] = len;
- } else {
- dest += 4;
- if (dest != str) {
- memmove (dest, str, len);
- }
- *packet_ptr = (len << 8) + 0xfe;
- }
- dest += len;
- while ((long) dest & 3) {
- *dest++ = 0;
- }
- packet_ptr = (int *) dest;
-}
-
-
-void tgl_out_data (const void *data, long len) {
- assert (len >= 0 && len < (1 << 24) && !(len & 3));
- assert ((char *) packet_ptr + len + 8 < (char *) (packet_buffer + PACKET_BUFFER_SIZE));
- memcpy (packet_ptr, data, len);
- packet_ptr += len >> 2;
-}
-
-int *tgl_in_ptr, *tgl_in_end;
-
-int tgl_fetch_bignum (BIGNUM *x) {
- int l = prefetch_strlen ();
- if (l < 0) {
- return l;
- }
- char *str = fetch_str (l);
- assert (BN_bin2bn ((unsigned char *) str, l, x) == x);
- return l;
-}
-
-int tgl_pad_rsa_encrypt (struct tgl_state *TLS, char *from, int from_len, char *to, int size, BIGNUM *N, BIGNUM *E) {
- int pad = (255000 - from_len - 32) % 255 + 32;
- int chunks = (from_len + pad) / 255;
- int bits = BN_num_bits (N);
- assert (bits >= 2041 && bits <= 2048);
- assert (from_len > 0 && from_len <= 2550);
- assert (size >= chunks * 256);
- assert (RAND_pseudo_bytes ((unsigned char *) from + from_len, pad) >= 0);
- int i;
- BIGNUM x, y;
- BN_init (&x);
- BN_init (&y);
- rsa_encrypted_chunks += chunks;
- for (i = 0; i < chunks; i++) {
- BN_bin2bn ((unsigned char *) from, 255, &x);
- assert (BN_mod_exp (&y, &x, E, N, TLS->BN_ctx) == 1);
- unsigned l = 256 - BN_num_bytes (&y);
- assert (l <= 256);
- memset (to, 0, l);
- BN_bn2bin (&y, (unsigned char *) to + l);
- to += 256;
- }
- BN_free (&x);
- BN_free (&y);
- return chunks * 256;
-}
-
-int tgl_pad_rsa_decrypt (struct tgl_state *TLS, char *from, int from_len, char *to, int size, BIGNUM *N, BIGNUM *D) {
- if (from_len < 0 || from_len > 0x1000 || (from_len & 0xff)) {
- return -1;
- }
- int chunks = (from_len >> 8);
- int bits = BN_num_bits (N);
- assert (bits >= 2041 && bits <= 2048);
- assert (size >= chunks * 255);
- int i;
- BIGNUM x, y;
- BN_init (&x);
- BN_init (&y);
- for (i = 0; i < chunks; i++) {
- ++rsa_decrypted_chunks;
- BN_bin2bn ((unsigned char *) from, 256, &x);
- assert (BN_mod_exp (&y, &x, D, N, TLS->BN_ctx) == 1);
- int l = BN_num_bytes (&y);
- if (l > 255) {
- BN_free (&x);
- BN_free (&y);
- return -1;
- }
- assert (l >= 0 && l <= 255);
- memset (to, 0, 255 - l);
- BN_bn2bin (&y, (unsigned char *) to + 255 - l);
- to += 255;
- }
- BN_free (&x);
- BN_free (&y);
- return chunks * 255;
-}
-
-static unsigned char aes_key_raw[32], aes_iv[32];
-static AES_KEY aes_key;
-
-void tgl_init_aes_unauth (const char server_nonce[16], const char hidden_client_nonce[32], int encrypt) {
- static unsigned char buffer[64], hash[20];
- memcpy (buffer, hidden_client_nonce, 32);
- memcpy (buffer + 32, server_nonce, 16);
- SHA1 (buffer, 48, aes_key_raw);
- memcpy (buffer + 32, hidden_client_nonce, 32);
- SHA1 (buffer, 64, aes_iv + 8);
- memcpy (buffer, server_nonce, 16);
- memcpy (buffer + 16, hidden_client_nonce, 32);
- SHA1 (buffer, 48, hash);
- memcpy (aes_key_raw + 20, hash, 12);
- memcpy (aes_iv, hash + 12, 8);
- memcpy (aes_iv + 28, hidden_client_nonce, 4);
- if (encrypt == AES_ENCRYPT) {
- AES_set_encrypt_key (aes_key_raw, 32*8, &aes_key);
- } else {
- AES_set_decrypt_key (aes_key_raw, 32*8, &aes_key);
- }
- memset (aes_key_raw, 0, sizeof (aes_key_raw));
-}
-
-void tgl_init_aes_auth (char auth_key[192], char msg_key[16], int encrypt) {
- static unsigned char buffer[48], hash[20];
- // sha1_a = SHA1 (msg_key + substr (auth_key, 0, 32));
- // sha1_b = SHA1 (substr (auth_key, 32, 16) + msg_key + substr (auth_key, 48, 16));
- // sha1_с = SHA1 (substr (auth_key, 64, 32) + msg_key);
- // sha1_d = SHA1 (msg_key + substr (auth_key, 96, 32));
- // aes_key = substr (sha1_a, 0, 8) + substr (sha1_b, 8, 12) + substr (sha1_c, 4, 12);
- // aes_iv = substr (sha1_a, 8, 12) + substr (sha1_b, 0, 8) + substr (sha1_c, 16, 4) + substr (sha1_d, 0, 8);
- memcpy (buffer, msg_key, 16);
- memcpy (buffer + 16, auth_key, 32);
- SHA1 (buffer, 48, hash);
- memcpy (aes_key_raw, hash, 8);
- memcpy (aes_iv, hash + 8, 12);
-
- memcpy (buffer, auth_key + 32, 16);
- memcpy (buffer + 16, msg_key, 16);
- memcpy (buffer + 32, auth_key + 48, 16);
- SHA1 (buffer, 48, hash);
- memcpy (aes_key_raw + 8, hash + 8, 12);
- memcpy (aes_iv + 12, hash, 8);
-
- memcpy (buffer, auth_key + 64, 32);
- memcpy (buffer + 32, msg_key, 16);
- SHA1 (buffer, 48, hash);
- memcpy (aes_key_raw + 20, hash + 4, 12);
- memcpy (aes_iv + 20, hash + 16, 4);
-
- memcpy (buffer, msg_key, 16);
- memcpy (buffer + 16, auth_key + 96, 32);
- SHA1 (buffer, 48, hash);
- memcpy (aes_iv + 24, hash, 8);
-
- if (encrypt == AES_ENCRYPT) {
- AES_set_encrypt_key (aes_key_raw, 32*8, &aes_key);
- } else {
- AES_set_decrypt_key (aes_key_raw, 32*8, &aes_key);
- }
- memset (aes_key_raw, 0, sizeof (aes_key_raw));
-}
-
-int tgl_pad_aes_encrypt (char *from, int from_len, char *to, int size) {
- int padded_size = (from_len + 15) & -16;
- assert (from_len > 0 && padded_size <= size);
- if (from_len < padded_size) {
- assert (RAND_pseudo_bytes ((unsigned char *) from + from_len, padded_size - from_len) >= 0);
- }
- AES_ige_encrypt ((unsigned char *) from, (unsigned char *) to, padded_size, &aes_key, aes_iv, AES_ENCRYPT);
- return padded_size;
-}
-
-int tgl_pad_aes_decrypt (char *from, int from_len, char *to, int size) {
- if (from_len <= 0 || from_len > size || (from_len & 15)) {
- return -1;
- }
- AES_ige_encrypt ((unsigned char *) from, (unsigned char *) to, from_len, &aes_key, aes_iv, AES_DECRYPT);
- return from_len;
-}
-
-
diff --git a/protocols/Telegram/src/tgl/mtproto-common.h b/protocols/Telegram/src/tgl/mtproto-common.h
deleted file mode 100644
index afcea1eeb4..0000000000
--- a/protocols/Telegram/src/tgl/mtproto-common.h
+++ /dev/null
@@ -1,385 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Nikolay Durov, Andrey Lopatin 2012-2013
- Vitaly Valtman 2013-2015
-*/
-#ifndef __MTPROTO_COMMON_H__
-#define __MTPROTO_COMMON_H__
-
-#include <string.h>
-#include <openssl/rsa.h>
-#include <openssl/bn.h>
-#include <openssl/aes.h>
-#include <stdio.h>
-#include <assert.h>
-
-//#include "interface.h"
-#include "tools.h"
-#include "auto/constants.h"
-
-#include "tgl.h"
-#include "tgl-inner.h"
-/* DH key exchange protocol data structures */
-#define CODE_req_pq 0x60469778
-#define CODE_resPQ 0x05162463
-#define CODE_req_DH_params 0xd712e4be
-#define CODE_p_q_inner_data 0x83c95aec
-#define CODE_p_q_inner_data_temp 0x3c6a84d4
-#define CODE_server_DH_inner_data 0xb5890dba
-#define CODE_server_DH_params_fail 0x79cb045d
-#define CODE_server_DH_params_ok 0xd0e8075c
-#define CODE_set_client_DH_params 0xf5045f1f
-#define CODE_client_DH_inner_data 0x6643b654
-#define CODE_dh_gen_ok 0x3bcbf734
-#define CODE_dh_gen_retry 0x46dc1fb9
-#define CODE_dh_gen_fail 0xa69dae02
-
-#define CODE_bind_auth_key_inner 0x75a3f765
-
-/* service messages */
-#define CODE_rpc_result 0xf35c6d01
-#define CODE_rpc_error 0x2144ca19
-#define CODE_msg_container 0x73f1f8dc
-#define CODE_msg_copy 0xe06046b2
-#define CODE_msgs_ack 0x62d6b459
-#define CODE_bad_msg_notification 0xa7eff811
-#define CODE_bad_server_salt 0xedab447b
-#define CODE_msgs_state_req 0xda69fb52
-#define CODE_msgs_state_info 0x04deb57d
-#define CODE_msgs_all_info 0x8cc0d131
-#define CODE_new_session_created 0x9ec20908
-#define CODE_msg_resend_req 0x7d861a08
-#define CODE_ping 0x7abe77ec
-#define CODE_pong 0x347773c5
-#define CODE_destroy_session 0xe7512126
-#define CODE_destroy_session_ok 0xe22045fc
-#define CODE_destroy_session_none 0x62d350c9
-#define CODE_destroy_sessions 0x9a6face8
-#define CODE_destroy_sessions_res 0xa8164668
-#define CODE_get_future_salts 0xb921bd04
-#define CODE_future_salt 0x0949d9dc
-#define CODE_future_salts 0xae500895
-#define CODE_rpc_drop_answer 0x58e4a740
-#define CODE_rpc_answer_unknown 0x5e2ad36e
-#define CODE_rpc_answer_dropped_running 0xcd78e586
-#define CODE_rpc_answer_dropped 0xa43ad8b7
-#define CODE_msg_detailed_info 0x276d3ec6
-#define CODE_msg_new_detailed_info 0x809db6df
-#define CODE_ping_delay_disconnect 0xf3427b8c
-#define CODE_gzip_packed 0x3072cfa1
-
-#define CODE_input_peer_notify_settings_old 0x3cf4b1be
-#define CODE_peer_notify_settings_old 0xddbcd4a5
-#define CODE_user_profile_photo_old 0x990d1493
-#define CODE_config_old 0x232d5905
-
-#define CODE_msg_new_detailed_info 0x809db6df
-
-#define CODE_msg_detailed_info 0x276d3ec6
-/* not really a limit, for struct encrypted_message only */
-// #define MAX_MESSAGE_INTS 16384
-#define MAX_MESSAGE_INTS 1048576
-#define MAX_PROTO_MESSAGE_INTS 1048576
-
-#define PACKET_BUFFER_SIZE (16384 * 100 + 16) // temp fix
-#pragma pack(push,4)
-struct encrypted_message {
- // unencrypted header
- long long auth_key_id;
- char msg_key[16];
- // encrypted part, starts with encrypted header
- long long server_salt;
- long long session_id;
- // long long auth_key_id2; // removed
- // first message follows
- long long msg_id;
- int seq_no;
- int msg_len; // divisible by 4
- int message[MAX_MESSAGE_INTS];
-};
-
-#pragma pack(pop)
-
-//BN_CTX *BN_ctx;
-
-void tgl_prng_seed (struct tgl_state *TLS, const char *password_filename, int password_length);
-int tgl_serialize_bignum (BIGNUM *b, char *buffer, int maxlen);
-long long tgl_do_compute_rsa_key_fingerprint (RSA *key);
-
-#define packet_buffer tgl_packet_buffer
-#define packet_ptr tgl_packet_ptr
-
-extern int *tgl_packet_buffer;
-extern int *tgl_packet_ptr;
-
-static inline void out_ints (const int *what, int len) {
- assert (packet_ptr + len <= packet_buffer + PACKET_BUFFER_SIZE);
- memcpy (packet_ptr, what, len * 4);
- packet_ptr += len;
-}
-
-
-static inline void out_int (int x) {
- assert (packet_ptr + 1 <= packet_buffer + PACKET_BUFFER_SIZE);
- *packet_ptr++ = x;
-}
-
-
-static inline void out_long (long long x) {
- assert (packet_ptr + 2 <= packet_buffer + PACKET_BUFFER_SIZE);
- *(long long *)packet_ptr = x;
- packet_ptr += 2;
-}
-
-static inline void out_double (double x) {
- assert (packet_ptr + 2 <= packet_buffer + PACKET_BUFFER_SIZE);
- *(double *)packet_ptr = x;
- packet_ptr += 2;
-}
-
-static inline void clear_packet (void) {
- packet_ptr = packet_buffer;
-}
-
-void tgl_out_cstring (const char *str, long len);
-void tgl_out_cstring_careful (const char *str, long len);
-void tgl_out_data (const void *data, long len);
-
-#define out_cstring tgl_out_cstring
-#define out_cstring_careful tgl_out_cstring_careful
-#define out_data tgl_out_data
-
-static inline void out_string (const char *str) {
- out_cstring (str, strlen (str));
-}
-
-static inline void out_bignum (BIGNUM *n) {
- int l = tgl_serialize_bignum (n, (char *)packet_ptr, (PACKET_BUFFER_SIZE - (packet_ptr - packet_buffer)) * 4);
- assert (l > 0);
- packet_ptr += l >> 2;
-}
-
-#define in_ptr tgl_in_ptr
-#define in_end tgl_in_end
-extern int *tgl_in_ptr, *tgl_in_end;
-
-
-//void fetch_pts (void);
-//void fetch_qts (void);
-//void fetch_date (void);
-//void fetch_seq (void);
-static inline int prefetch_strlen (void) {
- if (in_ptr >= in_end) {
- return -1;
- }
- unsigned l = *in_ptr;
- if ((l & 0xff) < 0xfe) {
- l &= 0xff;
- return (in_end >= in_ptr + (l >> 2) + 1) ? (int)l : -1;
- } else if ((l & 0xff) == 0xfe) {
- l >>= 8;
- return (l >= 254 && in_end >= in_ptr + ((l + 7) >> 2)) ? (int)l : -1;
- } else {
- return -1;
- }
-}
-
-static inline char *fetch_str (int len) {
- assert (len >= 0);
- if (len < 254) {
- char *str = (char *) in_ptr + 1;
- in_ptr += 1 + (len >> 2);
- return str;
- } else {
- char *str = (char *) in_ptr + 4;
- in_ptr += (len + 7) >> 2;
- return str;
- }
-}
-
-static inline char *fetch_str_dup (void) {
- int l = prefetch_strlen ();
- assert (l >= 0);
- int i;
- char *s = fetch_str (l);
- for (i = 0; i < l; i++) {
- if (!s[i]) { break; }
- }
- char *r = talloc (i + 1);
- memcpy (r, s, i);
- r[i] = 0;
- return r;
-}
-
-static inline int fetch_update_str (char **s) {
- if (!*s) {
- *s = fetch_str_dup ();
- return 1;
- }
- int l = prefetch_strlen ();
- char *r = fetch_str (l);
- if (memcmp (*s, r, l) || (*s)[l]) {
- tfree_str (*s);
- *s = talloc (l + 1);
- memcpy (*s, r, l);
- (*s)[l] = 0;
- return 1;
- }
- return 0;
-}
-
-static inline int fetch_update_int (int *value) {
- if (*value == *in_ptr) {
- in_ptr ++;
- return 0;
- } else {
- *value = *(in_ptr ++);
- return 1;
- }
-}
-
-static inline int fetch_update_long (long long *value) {
- if (*value == *(long long *)in_ptr) {
- in_ptr += 2;
- return 0;
- } else {
- *value = *(long long *)(in_ptr);
- in_ptr += 2;
- return 1;
- }
-}
-
-static inline int set_update_int (int *value, int new_value) {
- if (*value == new_value) {
- return 0;
- } else {
- *value = new_value;
- return 1;
- }
-}
-
-static inline void fetch_skip (int n) {
- in_ptr += n;
- assert (in_ptr <= in_end);
-}
-
-static inline void fetch_skip_str (void) {
- int l = prefetch_strlen ();
- assert (l >= 0);
- fetch_str (l);
-}
-
-static inline long have_prefetch_ints (void) {
- return in_end - in_ptr;
-}
-
-int tgl_fetch_bignum (BIGNUM *x);
-#define fetch_bignum tgl_fetch_bignum
-
-static inline int fetch_int (void) {
- assert (in_ptr + 1 <= in_end);
- return *(in_ptr ++);
-}
-
-static inline int fetch_bool (void) {
- assert (in_ptr + 1 <= in_end);
- assert (*(in_ptr) == (int)CODE_bool_true || *(in_ptr) == (int)CODE_bool_false);
- return *(in_ptr ++) == (int)CODE_bool_true;
-}
-
-static inline int prefetch_int (void) {
- assert (in_ptr < in_end);
- return *(in_ptr);
-}
-
-static inline void prefetch_data (void *data, int size) {
- assert (in_ptr + (size >> 2) <= in_end);
- memcpy (data, in_ptr, size);
-}
-
-static inline void fetch_data (void *data, int size) {
- assert (in_ptr + (size >> 2) <= in_end);
- memcpy (data, in_ptr, size);
- assert (!(size & 3));
- in_ptr += (size >> 2);
-}
-
-static inline long long fetch_long (void) {
- assert (in_ptr + 2 <= in_end);
- long long r = *(long long *)in_ptr;
- in_ptr += 2;
- return r;
-}
-
-static inline double fetch_double (void) {
- assert (in_ptr + 2 <= in_end);
- double r = *(double *)in_ptr;
- in_ptr += 2;
- return r;
-}
-
-static inline void fetch_ints (void *data, int count) {
- assert (in_ptr + count <= in_end);
- memcpy (data, in_ptr, 4 * count);
- in_ptr += count;
-}
-
-static inline void fetch256 (void *buf) {
- int l = prefetch_strlen ();
- assert (l >= 0);
- char *s = fetch_str (l);
- if (l < 256) {
- memcpy ((char *)buf + 256 - l, s, l);
- memset (buf, 0, 256 - l);
- } else {
- memcpy (buf, s + (l - 256), 256);
- }
-}
-
-static inline int in_remaining (void) {
- return 4 * (in_end - in_ptr);
-}
-
-//int get_random_bytes (unsigned char *buf, int n);
-
-int tgl_pad_rsa_encrypt (struct tgl_state *TLS, char *from, int from_len, char *to, int size, BIGNUM *N, BIGNUM *E);
-int tgl_pad_rsa_decrypt (struct tgl_state *TLS, char *from, int from_len, char *to, int size, BIGNUM *N, BIGNUM *D);
-
-//extern long long rsa_encrypted_chunks, rsa_decrypted_chunks;
-
-//extern unsigned char aes_key_raw[32], aes_iv[32];
-//extern AES_KEY aes_key;
-
-void tgl_init_aes_unauth (const char server_nonce[16], const char hidden_client_nonce[32], int encrypt);
-void tgl_init_aes_auth (char auth_key[192], char msg_key[16], int encrypt);
-int tgl_pad_aes_encrypt (char *from, int from_len, char *to, int size);
-int tgl_pad_aes_decrypt (char *from, int from_len, char *to, int size);
-/*
-static inline void hexdump_in (void) {
- hexdump (in_ptr, in_end);
-}
-
-static inline void hexdump_out (void) {
- hexdump (packet_buffer, packet_ptr);
-}*/
-
-#if defined(__MACH__) || defined(WIN32) || defined(_WIN32)
-#define CLOCK_REALTIME 0
-#define CLOCK_MONOTONIC 1
-#endif
-#endif
diff --git a/protocols/Telegram/src/tgl/mtproto-utils.c b/protocols/Telegram/src/tgl/mtproto-utils.c
deleted file mode 100644
index 481bff6371..0000000000
--- a/protocols/Telegram/src/tgl/mtproto-utils.c
+++ /dev/null
@@ -1,178 +0,0 @@
-#include "config.h"
-#include <openssl/bn.h>
-#include "tgl.h"
-#include "tools.h"
-
-#if !defined(HAVE___BUILTIN_BSWAP32) && !defined(__FreeBSD__) && !defined(__OpenBSD__)
-static inline unsigned __builtin_bswap32(unsigned x) {
- return ((x << 24) & 0xff000000) |
- ((x << 8) & 0x00ff0000) |
- ((x >> 8) & 0x0000ff00) |
- ((x >> 24) & 0x000000ff);
-}
-#endif
-
-static unsigned long long gcd (unsigned long long a, unsigned long long b) {
- return b ? gcd (b, a % b) : a;
-}
-
-static int check_prime (struct tgl_state *TLS, BIGNUM *p) {
- int r = BN_is_prime (p, BN_prime_checks, 0, TLS->BN_ctx, 0);
- ensure (r >= 0);
- return r;
-}
-
-
-// Complete set of checks see at https://core.telegram.org/mtproto/security_guidelines
-
-
-// Checks that (p,g) is acceptable pair for DH
-int tglmp_check_DH_params (struct tgl_state *TLS, BIGNUM *p, int g) {
- if (g < 2 || g > 7) { return -1; }
- if (BN_num_bits (p) != 2048) { return -1; }
-
- BIGNUM *t = BN_new ();
-
- BIGNUM *dh_g = BN_new ();
-
- ensure (BN_set_word (dh_g, 4 * g));
- ensure (BN_mod (t, p, dh_g, TLS->BN_ctx));
- int x = BN_get_word (t);
- assert (x >= 0 && x < 4 * g);
-
- BN_free (dh_g);
-
- int res = 0;
- switch (g) {
- case 2:
- if (x != 7) { res = -1; }
- break;
- case 3:
- if (x % 3 != 2) { res = -1; }
- break;
- case 4:
- break;
- case 5:
- if (x % 5 != 1 && x % 5 != 4) { res = -1; }
- break;
- case 6:
- if (x != 19 && x != 23) { res = -1; }
- break;
- case 7:
- if (x % 7 != 3 && x % 7 != 5 && x % 7 != 6) { res = -1; }
- break;
- }
-
- if (res < 0 || !check_prime (TLS, p)) {
- BN_free (t);
- return -1;
- }
-
- BIGNUM *b = BN_new ();
- ensure (BN_set_word (b, 2));
- ensure (BN_div (t, 0, p, b, TLS->BN_ctx));
- if (!check_prime (TLS, t)) {
- res = -1;
- }
- BN_free (b);
- BN_free (t);
- return res;
-}
-
-// checks that g_a is acceptable for DH
-int tglmp_check_g_a (struct tgl_state *TLS, BIGNUM *p, BIGNUM *g_a) {
- if (BN_num_bytes (g_a) > 256) {
- return -1;
- }
- if (BN_num_bits (g_a) < 2048 - 64) {
- return -1;
- }
- if (BN_cmp (p, g_a) <= 0) {
- return -1;
- }
-
- BIGNUM *dif = BN_new ();
- BN_sub (dif, p, g_a);
- if (BN_num_bits (dif) < 2048 - 64) {
- BN_free (dif);
- return -1;
- }
- BN_free (dif);
- return 0;
-}
-
-static unsigned long long BN2ull (BIGNUM *b) {
- if (sizeof (BN_ULONG) == 8) {
- return BN_get_word (b);
- } else {
- unsigned int tmp[2];
- memset (tmp, 0, 8);
- BN_bn2bin (b, (void *)tmp);
- return __builtin_bswap32 (tmp[0]) * (1ll << 32) | __builtin_bswap32 (tmp[1]);
- }
-}
-
-static void ull2BN (BIGNUM *b, unsigned long long val) {
- if (sizeof (BN_ULONG) == 8 || val < (1ll << 32)) {
- BN_set_word (b, val);
- } else {
- unsigned int tmp[2];
- tmp[0] = __builtin_bswap32 (val >> 32);
- tmp[1] = __builtin_bswap32 ((unsigned)val);
- BN_bin2bn ((void *)tmp, 8, b);
- }
-}
-
-int bn_factorize (BIGNUM *pq, BIGNUM *p, BIGNUM *q) {
- // Should work in any case
- // Rewrite this code
- unsigned long long what = BN2ull (pq);
-
- int it = 0;
-
- unsigned long long g = 0;
- int i;
- for (i = 0; i < 3 || it < 1000; i++) {
- int q = ((lrand48() & 15) + 17) % what;
- unsigned long long x = (long long)lrand48 () % (what - 1) + 1, y = x;
- int lim = 1 << (i + 18);
- int j;
- for (j = 1; j < lim; j++) {
- ++it;
- unsigned long long a = x, b = x, c = q;
- while (b) {
- if (b & 1) {
- c += a;
- if (c >= what) {
- c -= what;
- }
- }
- a += a;
- if (a >= what) {
- a -= what;
- }
- b >>= 1;
- }
- x = c;
- unsigned long long z = x < y ? what + x - y : x - y;
- g = gcd (z, what);
- if (g != 1) {
- break;
- }
- if (!(j & (j - 1))) {
- y = x;
- }
- }
- if (g > 1 && g < what) break;
- }
-
- assert (g > 1 && g < what);
- unsigned long long p1 = g;
- unsigned long long p2 = what / g;
- if (p1 > p2) {
- unsigned long long t = p1; p1 = p2; p2 = t;
- }
- ull2BN (p, p1);
- ull2BN (q, p2);
- return 0;
-}
diff --git a/protocols/Telegram/src/tgl/mtproto-utils.h b/protocols/Telegram/src/tgl/mtproto-utils.h
deleted file mode 100644
index e9bb6aeef3..0000000000
--- a/protocols/Telegram/src/tgl/mtproto-utils.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#ifndef __MTPROTO_UTILS_H__
-#define __MTPROTO_UTILS_H__
-#include <openssl/bn.h>
-int tglmp_check_DH_params (struct tgl_state *TLS, BIGNUM *p, int g);
-int tglmp_check_g_a (struct tgl_state *TLS, BIGNUM *p, BIGNUM *g_a);
-int bn_factorize (BIGNUM *pq, BIGNUM *p, BIGNUM *q);
-#endif
diff --git a/protocols/Telegram/src/tgl/no-preview.h b/protocols/Telegram/src/tgl/no-preview.h
deleted file mode 100644
index cf2651d9d2..0000000000
--- a/protocols/Telegram/src/tgl/no-preview.h
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-
-// Just sample jpg file 90x90
-
-int thumb_file_size = (82 * 6 - 2) * 4;
-int thumb_file [] = {
-0xe0ffd8ff, 0x464a1000, 0x01004649, 0x64000101, 0x00006400, 0xa002e2ff,
-0x5f434349, 0x464f5250, 0x00454c49, 0x00000101, 0x636c9002, 0x3004736d,
-0x6e6d0000, 0x47527274, 0x59582042, 0xdd07205a, 0x04000b00, 0x1b001600,
-0x63612400, 0x50417073, 0x00004c50, 0x00000000, 0x00000000, 0x00000000,
-0x00000000, 0x00000000, 0x00000000, 0x0100d6f6, 0x00000000, 0x636c2dd3,
-0x0000736d, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
-0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
-0x65640b00, 0x00006373, 0x00000801, 0x70633800, 0x00007472, 0x00004001,
-0x74774e00, 0x00007470, 0x00009001, 0x68631400, 0x00006461, 0x0000a401,
-0x58722c00, 0x00005a59, 0x0000d001, 0x58621400, 0x00005a59, 0x0000e401,
-0x58671400, 0x00005a59, 0x0000f801, 0x54721400, 0x00004352, 0x00000c02,
-0x54672000, 0x00004352, 0x00002c02, 0x54622000, 0x00004352, 0x00004c02,
-0x68632000, 0x00006d72, 0x00006c02, 0x6c6d2400, 0x00006375, 0x00000000,
-0x00000100, 0x6e650c00, 0x00005355, 0x00001c00, 0x73001c00, 0x47005200,
-0x20004200, 0x75006200, 0x6c006900, 0x2d007400, 0x6e006900, 0x6c6d0000,
-0x00006375, 0x00000000, 0x00000100, 0x6e650c00, 0x00005355, 0x00003200,
-0x4e001c00, 0x20006f00, 0x6f006300, 0x79007000, 0x69007200, 0x68006700,
-0x2c007400, 0x75002000, 0x65007300, 0x66002000, 0x65007200, 0x6c006500,
-0x00007900, 0x59580000, 0x0000205a, 0x00000000, 0x0100d6f6, 0x00000000,
-0x66732dd3, 0x00003233, 0x01000000, 0x00004a0c, 0xffffe305, 0x00002af3,
-0x00009b07, 0xffff87fd, 0xffffa2fb, 0x0000a3fd, 0x0000d803, 0x595894c0,
-0x0000205a, 0x00000000, 0x0000946f, 0x0000ee38, 0x59589003, 0x0000205a,
-0x00000000, 0x00009d24, 0x0000830f, 0x5958beb6, 0x0000205a, 0x00000000,
-0x0000a562, 0x000090b7, 0x6170de18, 0x00006172, 0x03000000, 0x02000000,
-0x00006666, 0x0000a7f2, 0x0000590d, 0x0000d013, 0x61705b0a, 0x00006172,
-0x03000000, 0x02000000, 0x00006666, 0x0000a7f2, 0x0000590d, 0x0000d013,
-0x61705b0a, 0x00006172, 0x03000000, 0x02000000, 0x00006666, 0x0000a7f2,
-0x0000590d, 0x0000d013, 0x68635b0a, 0x00006d72, 0x03000000, 0x00000000,
-0x0000d7a3, 0x00007b54, 0x0000cd4c, 0x00009a99, 0x00006626, 0xdbff5c0f,
-0x14004300, 0x0f120f0e, 0x1112140d, 0x14161712, 0x21331f18, 0x1f1c1c1f,
-0x252f2d3f, 0x4e414a33, 0x4841494d, 0x765c5246, 0x6f575264, 0x66484658,
-0x7a6f688c, 0x8485847d, 0x9b91634f, 0x769a808f, 0xff7f8481, 0x014300db,
-0x1f171716, 0x213c1f1b, 0x547f3c21, 0x7f7f5448, 0x7f7f7f7f, 0x7f7f7f7f,
-0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f,
-0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x1100c0ff, 0x005a0008,
-0x2201035a, 0x01110200, 0xff011103, 0x001900c4, 0x01010101, 0x00000101,
-0x00000000, 0x00000000, 0x02030400, 0xc4ff0605, 0x00103600, 0x02010401,
-0x06050304, 0x00000306, 0x01000000, 0x11030200, 0x05211204, 0x13514131,
-0x32146122, 0x23918171, 0x72423424, 0x432515a1, 0xa2827444, 0xc4fff0b3,
-0x01011400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x1400c4ff,
-0x00000111, 0x00000000, 0x00000000, 0x00000000, 0xdaff0000, 0x01030c00,
-0x03110200, 0x003f0011, 0x404434fb, 0xbcb4875c, 0x006b38b0, 0x03dcdb12,
-0xf4637f74, 0xe519f153, 0x09d7c5c7, 0x47d29160, 0x20692f18, 0xd06d786a,
-0x53f7f922, 0x17b3e260, 0x2fe8668c, 0x1786a473, 0x9775efbd, 0xe917e43a,
-0x1d0a1bb0, 0x114d0f82, 0x14651110, 0x35f299ed, 0xe9b09680, 0xf5a4fc2f,
-0xe975bd03, 0xb506737b, 0x04444440, 0x5c444044, 0x8e8dedbd, 0xc61adc7b,
-0x689c738b, 0x92a0dc01, 0x58e2b77f, 0x7bfb37d1, 0xb5b5e79d, 0xdbf968cc,
-0xead3f48d, 0x38ed1313, 0xdea77c86, 0xae089963, 0xc743435a, 0x403fe4ce,
-0x392ee1b9, 0xed39e718, 0xd6517e2d, 0x7fc4aa03, 0xb7ad7590, 0x77e7e6ab,
-0x34bf705d, 0x7c77ca53, 0x3dea1299, 0x7fb0bcf4, 0x241fadc5, 0x95a7a816,
-0x13fbe6f3, 0x3182b135, 0xd1b4b224, 0x1b0d48a2, 0xbf9d26d8, 0x82dc3640,
-0x63569a2a, 0xbbd224c3, 0xb9b4714c, 0x1680aec6, 0x3d311856, 0x9b59be91,
-0x09876ca6, 0x61d86564, 0x5a9f06d2, 0x36f51b0d, 0x8682e476, 0xacb1b131,
-0xd1584363, 0x00456b4d, 0x22d2053b, 0x22202202, 0xf3f30222, 0xe3e513e5,
-0xf1e6e1f0, 0x2380496e, 0x5fdcdb68, 0x549b3a27, 0x825e6a6c, 0x6522028b,
-0xaf91ccc8, 0x341cf26b, 0x58dbc4b5, 0xf2289add, 0x0854ddbd, 0x0b9247d5,
-0xf02b5c54, 0x3f917f92, 0xaf56affd, 0xe3760637, 0x05cebde0, 0xed4c76ce,
-0x3cef1b63, 0x7fd8aff8, 0xa0c902ea, 0x7e730d0a, 0x435834f3, 0x26edbb76,
-0xd3ec00fd, 0x76d48efa, 0xa8560f2d, 0x0e766331, 0xd319993c, 0x20243209,
-0x61b7e6c8, 0x998331d0, 0x640ee802, 0x47a3d493, 0xfab99413, 0x4fd871f1,
-0xe9443792, 0x627e051c, 0xd8f3051c, 0x2f28f558, 0x64b51745, 0x1b2bfee3,
-0xb8783953, 0x9900fff6, 0xd8176a65, 0x5a3bf56a, 0x1b331fdb, 0x64b3572f,
-0xd59a3643, 0xaf3abce1, 0x11dd20bd, 0x01111110, 0x5c141011, 0xb3e3083f,
-0xd9b19cc4, 0x17edb20e, 0xa78e9aa1, 0x4ef4de06, 0x00c0bfe7, 0x7e1e442d,
-0x9221fe38, 0xedb5c7dc, 0x6338078a, 0x62495b8d, 0xc11d9b8c, 0x49e81b16,
-0x51d02bea, 0x3eb86d70, 0xc8bc4f13, 0xa10ec758, 0xd40751c0, 0x5ac94710,
-0xc4c8b080, 0x95492b83, 0x975ee696, 0xb7bd96b4, 0x17379cce, 0x82e856e8,
-0xe4c2c82a, 0x398e935f, 0x632437ea, 0x7c9c87d2, 0xdc1ddb7c, 0x65a80a48,
-0x2309f164, 0x51fab475, 0x081dc11d, 0xda45573b, 0x6622f3f3, 0x48f1b214,
-0x676c4edb, 0x243468c7, 0x00ffde60, 0xf1630350, 0xa0076c1d, 0x8f2c0c8b,
-0x2383c26b, 0x361a8f4e, 0xaceea6c9, 0x01dd5a5d, 0x11111011, 0xc3780c04,
-0xbf093ee2, 0xc7972c0b, 0x00d99040, 0xc0c20eb7, 0x659d3bd4, 0x269ab85e,
-0x468e114f, 0x11ad4fdb, 0x83d083d8, 0x8c52f4bd, 0x3c9664bf, 0xa4f9c77c,
-0x22a68876, 0xadb18784, 0xf480be83, 0x885a00ea, 0x220e0a88, 0xc303e4f6,
-0xc866e058, 0xdddbd661, 0xdf395db1, 0xbad64343, 0xe6e65b03, 0x668e81c3,
-0xad619e98, 0xeeb94563, 0xd4d19a3c, 0x3316ce95, 0x9d65f1e1, 0x3bf324fe,
-0x0e468f53, 0xc386068c, 0xa89e24f7, 0xf0c7c73b, 0xb60e391f, 0x1b8827cb,
-0x58601954, 0xc54f90f9, 0x80886ec5, 0x88088888, 0x1b7bb980, 0xb4c71c23,
-0xe6148e39, 0xb12358b8, 0xbd08225d, 0x0ffef085, 0x72b4f025, 0x635ce389,
-0xb90277e4, 0x0d05e000, 0x9bf9dbb9, 0x8e749fbc, 0x7ee6abbf, 0x4ddbf4af,
-0x728df7f3, 0x10b59adf, 0xe3c38f49, 0xb23c638a, 0xdb3d9349, 0x66899a64,
-0x00004dd5, 0xf51b5adf, 0x2220a255, 0xd9ff0f22};
diff --git a/protocols/Telegram/src/tgl/queries-encrypted.c b/protocols/Telegram/src/tgl/queries-encrypted.c
deleted file mode 100644
index cdfea63029..0000000000
--- a/protocols/Telegram/src/tgl/queries-encrypted.c
+++ /dev/null
@@ -1,758 +0,0 @@
-
-/* {{{ Encrypt decrypted */
-static int *encr_extra;
-static int *encr_ptr;
-static int *encr_end;
-
-static char *encrypt_decrypted_message (struct tgl_secret_chat *E) {
- static int msg_key[4];
- static unsigned char sha1a_buffer[20];
- static unsigned char sha1b_buffer[20];
- static unsigned char sha1c_buffer[20];
- static unsigned char sha1d_buffer[20];
- int x = *(encr_ptr);
- assert (x >= 0 && !(x & 3));
- sha1 ((void *)encr_ptr, 4 + x, sha1a_buffer);
- memcpy (msg_key, sha1a_buffer + 4, 16);
-
- static unsigned char buf[64];
- memcpy (buf, msg_key, 16);
- memcpy (buf + 16, E->key, 32);
- sha1 (buf, 48, sha1a_buffer);
-
- memcpy (buf, E->key + 8, 16);
- memcpy (buf + 16, msg_key, 16);
- memcpy (buf + 32, E->key + 12, 16);
- sha1 (buf, 48, sha1b_buffer);
-
- memcpy (buf, E->key + 16, 32);
- memcpy (buf + 32, msg_key, 16);
- sha1 (buf, 48, sha1c_buffer);
-
- memcpy (buf, msg_key, 16);
- memcpy (buf + 16, E->key + 24, 32);
- sha1 (buf, 48, sha1d_buffer);
-
- static unsigned char key[32];
- memcpy (key, sha1a_buffer + 0, 8);
- memcpy (key + 8, sha1b_buffer + 8, 12);
- memcpy (key + 20, sha1c_buffer + 4, 12);
-
- static unsigned char iv[32];
- memcpy (iv, sha1a_buffer + 8, 12);
- memcpy (iv + 12, sha1b_buffer + 0, 8);
- memcpy (iv + 20, sha1c_buffer + 16, 4);
- memcpy (iv + 24, sha1d_buffer + 0, 8);
-
- AES_KEY aes_key;
- AES_set_encrypt_key (key, 256, &aes_key);
- AES_ige_encrypt ((void *)encr_ptr, (void *)encr_ptr, 4 * (encr_end - encr_ptr), &aes_key, iv, 1);
- memset (&aes_key, 0, sizeof (aes_key));
-
- return (void *)msg_key;
-}
-
-static void encr_start (void) {
- encr_extra = packet_ptr;
- packet_ptr += 1; // str len
- packet_ptr += 2; // fingerprint
- packet_ptr += 4; // msg_key
- packet_ptr += 1; // len
-}
-
-
-static void encr_finish (struct tgl_secret_chat *E) {
- int l = packet_ptr - (encr_extra + 8);
- while (((packet_ptr - encr_extra) - 3) & 3) {
- int t;
- tglt_secure_random (&t, 4);
- out_int (t);
- }
-
- *encr_extra = ((packet_ptr - encr_extra) - 1) * 4 * 256 + 0xfe;
- encr_extra ++;
- *(long long *)encr_extra = E->key_fingerprint;
- encr_extra += 2;
- encr_extra[4] = l * 4;
- encr_ptr = encr_extra + 4;
- encr_end = packet_ptr;
- memcpy (encr_extra, encrypt_decrypted_message (E), 16);
-}
-/* }}} */
-
-void tgl_do_send_encr_action (struct tgl_state *TLS, struct tgl_secret_chat *E, struct tl_ds_decrypted_message_action *A) {
- long long t;
- tglt_secure_random (&t, 8);
- int peer_id = tgl_get_peer_id (E->id);
- int peer_type = TGL_PEER_ENCR_CHAT;
- int date = time (0);
-
- bl_do_create_message_encr_new (TLS, t, &TLS->our_id, &peer_type, &peer_id, &date, NULL, 0, NULL, A, NULL, TGLMF_PENDING | TGLMF_OUT | TGLMF_UNREAD | TGLMF_CREATE | TGLMF_CREATED | TGLMF_ENCRYPTED);
-
- struct tgl_message *M = tgl_message_get (TLS, t);
- assert (M);
- tgl_do_send_msg (TLS, M, 0, 0);
-}
-
-void tgl_do_send_encr_chat_layer (struct tgl_state *TLS, struct tgl_secret_chat *E) {
- static struct tl_ds_decrypted_message_action A;
- A.magic = CODE_decrypted_message_action_notify_layer;
- int layer = TGL_ENCRYPTED_LAYER;
- A.layer = &layer;
-
- tgl_do_send_encr_action (TLS, E, &A);
-}
-
-void tgl_do_set_encr_chat_ttl (struct tgl_state *TLS, struct tgl_secret_chat *E, int ttl, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- static struct tl_ds_decrypted_message_action A;
- A.magic = CODE_decrypted_message_action_set_message_t_t_l;
- A.layer = &ttl;
-
- tgl_do_send_encr_action (TLS, E, &A);
-}
-
-
-/* {{{ Seng msg (plain text, encrypted) */
-static int msg_send_encr_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tgl_message *M = q->extra;
- assert (M->flags & TGLMF_ENCRYPTED);
-
- if (M->flags & TGLMF_PENDING) {
- bl_do_create_message_encr_new (TLS, M->id, NULL, NULL, NULL,
- &M->date,
- NULL, 0, NULL, NULL, NULL, M->flags ^ TGLMF_PENDING);
-
- bl_do_msg_update (TLS, M->id);
- }
-
- if (q->callback) {
- ((void (*)(struct tgl_state *TLS, void *, int, struct tgl_message *))q->callback) (TLS, q->callback_extra, 1, M);
- }
- return 0;
-}
-
-static int msg_send_encr_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- struct tgl_message *M = q->extra;
- tgl_peer_t *P = tgl_peer_get (TLS, M->to_id);
- if (P && P->encr_chat.state != sc_deleted && error_code == 400) {
- if (strncmp (error, "ENCRYPTION_DECLINED", 19) == 0) {
- bl_do_encr_chat_delete (TLS, &P->encr_chat);
- }
- }
- if (q->callback) {
- ((void (*)(struct tgl_state *TLS, void *, int, struct tgl_message *))q->callback) (TLS, q->callback_extra, 0, M);
- }
- if (M) {
- bl_do_message_delete (TLS, M);
- }
- return 0;
-}
-
-static struct query_methods msg_send_encr_methods = {
- .on_answer = msg_send_encr_on_answer,
- .on_error = msg_send_encr_on_error,
- .type = TYPE_TO_PARAM(messages_sent_encrypted_message)
-};
-/* }}} */
-
-void tgl_do_send_encr_msg_action (struct tgl_state *TLS, struct tgl_message *M, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- tgl_peer_t *P = tgl_peer_get (TLS, M->to_id);
- if (!P || P->encr_chat.state != sc_ok) {
- vlogprintf (E_WARNING, "Unknown encrypted chat\n");
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
-
- assert (M->flags & TGLMF_ENCRYPTED);
- clear_packet ();
- out_int (CODE_messages_send_encrypted_service);
- out_int (CODE_input_encrypted_chat);
- out_int (tgl_get_peer_id (M->to_id));
- out_long (P->encr_chat.access_hash);
- out_long (M->id);
- encr_start ();
- out_int (CODE_decrypted_message_layer);
- out_random (15 + 4 * (lrand48 () % 3));
- out_int (TGL_ENCRYPTED_LAYER);
- out_int (2 * P->encr_chat.in_seq_no + (P->encr_chat.admin_id != TLS->our_id));
- out_int (2 * P->encr_chat.out_seq_no + (P->encr_chat.admin_id == TLS->our_id) - 2);
- out_int (CODE_decrypted_message_service);
- out_long (M->id);
-
- switch (M->action.type) {
- case tgl_message_action_notify_layer:
- out_int (CODE_decrypted_message_action_notify_layer);
- out_int (M->action.layer);
- break;
- case tgl_message_action_set_message_ttl:
- out_int (CODE_decrypted_message_action_set_message_t_t_l);
- out_int (M->action.ttl);
- break;
- case tgl_message_action_request_key:
- out_int (CODE_decrypted_message_action_request_key);
- out_long (M->action.exchange_id);
- out_cstring ((void *)M->action.g_a, 256);
- break;
- case tgl_message_action_accept_key:
- out_int (CODE_decrypted_message_action_accept_key);
- out_long (M->action.exchange_id);
- out_cstring ((void *)M->action.g_a, 256);
- out_long (M->action.key_fingerprint);
- break;
- case tgl_message_action_commit_key:
- out_int (CODE_decrypted_message_action_commit_key);
- out_long (M->action.exchange_id);
- out_long (M->action.key_fingerprint);
- break;
- case tgl_message_action_abort_key:
- out_int (CODE_decrypted_message_action_abort_key);
- out_long (M->action.exchange_id);
- break;
- case tgl_message_action_noop:
- out_int (CODE_decrypted_message_action_noop);
- break;
- default:
- assert (0);
- }
- encr_finish (&P->encr_chat);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &msg_send_encr_methods, M, callback, callback_extra);
-}
-
-void tgl_do_send_encr_msg (struct tgl_state *TLS, struct tgl_message *M, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- if (M->flags & TGLMF_SERVICE) {
- tgl_do_send_encr_msg_action (TLS, M, callback, callback_extra);
- return;
- }
- tgl_peer_t *P = tgl_peer_get (TLS, M->to_id);
- if (!P || P->encr_chat.state != sc_ok) {
- vlogprintf (E_WARNING, "Unknown encrypted chat\n");
- if (callback) {
- callback (TLS, callback_extra, 0, M);
- }
- return;
- }
-
- assert (M->flags & TGLMF_ENCRYPTED);
-
- clear_packet ();
- out_int (CODE_messages_send_encrypted);
- out_int (CODE_input_encrypted_chat);
- out_int (tgl_get_peer_id (M->to_id));
- out_long (P->encr_chat.access_hash);
- out_long (M->id);
- encr_start ();
- out_int (CODE_decrypted_message_layer);
- out_random (15 + 4 * (lrand48 () % 3));
- out_int (TGL_ENCRYPTED_LAYER);
- out_int (2 * P->encr_chat.in_seq_no + (P->encr_chat.admin_id != TLS->our_id));
- out_int (2 * P->encr_chat.out_seq_no + (P->encr_chat.admin_id == TLS->our_id) - 2);
- out_int (CODE_decrypted_message);
- out_long (M->id);
- out_int (P->encr_chat.ttl);
- out_cstring ((void *)M->message, M->message_len);
- switch (M->media.type) {
- case tgl_message_media_none:
- out_int (CODE_decrypted_message_media_empty);
- break;
- case tgl_message_media_geo:
- out_int (CODE_decrypted_message_media_geo_point);
- out_double (M->media.geo.latitude);
- out_double (M->media.geo.longitude);
- break;
- default:
- assert (0);
- }
- encr_finish (&P->encr_chat);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &msg_send_encr_methods, M, callback, callback_extra);
-}
-
-static int mark_read_encr_on_receive (struct tgl_state *TLS, struct query *q, void *D) {
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static int mark_read_encr_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_peer_t *P = q->extra;
- if (P && P->encr_chat.state != sc_deleted && error_code == 400) {
- if (strncmp (error, "ENCRYPTION_DECLINED", 19) == 0) {
- bl_do_encr_chat_delete(TLS, &P->encr_chat);
- }
- }
- return 0;
-}
-
-static struct query_methods mark_read_encr_methods = {
- .on_answer = mark_read_encr_on_receive,
- .on_error = mark_read_encr_on_error,
- .type = TYPE_TO_PARAM(bool)
-};
-
-void tgl_do_messages_mark_read_encr (struct tgl_state *TLS, tgl_peer_id_t id, long long access_hash, int last_time, void (*callback)(struct tgl_state *TLS, void *callback_extra, int), void *callback_extra) {
- clear_packet ();
- out_int (CODE_messages_read_encrypted_history);
- out_int (CODE_input_encrypted_chat);
- out_int (tgl_get_peer_id (id));
- out_long (access_hash);
- out_int (last_time);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &mark_read_encr_methods, tgl_peer_get (TLS, id), callback, callback_extra);
-}
-
-static int send_encr_file_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_messages_sent_encrypted_message *DS_MSEM = D;
- struct tgl_message *M = q->extra;
-
- if (M->flags & TGLMF_PENDING) {
- bl_do_create_message_encr_new (TLS, M->id, NULL, NULL, NULL, DS_MSEM->date,
- NULL, 0, NULL, NULL, DS_MSEM->file, M->flags ^ TGLMF_PENDING);
- bl_do_msg_update (TLS, M->id);
- }
-
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_message *))q->callback)(TLS, q->callback_extra, 1, M);
- }
- return 0;
-}
-
-static struct query_methods send_encr_file_methods = {
- .on_answer = send_encr_file_on_answer,
- .on_error = msg_send_encr_on_error,
- .type = TYPE_TO_PARAM(messages_sent_encrypted_message)
-};
-
-static void send_file_encrypted_end (struct tgl_state *TLS, struct send_file *f, void *callback, void *callback_extra) {
- out_int (CODE_messages_send_encrypted_file);
- out_int (CODE_input_encrypted_chat);
- out_int (tgl_get_peer_id (f->to_id));
- tgl_peer_t *P = tgl_peer_get (TLS, f->to_id);
- assert (P);
- out_long (P->encr_chat.access_hash);
- long long r;
- tglt_secure_random (&r, 8);
- out_long (r);
- encr_start ();
- out_int (CODE_decrypted_message_layer);
- out_random (15 + 4 * (lrand48 () % 3));
- out_int (TGL_ENCRYPTED_LAYER);
- out_int (2 * P->encr_chat.in_seq_no + (P->encr_chat.admin_id != TLS->our_id));
- out_int (2 * P->encr_chat.out_seq_no + (P->encr_chat.admin_id == TLS->our_id));
- out_int (CODE_decrypted_message);
- out_long (r);
- out_int (P->encr_chat.ttl);
- out_string ("");
- int *save_ptr = packet_ptr;
- if (f->flags == -1) {
- out_int (CODE_decrypted_message_media_photo);
- } else if ((f->flags & TGLDF_VIDEO)) {
- out_int (CODE_decrypted_message_media_video);
- } else if ((f->flags & TGLDF_AUDIO)) {
- out_int (CODE_decrypted_message_media_audio);
- } else {
- out_int (CODE_decrypted_message_media_document);
- }
- if (f->flags == -1 || !(f->flags & TGLDF_AUDIO)) {
- out_cstring ("", 0);
- out_int (90);
- out_int (90);
- }
-
- if (f->flags == -1) {
- out_int (f->w);
- out_int (f->h);
- } else if (f->flags & TGLDF_VIDEO) {
- out_int (f->duration);
- out_string (tg_mime_by_filename (f->file_name));
- out_int (f->w);
- out_int (f->h);
- } else if (f->flags & TGLDF_AUDIO) {
- out_int (f->duration);
- out_string (tg_mime_by_filename (f->file_name));
- } else {
- out_string ("");
- out_string (tg_mime_by_filename (f->file_name));
- // document
- }
-
- out_int (f->size);
- out_cstring ((void *)f->key, 32);
- out_cstring ((void *)f->init_iv, 32);
-
- int *save_in_ptr = in_ptr;
- int *save_in_end = in_end;
-
- in_ptr = save_ptr;
- in_end = packet_ptr;
-
- assert (skip_type_any (TYPE_TO_PARAM(decrypted_message_media)) >= 0);
- assert (in_ptr == in_end);
-
- in_ptr = save_ptr;
- in_end = packet_ptr;
-
- struct tl_ds_decrypted_message_media *DS_DMM = fetch_ds_type_decrypted_message_media (TYPE_TO_PARAM (decrypted_message_media));
- in_end = save_in_ptr;
- in_ptr = save_in_end;
-
-
- int peer_type = tgl_get_peer_type (f->to_id);
- int peer_id = tgl_get_peer_id (f->to_id);
- int date = time (NULL);
-
-
- encr_finish (&P->encr_chat);
- if (f->size < (16 << 20)) {
- out_int (CODE_input_encrypted_file_uploaded);
- } else {
- out_int (CODE_input_encrypted_file_big_uploaded);
- }
- out_long (f->id);
- out_int (f->part_num);
- if (f->size < (16 << 20)) {
- out_string ("");
- }
-
- unsigned char md5[16];
- unsigned char str[64];
- memcpy (str, f->key, 32);
- memcpy (str + 32, f->init_iv, 32);
- MD5 (str, 64, md5);
- out_int ((*(int *)md5) ^ (*(int *)(md5 + 4)));
-
- tfree_secure (f->iv, 32);
-
- bl_do_create_message_encr_new (TLS, r, &TLS->our_id, &peer_type, &peer_id, &date, NULL, 0, DS_DMM, NULL, NULL, TGLMF_OUT | TGLMF_UNREAD | TGLMF_ENCRYPTED | TGLMF_CREATE | TGLMF_CREATED);
-
- free_ds_type_decrypted_message_media (DS_DMM, TYPE_TO_PARAM (decrypted_message_media));
- struct tgl_message *M = tgl_message_get (TLS, r);
- assert (M);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_encr_file_methods, M, callback, callback_extra);
-
- tfree_str (f->file_name);
- tfree (f, sizeof (*f));
-
-}
-
-void tgl_do_send_location_encr (struct tgl_state *TLS, tgl_peer_id_t id, double latitude, double longitude, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- struct tl_ds_decrypted_message_media TDSM;
- TDSM.magic = CODE_decrypted_message_media_geo_point;
- TDSM.latitude = talloc (sizeof (double));
- *TDSM.latitude = latitude;
- TDSM.longitude = talloc (sizeof (double));
- *TDSM.longitude = longitude;
-
- int peer_type = tgl_get_peer_type (id);
- int peer_id = tgl_get_peer_id (id);
- int date = time (0);
-
- long long t;
- tglt_secure_random (&t, 8);
-
- bl_do_create_message_encr_new (TLS, t, &TLS->our_id, &peer_type, &peer_id, &date, NULL, 0, &TDSM, NULL, NULL, TGLMF_UNREAD | TGLMF_OUT | TGLMF_PENDING | TGLMF_CREATE | TGLMF_CREATED | TGLMF_ENCRYPTED);
-
- tfree (TDSM.latitude, sizeof (double));
- tfree (TDSM.longitude, sizeof (double));
-
- struct tgl_message *M = tgl_message_get (TLS, t);
-
- tgl_do_send_encr_msg (TLS, M, callback, callback_extra);
-}
-
-/* {{{ Encr accept */
-static int send_encr_accept_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tgl_secret_chat *E = tglf_fetch_alloc_encrypted_chat_new (TLS, D);
-
- if (E->state == sc_ok) {
- tgl_do_send_encr_chat_layer (TLS, E);
- }
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_secret_chat *))q->callback) (TLS, q->callback_extra, E->state == sc_ok, E);
- }
- return 0;
-}
-
-static int send_encr_request_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tgl_secret_chat *E = tglf_fetch_alloc_encrypted_chat_new (TLS, D);
-
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_secret_chat *))q->callback) (TLS, q->callback_extra, E->state != sc_deleted, E);
- }
- return 0;
-}
-
-static int encr_accept_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_peer_t *P = q->extra;
- if (P && P->encr_chat.state != sc_deleted && error_code == 400) {
- if (strncmp (error, "ENCRYPTION_DECLINED", 19) == 0) {
- bl_do_encr_chat_delete(TLS, &P->encr_chat);
- }
- }
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_secret_chat *))q->callback) (TLS, q->callback_extra, 0, NULL);
- }
- return 0;
-}
-
-static struct query_methods send_encr_accept_methods = {
- .on_answer = send_encr_accept_on_answer,
- .on_error = encr_accept_on_error,
- .type = TYPE_TO_PARAM(encrypted_chat)
-};
-
-static struct query_methods send_encr_request_methods = {
- .on_answer = send_encr_request_on_answer,
- .on_error = q_ptr_on_error,
- .type = TYPE_TO_PARAM(encrypted_chat)
-};
-
-//int encr_root;
-//unsigned char *encr_prime;
-//int encr_param_version;
-//static BN_CTX *ctx;
-
-void tgl_do_send_accept_encr_chat (struct tgl_state *TLS, struct tgl_secret_chat *E, unsigned char *random, void (*callback)(struct tgl_state *TLS,void *callback_extra, int success, struct tgl_secret_chat *E), void *callback_extra) {
- int i;
- int ok = 0;
- for (i = 0; i < 64; i++) {
- if (E->key[i]) {
- ok = 1;
- break;
- }
- }
- if (ok) {
- if (callback) {
- callback (TLS, callback_extra, 1, E);
- }
- return;
- } // Already generated key for this chat
- assert (E->g_key);
- assert (TLS->BN_ctx);
- unsigned char random_here[256];
- tglt_secure_random (random_here, 256);
- for (i = 0; i < 256; i++) {
- random[i] ^= random_here[i];
- }
- BIGNUM *b = BN_bin2bn (random, 256, 0);
- ensure_ptr (b);
- BIGNUM *g_a = BN_bin2bn (E->g_key, 256, 0);
- ensure_ptr (g_a);
- assert (tglmp_check_g_a (TLS, TLS->encr_prime_bn, g_a) >= 0);
- //if (!ctx) {
- // ctx = BN_CTX_new ();
- // ensure_ptr (ctx);
- //}
- BIGNUM *p = TLS->encr_prime_bn;
- BIGNUM *r = BN_new ();
- ensure_ptr (r);
- ensure (BN_mod_exp (r, g_a, b, p, TLS->BN_ctx));
- static unsigned char kk[256];
- memset (kk, 0, sizeof (kk));
- BN_bn2bin (r, kk + (256 - BN_num_bytes (r)));
- static unsigned char sha_buffer[20];
- sha1 (kk, 256, sha_buffer);
-
- long long fingerprint = *(long long *)(sha_buffer + 12);
-
- //bl_do_encr_chat_set_key (TLS, E, kk, *(long long *)(sha_buffer + 12));
- //bl_do_encr_chat_set_sha (TLS, E, sha_buffer);
-
- int state = sc_ok;
-
- bl_do_encr_chat_new (TLS, tgl_get_peer_id (E->id),
- NULL, NULL, NULL, NULL,
- kk, NULL, sha_buffer, &state,
- NULL, NULL, NULL, NULL, NULL,
- &fingerprint,
- TGL_FLAGS_UNCHANGED
- );
-
- clear_packet ();
- out_int (CODE_messages_accept_encryption);
- out_int (CODE_input_encrypted_chat);
- out_int (tgl_get_peer_id (E->id));
- out_long (E->access_hash);
-
- ensure (BN_set_word (g_a, TLS->encr_root));
- ensure (BN_mod_exp (r, g_a, b, p, TLS->BN_ctx));
- static unsigned char buf[256];
- memset (buf, 0, sizeof (buf));
- BN_bn2bin (r, buf + (256 - BN_num_bytes (r)));
- out_cstring ((void *)buf, 256);
-
- out_long (E->key_fingerprint);
- BN_clear_free (b);
- BN_clear_free (g_a);
- BN_clear_free (r);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_encr_accept_methods, E, callback, callback_extra);
-}
-
-void tgl_do_create_keys_end (struct tgl_state *TLS, struct tgl_secret_chat *U) {
- assert (TLS->encr_prime);
- BIGNUM *g_b = BN_bin2bn (U->g_key, 256, 0);
- ensure_ptr (g_b);
- assert (tglmp_check_g_a (TLS, TLS->encr_prime_bn, g_b) >= 0);
-
- BIGNUM *p = TLS->encr_prime_bn;
- ensure_ptr (p);
- BIGNUM *r = BN_new ();
- ensure_ptr (r);
- BIGNUM *a = BN_bin2bn ((void *)U->key, 256, 0);
- ensure_ptr (a);
- ensure (BN_mod_exp (r, g_b, a, p, TLS->BN_ctx));
-
- unsigned char *t = talloc (256);
- memcpy (t, U->key, 256);
-
- memset (U->key, 0, sizeof (U->key));
- BN_bn2bin (r, (void *)(((char *)(U->key)) + (256 - BN_num_bytes (r))));
-
- static unsigned char sha_buffer[20];
- sha1 ((void *)U->key, 256, sha_buffer);
- long long k = *(long long *)(sha_buffer + 12);
- if (k != U->key_fingerprint) {
- vlogprintf (E_WARNING, "Key fingerprint mismatch (my 0x%llx 0x%llx)\n", (unsigned long long)k, (unsigned long long)U->key_fingerprint);
- U->state = sc_deleted;
- }
-
- memcpy (U->first_key_sha, sha_buffer, 20);
- tfree_secure (t, 256);
-
- BN_clear_free (g_b);
- BN_clear_free (r);
- BN_clear_free (a);
-}
-
-void tgl_do_send_create_encr_chat (struct tgl_state *TLS, void *x, unsigned char *random, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_secret_chat *E), void *callback_extra) {
- int user_id = (long)x;
- int i;
- unsigned char random_here[256];
- tglt_secure_random (random_here, 256);
- for (i = 0; i < 256; i++) {
- random[i] ^= random_here[i];
- }
- BIGNUM *a = BN_bin2bn (random, 256, 0);
- ensure_ptr (a);
- BIGNUM *p = BN_bin2bn (TLS->encr_prime, 256, 0);
- ensure_ptr (p);
-
- BIGNUM *g = BN_new ();
- ensure_ptr (g);
-
- ensure (BN_set_word (g, TLS->encr_root));
-
- BIGNUM *r = BN_new ();
- ensure_ptr (r);
-
- ensure (BN_mod_exp (r, g, a, p, TLS->BN_ctx));
-
- BN_clear_free (a);
-
- static char g_a[256];
- memset (g_a, 0, 256);
-
- BN_bn2bin (r, (void *)(g_a + (256 - BN_num_bytes (r))));
-
- int t = lrand48 ();
- while (tgl_peer_get (TLS, TGL_MK_ENCR_CHAT (t))) {
- t = lrand48 ();
- }
-
- //bl_do_encr_chat_init (TLS, t, user_id, (void *)random, (void *)g_a);
-
- int state = sc_waiting;
- bl_do_encr_chat_new (TLS, t, NULL, NULL, &TLS->our_id, &user_id, random, NULL, NULL, &state, NULL, NULL, NULL, NULL, NULL, NULL, TGLPF_CREATE | TGLPF_CREATED);
-
-
- tgl_peer_t *_E = tgl_peer_get (TLS, TGL_MK_ENCR_CHAT (t));
- assert (_E);
- struct tgl_secret_chat *E = &_E->encr_chat;
-
- clear_packet ();
- out_int (CODE_messages_request_encryption);
- tgl_peer_t *U = tgl_peer_get (TLS, TGL_MK_USER (E->user_id));
- assert (U);
- if (U && U->user.access_hash) {
- out_int (CODE_input_user_foreign);
- out_int (E->user_id);
- out_long (U->user.access_hash);
- } else {
- out_int (CODE_input_user_contact);
- out_int (E->user_id);
- }
- out_int (tgl_get_peer_id (E->id));
- out_cstring (g_a, 256);
- //write_secret_chat_file ();
-
- BN_clear_free (g);
- BN_clear_free (p);
- BN_clear_free (r);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_encr_request_methods, E, callback, callback_extra);
-}
-
-static int get_dh_config_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_messages_dh_config *DS_MDC = D;
-
- if (DS_MDC->magic == CODE_messages_dh_config) {
- assert (DS_MDC->p->len == 256);
- bl_do_set_dh_params (TLS, DS_LVAL (DS_MDC->g), (void *)DS_MDC->p->data, DS_LVAL (DS_MDC->version));
- } else {
- assert (TLS->encr_param_version);
- }
- unsigned char *random = talloc (256);
- assert (DS_MDC->random->len == 256);
- memcpy (random, DS_MDC->random->data, 256);
-
- if (q->extra) {
- void **x = q->extra;
- ((void (*)(struct tgl_state *, void *, void *, void *, void *))(*x))(TLS, x[1], random, q->callback, q->callback_extra);
- tfree (x, 2 * sizeof (void *));
- tfree_secure (random, 256);
- } else {
- tfree_secure (random, 256);
- }
- return 0;
-}
-
-static struct query_methods get_dh_config_methods = {
- .on_answer = get_dh_config_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM(messages_dh_config)
-};
-
-void tgl_do_accept_encr_chat_request (struct tgl_state *TLS, struct tgl_secret_chat *E, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_secret_chat *E), void *callback_extra) {
- if (E->state != sc_request) {
- if (callback) {
- callback (TLS, callback_extra, 0, E);
- }
- return;
- }
- assert (E->state == sc_request);
-
- clear_packet ();
- out_int (CODE_messages_get_dh_config);
- out_int (TLS->encr_param_version);
- out_int (256);
- void **x = talloc (2 * sizeof (void *));
- x[0] = tgl_do_send_accept_encr_chat;
- x[1] = E;
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &get_dh_config_methods, x, callback, callback_extra);
-}
-
-void tgl_do_create_encr_chat_request (struct tgl_state *TLS, int user_id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_secret_chat *E), void *callback_extra) {
- clear_packet ();
- out_int (CODE_messages_get_dh_config);
- out_int (TLS->encr_param_version);
- out_int (256);
- void **x = talloc (2 * sizeof (void *));
- x[0] = tgl_do_send_create_encr_chat;
- x[1] = (void *)(long)(user_id);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &get_dh_config_methods, x, callback, callback_extra);
-}
-/* }}} */
diff --git a/protocols/Telegram/src/tgl/queries.c b/protocols/Telegram/src/tgl/queries.c
deleted file mode 100644
index 6c22acc0b2..0000000000
--- a/protocols/Telegram/src/tgl/queries.c
+++ /dev/null
@@ -1,4477 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#define _FILE_OFFSET_BITS 64
-#include <string.h>
-#include <memory.h>
-#include <stdlib.h>
-#if defined(WIN32) || defined(_WIN32)
-#include <io.h>
-#include <stdint.h>
-#include <string.h>
-#define WIN32_LEAN_AND_MEAN
-#include <windows.h>
-#undef WIN32_LEAN_AND_MEAN
-#else
-#include <unistd.h>
-#include <sys/utsname.h>
-#endif
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <share.h>
-
-#include "mtproto-client.h"
-#include "queries.h"
-#include "tree.h"
-#include "mtproto-common.h"
-//#include "telegram.h"
-#include "tgl-structures.h"
-//#include "interface.h"
-//#include "net.h"
-#include <openssl/bn.h>
-#include <openssl/rand.h>
-#include <openssl/aes.h>
-#include <openssl/sha.h>
-#include <openssl/md5.h>
-
-#include "no-preview.h"
-#include "tgl-binlog.h"
-#include "updates.h"
-#include "auto.h"
-#include "auto/auto-types.h"
-#include "auto/auto-skip.h"
-#include "auto/auto-free-ds.h"
-#include "auto/auto-fetch-ds.h"
-#include "auto/auto-print-ds.h"
-#include "tgl.h"
-#include "tg-mime-types.h"
-#include "mtproto-utils.h"
-#include "tgl-methods-in.h"
-
-#define sha1 SHA1
-
-#ifndef PATH_MAX
-#define PATH_MAX 4096
-#endif
-
-
-static void out_peer_id (struct tgl_state *TLS, tgl_peer_id_t id);
-static struct query_methods send_msgs_methods;
-
-struct messages_send_extra {
- int multi;
- long long id;
- int count;
- long long *list;
-};
-#define QUERY_TIMEOUT 6.0
-
-struct send_file {
- int fd;
- long long size;
- long long offset;
- int part_num;
- int part_size;
- long long id;
- long long thumb_id;
- tgl_peer_id_t to_id;
- int flags;
- char *file_name;
- int encr;
- int avatar;
- int reply;
- unsigned char *iv;
- unsigned char *init_iv;
- unsigned char *key;
- int w;
- int h;
- int duration;
- char *caption;
-};
-
-#define memcmp8(a,b) memcmp ((a), (b), 8)
-DEFINE_TREE (query, struct query *, memcmp8, 0) ;
-
-static int mystreq1 (const char *a, const char *b, int l) {
- if ((int)strlen (a) != l) { return 1; }
- return memcmp (a, b, l);
-}
-
-/* {{{ COMMON */
-
-struct query *tglq_query_get (struct tgl_state *TLS, long long id) {
- return tree_lookup_query (TLS->queries_tree, (void *)&id);
-}
-
-static int alarm_query (struct tgl_state *TLS, struct query *q) {
- assert (q);
- vlogprintf (E_DEBUG - 2, "Alarm query %"_PRINTF_INT64_"d\n", q->msg_id);
-
- TLS->timer_methods->insert (q->ev, QUERY_TIMEOUT);
-
- if (q->session && q->session_id && q->DC && q->DC->sessions[0] == q->session && q->session->session_id == q->session_id) {
- clear_packet ();
- out_int (CODE_msg_container);
- out_int (1);
- out_long (q->msg_id);
- out_int (q->seq_no);
- out_int (4 * q->data_len);
- out_ints (q->data, q->data_len);
-
- tglmp_encrypt_send_message (TLS, q->session->c, packet_buffer, packet_ptr - packet_buffer, q->flags & QUERY_FORCE_SEND);
- } else {
- q->flags &= ~QUERY_ACK_RECEIVED;
- if (tree_lookup_query (TLS->queries_tree, q)) {
- TLS->queries_tree = tree_delete_query (TLS->queries_tree, q);
- }
- q->session = q->DC->sessions[0];
- q->msg_id = tglmp_encrypt_send_message (TLS, q->session->c, q->data, q->data_len, (q->flags & QUERY_FORCE_SEND) | 1);
- TLS->queries_tree = tree_insert_query (TLS->queries_tree, q, lrand48 ());
- q->session_id = q->session->session_id;
- if (!(q->session->dc->flags & 4) && !(q->flags & QUERY_FORCE_SEND)) {
- q->session_id = 0;
- }
- }
- return 0;
-}
-
-void tglq_regen_query (struct tgl_state *TLS, long long id) {
- struct query *q = tglq_query_get (TLS, id);
- if (!q) { return; }
- q->flags &= ~QUERY_ACK_RECEIVED;
-
- if (!(q->session && q->session_id && q->DC && q->DC->sessions[0] == q->session && q->session->session_id == q->session_id)) {
- q->session_id = 0;
- } else {
- if (!(q->session->dc->flags & 4) && !(q->flags & QUERY_FORCE_SEND)) {
- q->session_id = 0;
- }
- }
- vlogprintf (E_NOTICE, "regen query %"_PRINTF_INT64_"d\n", id);
- TLS->timer_methods->insert (q->ev, 0.001);
-}
-
-void tglq_query_restart (struct tgl_state *TLS, long long id) {
- struct query *q = tglq_query_get (TLS, id);
- if (q) {
- vlogprintf (E_NOTICE, "restarting query %"_PRINTF_INT64_"d\n", id);
- TLS->timer_methods->remove (q->ev);
- alarm_query (TLS, q);
- }
-}
-
-static void alarm_query_gateway (struct tgl_state *TLS, void *arg) {
- alarm_query (TLS, arg);
-}
-
-
-struct query *tglq_send_query_ex (struct tgl_state *TLS, struct tgl_dc *DC, int ints, void *data, struct query_methods *methods, void *extra, void *callback, void *callback_extra, int flags) {
- assert (DC);
- assert (DC->auth_key_id);
- if (!DC->sessions[0]) {
- tglmp_dc_create_session (TLS, DC);
- }
- vlogprintf (E_DEBUG, "Sending query of size %d to DC %d\n", 4 * ints, DC->id);
- struct query *q = talloc0 (sizeof (*q));
- q->data_len = ints;
- q->data = talloc (4 * ints);
- memcpy (q->data, data, 4 * ints);
- q->msg_id = tglmp_encrypt_send_message (TLS, DC->sessions[0]->c, data, ints, 1 | (flags & QUERY_FORCE_SEND));
- q->session = DC->sessions[0];
- q->seq_no = q->session->seq_no - 1;
- q->session_id = q->session->session_id;
- if (!(DC->flags & 4) && !(flags & QUERY_FORCE_SEND)) {
- q->session_id = 0;
- }
- vlogprintf (E_DEBUG, "Msg_id is %"_PRINTF_INT64_"d %p\n", q->msg_id, q);
- q->methods = methods;
- q->type = methods->type;
- q->DC = DC;
- q->flags = flags & QUERY_FORCE_SEND;
- if (TLS->queries_tree) {
- vlogprintf (E_DEBUG + 2, "%"_PRINTF_INT64_"d %"_PRINTF_INT64_"d\n", q->msg_id, TLS->queries_tree->x->msg_id);
- }
- TLS->queries_tree = tree_insert_query (TLS->queries_tree, q, lrand48 ());
-
- q->ev = TLS->timer_methods->alloc (TLS, alarm_query_gateway, q);
- TLS->timer_methods->insert (q->ev, QUERY_TIMEOUT);
-
- q->extra = extra;
- q->callback = callback;
- q->callback_extra = callback_extra;
- TLS->active_queries ++;
- return q;
-}
-
-struct query *tglq_send_query (struct tgl_state *TLS, struct tgl_dc *DC, int ints, void *data, struct query_methods *methods, void *extra, void *callback, void *callback_extra) {
- return tglq_send_query_ex (TLS, DC, ints, data, methods, extra, callback, callback_extra, 0);
-}
-
-static int fail_on_error (struct tgl_state *TLS, struct query *q, int error_code, int l, const char *error) {
- fprintf (stderr, "error #%d: %.*s\n", error_code, l, error);
- assert (0);
- return 0;
-}
-
-void tglq_query_ack (struct tgl_state *TLS, long long id) {
- struct query *q = tglq_query_get (TLS, id);
- if (q && !(q->flags & QUERY_ACK_RECEIVED)) {
- assert (q->msg_id == id);
- q->flags |= QUERY_ACK_RECEIVED;
- TLS->timer_methods->remove (q->ev);
- }
-}
-
-void tglq_query_delete (struct tgl_state *TLS, long long id) {
- struct query *q = tglq_query_get (TLS, id);
- if (!q) {
- return;
- }
- if (!(q->flags & QUERY_ACK_RECEIVED)) {
- TLS->timer_methods->remove (q->ev);
- }
- TLS->queries_tree = tree_delete_query (TLS->queries_tree, q);
- tfree (q->data, q->data_len * 4);
- TLS->timer_methods->free (q->ev);
- TLS->active_queries --;
-}
-
-static void resend_query_cb (struct tgl_state *TLS, void *_q, int success);
-
-void tglq_free_query (struct query *q, void *extra) {
- struct tgl_state *TLS = extra;
- if (!(q->flags & QUERY_ACK_RECEIVED)) {
- TLS->timer_methods->remove (q->ev);
- }
- tfree (q->data, q->data_len * 4);
- TLS->timer_methods->free (q->ev);
-}
-
-void tglq_query_free_all (struct tgl_state *TLS) {
- tree_act_ex_query (TLS->queries_tree, tglq_free_query, TLS);
- TLS->queries_tree = tree_clear_query (TLS->queries_tree);
-}
-
-int tglq_query_error (struct tgl_state *TLS, long long id) {
- assert (fetch_int () == CODE_rpc_error);
- int error_code = fetch_int ();
- int error_len = prefetch_strlen ();
- char *error = fetch_str (error_len);
- struct query *q = tglq_query_get (TLS, id);
- if (!q) {
- vlogprintf (E_WARNING, "error for query #%"_PRINTF_INT64_"d: #%d :%.*s\n", id, error_code, error_len, error);
- vlogprintf (E_WARNING, "No such query\n");
- } else {
- if (!(q->flags & QUERY_ACK_RECEIVED)) {
- TLS->timer_methods->remove (q->ev);
- }
- TLS->queries_tree = tree_delete_query (TLS->queries_tree, q);
- int res = 0;
-
- int error_handled = 0;
-
- switch (error_code) {
- case 303:
- // migrate
- {
- int offset = -1;
- if (error_len >= 15 && !memcmp (error, "PHONE_MIGRATE_", 14)) {
- offset = 14;
- }
- if (error_len >= 17 && !memcmp (error, "NETWORK_MIGRATE_", 16)) {
- offset = 16;
- }
- if (error_len >= 14 && !memcmp (error, "USER_MIGRATE_", 13)) {
- offset = 13;
- }
- if (offset >= 0) {
- int i = 0;
- while (offset < error_len && error[offset] >= '0' && error[offset] <= '9') {
- i = i * 10 + error[offset] - '0';
- offset ++;
- }
- if (i > 0 && i < TGL_MAX_DC_NUM) {
- bl_do_set_working_dc (TLS, i);
- q->flags &= ~QUERY_ACK_RECEIVED;
- //q->session_id = 0;
- //struct tgl_dc *DC = q->DC;
- //if (!(DC->flags & 4) && !(q->flags & QUERY_FORCE_SEND)) {
- q->session_id = 0;
- //}
- q->DC = TLS->DC_working;
- TLS->timer_methods->insert (q->ev, 0);
- error_handled = 1;
- res = 1;
- }
- }
- }
- break;
- case 400:
- // nothing to handle
- // bad user input probably
- break;
- case 401:
- if (!mystreq1 ("SESSION_PASSWORD_NEEDED", error, error_len)) {
- if (!(TLS->locks & TGL_LOCK_PASSWORD)) {
- TLS->locks |= TGL_LOCK_PASSWORD;
- tgl_do_check_password (TLS, resend_query_cb, q);
- }
- res = 1;
- error_handled = 1;
- }
- break;
- case 403:
- // privacy violation
- break;
- case 404:
- // not found
- break;
- case 420:
- // flood
- case 500:
- // internal error
- default:
- // anything else. Treated as internal error
- {
- int wait;
- if (strncmp (error, "FLOOD_WAIT_", 11)) {
- if (error_code == 420) {
- vlogprintf (E_ERROR, "error = '%s'\n", error);
- }
- wait = 10;
- } else {
- wait = (int)atoll (error + 11);
- }
- q->flags &= ~QUERY_ACK_RECEIVED;
- TLS->timer_methods->insert (q->ev, wait);
- struct tgl_dc *DC = q->DC;
- if (!(DC->flags & 4) && !(q->flags & QUERY_FORCE_SEND)) {
- q->session_id = 0;
- }
- error_handled = 1;
- }
- break;
- }
-
- if (error_handled) {
- vlogprintf (E_DEBUG - 2, "error for query #%"_PRINTF_INT64_"d: #%d %.*s (HANDLED)\n", id, error_code, error_len, error);
- } else {
- vlogprintf (E_WARNING, "error for query #%"_PRINTF_INT64_"d: #%d %.*s\n", id, error_code, error_len, error);
- if (q->methods && q->methods->on_error) {
- res = q->methods->on_error (TLS, q, error_code, error_len, error);
- }
- }
-
- if (res <= 0) {
- tfree (q->data, q->data_len * 4);
- TLS->timer_methods->free (q->ev);
- }
-
- if (res == -11) {
- TLS->active_queries --;
- return -1;
-
- }
- }
- TLS->active_queries --;
- return 0;
-}
-
-#define MAX_PACKED_SIZE (1 << 24)
-static int packed_buffer[MAX_PACKED_SIZE / 4];
-
-int tglq_query_result (struct tgl_state *TLS, long long id) {
- vlogprintf (E_DEBUG, "result for query #%"_PRINTF_INT64_"d. Size %ld bytes\n", id, (long)4 * (in_end - in_ptr));
- int op = prefetch_int ();
- int *end = 0;
- int *eend = 0;
- if (op == CODE_gzip_packed) {
- fetch_int ();
- int l = prefetch_strlen ();
- char *s = fetch_str (l);
- int total_out = tgl_inflate (s, l, packed_buffer, MAX_PACKED_SIZE);
- vlogprintf (E_DEBUG, "inflated %d bytes\n", total_out);
- end = in_ptr;
- eend = in_end;
- in_ptr = packed_buffer;
- in_end = in_ptr + total_out / 4;
- }
- struct query *q = tglq_query_get (TLS, id);
- if (!q) {
- vlogprintf (E_WARNING, "No such query\n");
- in_ptr = in_end;
- } else {
- if (!(q->flags & QUERY_ACK_RECEIVED)) {
- TLS->timer_methods->remove (q->ev);
- }
- TLS->queries_tree = tree_delete_query (TLS->queries_tree, q);
- if (q->methods && q->methods->on_answer) {
- assert (q->type);
- int *save = in_ptr;
- vlogprintf (E_DEBUG, "in_ptr = %p, end_ptr = %p\n", in_ptr, in_end);
- if (skip_type_any (q->type) < 0) {
- vlogprintf (E_ERROR, "Skipped %ld int out of %ld (type %s)\n", (long)(in_ptr - save), (long)(in_end - save), q->type->type->id);
- vlogprintf (E_ERROR, "0x%08x 0x%08x\n", *(in_ptr - 1), *in_ptr);
- assert (0);
- }
-
- assert (in_ptr == in_end);
- in_ptr = save;
-
- void *DS = fetch_ds_type_any (q->type);
- assert (DS);
-
- q->methods->on_answer (TLS, q, DS);
- free_ds_type_any (DS, q->type);
-
- assert (in_ptr == in_end);
- }
- tfree (q->data, 4 * q->data_len);
- TLS->timer_methods->free (q->ev);
- tfree (q, sizeof (*q));
-
- }
- if (end) {
- in_ptr = end;
- in_end = eend;
- }
- TLS->active_queries --;
- return 0;
-}
-
-static void out_random (int n) {
- assert (n <= 32);
- static char buf[32];
- tglt_secure_random (buf, n);
- out_cstring (buf, n);
-}
-
-int allow_send_os_version;
-void tgl_do_insert_header (struct tgl_state *TLS) {
- out_int (CODE_invoke_with_layer);
- out_int (TGL_SCHEME_LAYER);
- out_int (CODE_init_connection);
- out_int (TLS->app_id);
- if (allow_send_os_version) {
- static char buf[4096];
-#if defined(WIN32) || defined(_WIN32)
- SYSTEM_INFO sysInfo;
- char release[256] = { 0 };
- char version[256] = { 0 };
- OSVERSIONINFO versionInfo = { sizeof(OSVERSIONINFO), 0, 0, 0, 0,{ '\0' } };
- char* szSystemName = "Windows";
-#if (WINVER <= _WIN32_WINNT_WIN7)
- GetVersionEx(&versionInfo);
-#else
- // GetModuleHandle is not supported in WinRT and linking to it at load time
- #if WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP || WINAPI_FAMILY==WINAPI_FAMILY_APP
- szSystemName = "Windows RT"
- MEMORY_BASIC_INFORMATION mbi = { 0, 0, 0, 0, 0, 0, 0 };
- VirtualQuery((LPCVOID)VirtualQuery, &mbi, sizeof(mbi);
- HMODULE kernelModule = (HMODULE)mbi.AllocationBase;
-
- typedef HMODULE(WINAPI *GetModuleHandleFunction)(LPCWSTR);
- GetModuleHandleFunction pGetModuleHandle = (GetModuleHandleFunction) GetProcAddressA (kernelModule, "GetModuleHandleW");
- #else
- #define pGetModuleHandle GetModuleHandleW
- #endif
-
- #if !defined(WINCE) || !defined(_WIN32_WCE)
- #define GetProcAddressA GetProcAddress
- #endif
-
- HMODULE ntdll = pGetModuleHandle (L"ntdll.dll");
- typedef LONG NTSTATUS;
- typedef NTSTATUS(NTAPI *RtlGetVersionFunction)(LPOSVERSIONINFO);
-
- RtlGetVersionFunction pRtlGetVersion = (RtlGetVersionFunction) GetProcAddressA (ntdll, "RtlGetVersion");
- if(pRtlGetVersion)
- pRtlGetVersion(&versionInfo); // always returns STATUS_SUCCESS
-#endif
- if(versionInfo.dwBuildNumber > 0)
- _itoa_s(versionInfo.dwBuildNumber, release, sizeof(char) * 256, 10);
- if (versionInfo.dwMajorVersion > 0)
- sprintf_s(version, sizeof(char) * 256, "%i.%i", versionInfo.dwMajorVersion, versionInfo.dwMinorVersion);
- else
- strcpy_s(version, sizeof(char) * 256, "Unknown");
-
- // Get hardware info
- ZeroMemory(&sysInfo, sizeof(SYSTEM_INFO));
- GetSystemInfo(&sysInfo);
-
- switch (sysInfo.wProcessorArchitecture) {
- case PROCESSOR_ARCHITECTURE_AMD64:
- out_string("x86_64");
- break;
- case PROCESSOR_ARCHITECTURE_IA64:
- out_string("ia64");
- break;
- case PROCESSOR_ARCHITECTURE_INTEL:
- out_string("x86");
- break;
- case PROCESSOR_ARCHITECTURE_ARM:
- out_string("ARM");
- break;
- case PROCESSOR_ARCHITECTURE_PPC:
- out_string("PowerPC");
- break;
- case PROCESSOR_ARCHITECTURE_MIPS:
- out_string("MIPS");
- break;
- case PROCESSOR_ARCHITECTURE_MSIL:
- out_string("MSIL");
- break;
- case PROCESSOR_ARCHITECTURE_SHX:
- out_string("ShX");
- break;
- case PROCESSOR_ARCHITECTURE_UNKNOWN:
- default:
- out_string("unknown");
- }
- tsnprintf(buf, sizeof(buf) - 1, "%.999s %.999s %.999s", szSystemName, version, release);
-#else
- struct utsname st;
- uname (&st);
- out_string (st.machine);
- tsnprintf (buf, sizeof (buf) - 1, "%.999s %.999s %.999s", st.sysname, st.release, st.version);
-#endif
- out_string (buf);
- tsnprintf (buf, sizeof (buf) - 1, "%s (TGL %s)", TLS->app_version, TGL_VERSION);
- out_string (buf);
- out_string ("En");
- } else {
-#if defined(WIN32) || defined(_WIN32)
- out_string("x86");
- out_string("Windows");
-#else
- out_string ("x86");
- out_string ("Linux");
-#endif
- static char buf[4096];
- tsnprintf (buf, sizeof (buf) - 1, "%s (TGL %s)", TLS->app_version, TGL_VERSION);
- out_string (buf);
- out_string ("en");
- }
-}
-
-void tgl_set_query_error (struct tgl_state *TLS, int error_code, const char *format, ...) __attribute__ ((format (printf, 3, 4)));
-void tgl_set_query_error (struct tgl_state *TLS, int error_code, const char *format, ...) {
- static char s[1001];
-
- va_list ap;
- va_start (ap, format);
- vsnprintf (s, 1000, format, ap);
- va_end (ap);
-
- if (TLS->error) {
- tfree_str (TLS->error);
- }
- TLS->error = tstrdup (s);
- TLS->error_code = error_code;
-}
-/* }}} */
-
-/* {{{ Default on error */
-
-static int q_void_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
- if (q->callback) {
- ((void (*)(struct tgl_state *,void *, int))(q->callback))(TLS, q->callback_extra, 0);
- }
- return 0;
-}
-
-static int q_ptr_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
- if (q->callback) {
- ((void (*)(struct tgl_state *,void *, int, void *))(q->callback))(TLS, q->callback_extra, 0, NULL);
- }
- return 0;
-}
-
-static int q_list_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
- if (q->callback) {
- ((void (*)(struct tgl_state *,void *, int, int, void *))(q->callback))(TLS, q->callback_extra, 0, 0, NULL);
- }
- return 0;
-}
-/* }}} */
-
-#include "queries-encrypted.c"
-
-/* {{{ Get config */
-
-static void fetch_dc_option (struct tgl_state *TLS, struct tl_ds_dc_option *DS_DO) {
- bl_do_dc_option_new (TLS, DS_LVAL (DS_DO->flags), DS_LVAL (DS_DO->id), DS_STR (DS_DO->hostname), DS_STR (DS_DO->ip_address), DS_LVAL (DS_DO->port));
-}
-
-static int help_get_config_on_answer (struct tgl_state *TLS, struct query *q, void *DS) {
- struct tl_ds_config *DS_C = DS;
-
- int i;
- for (i = 0; i < DS_LVAL (DS_C->dc_options->cnt); i++) {
- fetch_dc_option (TLS, DS_C->dc_options->data[i]);
- }
-
- int max_chat_size = DS_LVAL (DS_C->chat_size_max);
- int max_bcast_size = DS_LVAL (DS_C->broadcast_size_max);
- vlogprintf (E_DEBUG, "chat_size = %d, bcast_size = %d\n", max_chat_size, max_bcast_size);
-
- if (q->callback) {
- ((void (*)(struct tgl_state *,void *, int))(q->callback))(TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static struct query_methods help_get_config_methods = {
- .on_answer = help_get_config_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM(config)
-};
-
-void tgl_do_help_get_config (struct tgl_state *TLS, void (*callback)(struct tgl_state *,void *, int), void *callback_extra) {
- clear_packet ();
- tgl_do_insert_header (TLS);
- out_int (CODE_help_get_config);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &help_get_config_methods, 0, callback, callback_extra);
-}
-
-void tgl_do_help_get_config_dc (struct tgl_state *TLS, struct tgl_dc *D, void (*callback)(struct tgl_state *, void *, int), void *callback_extra) {
- clear_packet ();
- tgl_do_insert_header (TLS);
- out_int (CODE_help_get_config);
- tglq_send_query_ex (TLS, D, packet_ptr - packet_buffer, packet_buffer, &help_get_config_methods, 0, callback, callback_extra, 2);
-}
-/* }}} */
-
-/* {{{ Send code */
-static int send_code_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_auth_sent_code *DS_ASC = D;
-
- char *phone_code_hash = DS_STR_DUP (DS_ASC->phone_code_hash);
- int registered = DS_BVAL (DS_ASC->phone_registered);;
-
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, int, const char *))(q->callback)) (TLS, q->callback_extra, 1, registered, phone_code_hash);
- }
- tfree_str (phone_code_hash);
- return 0;
-}
-
-static struct query_methods send_code_methods = {
- .on_answer = send_code_on_answer,
- .on_error = q_list_on_error,
- .type = TYPE_TO_PARAM(auth_sent_code)
-};
-
-void tgl_do_send_code (struct tgl_state *TLS, const char *phone, int phone_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int registered, const char *hash), void *callback_extra) {
- vlogprintf (E_DEBUG, "sending code to dc %d\n", TLS->dc_working_num);
-
- clear_packet ();
- tgl_do_insert_header (TLS);
- out_int (CODE_auth_send_code);
- out_cstring (phone, phone_len);
- out_int (0);
- out_int (TLS->app_id);
- out_string (TLS->app_hash);
- out_string ("en");
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_code_methods, NULL, callback, callback_extra);
-}
-
-
-static int phone_call_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- if (q->callback) {
- ((void (*)(struct tgl_state *TLS, void *, int))(q->callback))(TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static struct query_methods phone_call_methods = {
- .on_answer = phone_call_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM(bool)
-};
-
-void tgl_do_phone_call (struct tgl_state *TLS, const char *phone, int phone_len, const char *hash, int hash_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- vlogprintf (E_DEBUG, "calling user\n");
-
- clear_packet ();
- tgl_do_insert_header (TLS);
- out_int (CODE_auth_send_call);
- out_cstring (phone, phone_len);
- out_cstring (hash, hash_len);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &phone_call_methods, NULL, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Sign in / Sign up */
-static int sign_in_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_auth_authorization *DS_AA = D;
- //vlogprintf (E_DEBUG, "Expires in %d\n", DS_LVAL (DS_AA->expires));
-
- struct tgl_user *U = tglf_fetch_alloc_user_new (TLS, DS_AA->user);
-
- bl_do_dc_signed (TLS, TLS->DC_working->id);
-
- if (q->callback) {
- ((void (*)(struct tgl_state *TLS, void *, int, struct tgl_user *))q->callback) (TLS, q->callback_extra, 1, U);
- }
-
- return 0;
-}
-
-static int sign_in_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_user *))q->callback) (TLS, q->callback_extra, 0, NULL);
- }
- return 0;
-}
-
-static struct query_methods sign_in_methods = {
- .on_answer = sign_in_on_answer,
- .on_error = sign_in_on_error,
- .type = TYPE_TO_PARAM(auth_authorization)
-};
-
-int tgl_do_send_code_result (struct tgl_state *TLS, const char *phone, int phone_len, const char *hash, int hash_len, const char *code, int code_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *Self), void *callback_extra) {
- clear_packet ();
- out_int (CODE_auth_sign_in);
- out_cstring (phone, phone_len);
- out_cstring (hash, hash_len);
- out_cstring (code, code_len);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &sign_in_methods, 0, callback, callback_extra);
- return 0;
-}
-
-int tgl_do_send_code_result_auth (struct tgl_state *TLS, const char *phone, int phone_len, const char *hash, int hash_len, const char *code, int code_len, const char *first_name, int first_name_len, const char *last_name, int last_name_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *Self), void *callback_extra) {
- clear_packet ();
- out_int (CODE_auth_sign_up);
- out_cstring (phone, phone_len);
- out_cstring (hash, hash_len);
- out_cstring (code, code_len);
- out_cstring (first_name, first_name_len);
- out_cstring (last_name, last_name_len);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &sign_in_methods, 0, callback, callback_extra);
- return 0;
-}
-
-int tgl_do_send_bot_auth (struct tgl_state *TLS, const char *code, int code_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *Self), void *callback_extra) {
- clear_packet ();
- out_int (CODE_auth_import_bot_authorization);
- out_int (0);
- out_int (TLS->app_id);
- out_string (TLS->app_hash);
- out_cstring (code, code_len);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &sign_in_methods, 0, callback, callback_extra);
- return 0;
-}
-/* }}} */
-
-/* {{{ Get contacts */
-static int get_contacts_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_contacts_contacts *DS_CC = D;
-
- int n = DS_CC->users ? DS_LVAL (DS_CC->users->cnt) : 0;
-
- int i;
- struct tgl_user **list = talloc (sizeof (void *) * n);
- for (i = 0; i < n; i++) {
- list[i] = tglf_fetch_alloc_user_new (TLS, DS_CC->users->data[i]);
- }
- if (q->callback) {
- ((void (*)(struct tgl_state *TLS, void *, int, int, struct tgl_user **))q->callback) (TLS, q->callback_extra, 1, n, list);
- }
- tfree (list, sizeof (void *) * n);
- return 0;
-}
-
-static struct query_methods get_contacts_methods = {
- .on_answer = get_contacts_on_answer,
- .on_error = q_list_on_error,
- .type = TYPE_TO_PARAM(contacts_contacts)
-};
-
-
-void tgl_do_update_contact_list (struct tgl_state *TLS, void (*callback) (struct tgl_state *TLS, void *callback_extra, int success, int size, struct tgl_user *contacts[]), void *callback_extra) {
- clear_packet ();
- out_int (CODE_contacts_get_contacts);
- out_string ("");
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &get_contacts_methods, NULL, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Send msg (plain text) */
-static int msg_send_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_messages_sent_message *DS_MSM = D;
-
- long long y = *(long long *)q->extra;
- tfree (q->extra, 8);
-
- struct tgl_message *M = tgl_message_get (TLS, y);
- vlogprintf (E_DEBUG, "y = %"_PRINTF_INT64_"d\n", y);
-
- if (M && M->id != DS_LVAL (DS_MSM->id)) {
- assert (M->flags & TGLMF_PENDING);
- bl_do_create_message_new (TLS, M->id, NULL, NULL, NULL, NULL, NULL,
- DS_MSM->date, NULL, 0, DS_MSM->media, NULL, NULL, NULL, M->flags & 0xffff);
- }
-
- struct tl_ds_update *UPD = talloc0 (sizeof (*UPD));
- UPD->magic = CODE_update_message_i_d;
- UPD->id = talloc (4);
- *UPD->id = DS_LVAL (DS_MSM->id);
- UPD->random_id = talloc (8);
- *UPD->random_id = y;
- UPD->pts_count = talloc (4);
- *UPD->pts_count = DS_LVAL (DS_MSM->pts_count);
- UPD->pts = talloc (4);
- *UPD->pts = DS_LVAL (DS_MSM->pts);
-
- tglu_work_update_new (TLS, 1, UPD);
- tglu_work_update_new (TLS, 0, UPD);
-
- *UPD->pts_count = 0;
- tfree (UPD->random_id, 8);
- UPD->magic = CODE_update_msg_update;
-
- tglu_work_update_new (TLS, 1, UPD);
- tglu_work_update_new (TLS, 0, UPD);
-
- free_ds_type_update (UPD, TYPE_TO_PARAM (update));
-
- y = tgls_get_local_by_random (TLS, y);
- M = tgl_message_get (TLS, y);
-
- if (q->callback) {
- ((void (*)(struct tgl_state *,void *, int, struct tgl_message *))q->callback) (TLS, q->callback_extra, 1, M);
- }
- return 0;
-}
-
-static int msg_send_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
- long long x = *(long long *)q->extra;
- tfree (q->extra, 8);
- struct tgl_message *M = tgl_message_get (TLS, x);
- if (q->callback) {
- ((void (*)(struct tgl_state *,void *, int, struct tgl_message *))q->callback) (TLS, q->callback_extra, 0, M);
- }
- if (M) {
- bl_do_message_delete (TLS, M);
- }
- return 0;
-}
-
-static struct query_methods msg_send_methods = {
- .on_answer = msg_send_on_answer,
- .on_error = msg_send_on_error,
- .type = TYPE_TO_PARAM(messages_sent_message)
-};
-
-void tgl_do_send_msg (struct tgl_state *TLS, struct tgl_message *M, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- if (tgl_get_peer_type (M->to_id) == TGL_PEER_ENCR_CHAT) {
- tgl_do_send_encr_msg (TLS, M, callback, callback_extra);
- return;
- }
- clear_packet ();
- out_int (CODE_messages_send_message);
-
- out_int (((M->flags & TGLMF_DISABLE_PREVIEW) ? 2 : 0) | (M->reply_id ? 1 : 0) | (M->reply_markup ? 4 : 0));
- out_peer_id (TLS, M->to_id);
- if (M->reply_id) {
- out_int (M->reply_id);
- }
- out_cstring (M->message, M->message_len);
- out_long (M->id);
- long long *x = talloc (8);
- *x = M->id;
-
- if (M->reply_markup) {
- if (M->reply_markup->rows) {
- out_int (CODE_reply_keyboard_markup);
- out_int (M->reply_markup->flags);
- out_int (CODE_vector);
- out_int (M->reply_markup->rows);
- int i;
- for (i = 0; i < M->reply_markup->rows; i++) {
- out_int (CODE_keyboard_button_row);
- out_int (CODE_vector);
- out_int (M->reply_markup->row_start[i + 1] - M->reply_markup->row_start[i]);
- int j;
- for (j = 0; j < M->reply_markup->row_start[i + 1] - M->reply_markup->row_start[i]; j++) {
- out_int (CODE_keyboard_button);
- out_string (M->reply_markup->buttons[j + M->reply_markup->row_start[i]]);
- }
- }
- } else {
- out_int (CODE_reply_keyboard_hide);
- }
- }
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &msg_send_methods, x, callback, callback_extra);
-}
-
-void tgl_do_send_message (struct tgl_state *TLS, tgl_peer_id_t id, const char *text, int text_len, unsigned long long flags, struct tl_ds_reply_markup *reply_markup, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- if (tgl_get_peer_type (id) == TGL_PEER_ENCR_CHAT) {
- tgl_peer_t *P = tgl_peer_get (TLS, id);
- if (!P) {
- tgl_set_query_error (TLS, EINVAL, "unknown secret chat");
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
- if (P->encr_chat.state != sc_ok) {
- tgl_set_query_error (TLS, EINVAL, "secret chat not in ok state");
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
- }
- long long t;
- tglt_secure_random (&t, 8);
-
- int peer_type = tgl_get_peer_type (id);
- int peer_id = tgl_get_peer_id (id);
- int date = (int)time (0);
-
- if (tgl_get_peer_type (id) != TGL_PEER_ENCR_CHAT) {
- int reply = (flags >> 32);
- int disable_preview = flags & TGL_SEND_MSG_FLAG_DISABLE_PREVIEW;
- if (!(flags & TGL_SEND_MSG_FLAG_ENABLE_PREVIEW) && TLS->disable_link_preview) {
- disable_preview = 1;
- }
- if (disable_preview) {
- disable_preview = TGLMF_DISABLE_PREVIEW;
- }
- struct tl_ds_message_media TDSM;
- TDSM.magic = CODE_message_media_empty;
-
- bl_do_create_message_new (TLS, t, &TLS->our_id, &peer_type, &peer_id, NULL, NULL, &date, text, text_len, &TDSM, NULL, reply ? &reply : NULL, reply_markup, TGLMF_UNREAD | TGLMF_OUT | TGLMF_PENDING | TGLMF_CREATE | TGLMF_CREATED | TGLMF_SESSION_OUTBOUND | disable_preview);
- } else {
- struct tl_ds_decrypted_message_media TDSM;
- TDSM.magic = CODE_decrypted_message_media_empty;
-
- bl_do_create_message_encr_new (TLS, t, &TLS->our_id, &peer_type, &peer_id, &date, text, text_len, &TDSM, NULL, NULL, TGLMF_UNREAD | TGLMF_OUT | TGLMF_PENDING | TGLMF_CREATE | TGLMF_CREATED | TGLMF_SESSION_OUTBOUND | TGLMF_ENCRYPTED);
- }
-
- struct tgl_message *M = tgl_message_get (TLS, t);
- assert (M);
- tgl_do_send_msg (TLS, M, callback, callback_extra);
-}
-
-void tgl_do_reply_message (struct tgl_state *TLS, int reply_id, const char *text, int text_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- struct tgl_message *M = tgl_message_get (TLS, reply_id);
- if (!M || !(M->flags & TGLMF_CREATED) || (M->flags & TGLMF_ENCRYPTED)) {
- if (!M || !(M->flags & TGLMF_CREATED)) {
- tgl_set_query_error (TLS, EINVAL, "unknown message");
- } else {
- tgl_set_query_error (TLS, EINVAL, "can not reply on message from secret chat");
- }
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
-
- tgl_peer_id_t id = M->to_id;
- if (tgl_get_peer_type (id) == TGL_PEER_USER && tgl_get_peer_id (id) == TLS->our_id) {
- id = M->from_id;
- }
-
- tgl_do_send_message (TLS, id, text, text_len, flags | TGL_SEND_MSG_FLAG_REPLY (reply_id), NULL, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Send text file */
-void tgl_do_send_text (struct tgl_state *TLS, tgl_peer_id_t id, const char *file_name, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
-#if defined(_MSC_VER) && _MSC_VER >= 1400
- int fd = 0;
- errno_t err = _sopen_s(&fd, file_name, _O_RDONLY | _O_BINARY, _SH_DENYNO, _S_IREAD | _S_IWRITE);
- if(err != 0) {
- tgl_set_query_error(TLS, EBADF, "Can not open file: %s", GetErrnoStr (errno));
-#elif defined(WIN32) || defined(_WIN32)
- int fd = open(file_name, O_RDONLY | O_BINARY);
- if (fd < 0) {
- tgl_set_query_error (TLS, EBADF, "Can not open file: %s", GetErrnoStr (errno));
-#else
- int fd = open (file_name, O_RDONLY);
- if (fd < 0) {
- tgl_set_query_error (TLS, EBADF, "Can not open file: %m");
-#endif
- if (callback) {
- callback (TLS, callback_extra, 0, NULL);
- }
- return;
- }
- static char buf[(1 << 20) + 1];
- int x = read (fd, buf, (1 << 20) + 1);
- if (x < 0) {
-#if defined(WIN32) || defined(_WIN32)
- tgl_set_query_error (TLS, EBADF, "Can not read from file: %s", GetErrnoStr (errno));
-#else
- tgl_set_query_error (TLS, EBADF, "Can not read from file: %m");
-#endif
- close (fd);
-
- if (callback) {
- callback (TLS, callback_extra, 0, NULL);
- }
- return;
- }
-
- assert (x >= 0);
- close (fd);
- if (x == (1 << 20) + 1) {
- tgl_set_query_error (TLS, E2BIG, "text file is too big");
- if (callback) {
- callback (TLS, callback_extra, 0, NULL);
- }
- } else {
- tgl_do_send_message (TLS, id, buf, x, flags, NULL, callback, callback_extra);
- }
-}
-
-void tgl_do_reply_text (struct tgl_state *TLS, int reply_id, const char *file_name, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- struct tgl_message *M = tgl_message_get (TLS, reply_id);
- if (!M || !(M->flags & TGLMF_CREATED) || (M->flags & TGLMF_ENCRYPTED)) {
- if (!M || !(M->flags & TGLMF_CREATED)) {
- tgl_set_query_error (TLS, EINVAL, "unknown message");
- } else {
- tgl_set_query_error (TLS, EINVAL, "can not reply on message from secret chat");
- }
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
-
- tgl_peer_id_t id = M->to_id;
- if (tgl_get_peer_type (id) == TGL_PEER_USER && tgl_get_peer_id (id) == TLS->our_id) {
- id = M->from_id;
- }
-
- tgl_do_send_text (TLS, id, file_name, flags | TGL_SEND_MSG_FLAG_REPLY (reply_id), callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Mark read */
-
-struct mark_read_extra {
- tgl_peer_id_t id;
- int max_id;
-};
-
-void tgl_do_messages_mark_read (struct tgl_state *TLS, tgl_peer_id_t id, int max_id, int offset, void (*callback)(struct tgl_state *TLS, void *callback_extra, int), void *callback_extra);
-
-static int mark_read_on_receive (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_messages_affected_history *DS_MAH = D;
-
- int r = tgl_check_pts_diff (TLS, DS_LVAL (DS_MAH->pts), DS_LVAL (DS_MAH->pts_count));
-
- if (r > 0) {
- bl_do_set_pts (TLS, DS_LVAL (DS_MAH->pts));
- }
-
- int offset = DS_LVAL (DS_MAH->offset);
-
- struct mark_read_extra *E = q->extra;
- if (offset > 0) {
- tgl_do_messages_mark_read (TLS, E->id, E->max_id, offset, q->callback, q->callback_extra);
- } else {
- if (tgl_get_peer_type (E->id) == TGL_PEER_USER) {
- bl_do_user_new (TLS, tgl_get_peer_id (E->id), NULL, NULL, 0, NULL, 0, NULL, 0, NULL, 0, NULL, NULL, 0, NULL, 0, NULL, &E->max_id, NULL, NULL, TGL_FLAGS_UNCHANGED);
- } else {
- assert (tgl_get_peer_type (E->id) == TGL_PEER_CHAT);
- bl_do_chat_new (TLS, tgl_get_peer_id (E->id), NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, &E->max_id, NULL, TGL_FLAGS_UNCHANGED);
- }
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 1);
- }
- }
- tfree (E, sizeof (*E));
- return 0;
-}
-
-static int mark_read_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
-
- struct mark_read_extra *E = q->extra;
- tfree (E, sizeof (*E));
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 0);
- }
- return 0;
-}
-
-static struct query_methods mark_read_methods = {
- .on_answer = mark_read_on_receive,
- .on_error = mark_read_on_error,
- .type = TYPE_TO_PARAM(messages_affected_history)
-};
-
-void tgl_do_messages_mark_read (struct tgl_state *TLS, tgl_peer_id_t id, int max_id, int offset, void (*callback)(struct tgl_state *TLS, void *callback_extra, int), void *callback_extra) {
- if (TLS->is_bot) { return; }
- clear_packet ();
- out_int (CODE_messages_read_history);
- out_peer_id (TLS, id);
- out_int (max_id);
- out_int (offset);
-
- struct mark_read_extra *E = talloc (sizeof (*E));
- E->id = id;
- E->max_id = max_id;
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &mark_read_methods, E, callback, callback_extra);
-}
-
-void tgl_do_mark_read (struct tgl_state *TLS, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- if (tgl_get_peer_type (id) == TGL_PEER_USER || tgl_get_peer_type (id) == TGL_PEER_CHAT) {
- tgl_do_messages_mark_read (TLS, id, 0, 0, callback, callback_extra);
- return;
- }
- tgl_peer_t *P = tgl_peer_get (TLS, id);
- if (!P) {
- tgl_set_query_error (TLS, EINVAL, "unknown secret chat");
- if (callback) {
- callback (TLS, callback_extra, 0);
- }
- return;
- }
- assert (tgl_get_peer_type (id) == TGL_PEER_ENCR_CHAT);
- if (P->last) {
- tgl_do_messages_mark_read_encr (TLS, id, P->encr_chat.access_hash, P->last->date, callback, callback_extra);
- } else {
- tgl_do_messages_mark_read_encr (TLS, id, P->encr_chat.access_hash, (int)time (0) - 10, callback, callback_extra);
- }
-}
-/* }}} */
-
-/* {{{ Get history */
-struct get_history_extra {
- struct tgl_message **ML;
- int list_offset;
- int list_size;
- tgl_peer_id_t id;
- int limit;
- int offset;
- int max_id;
-};
-
-static void _tgl_do_get_history (struct tgl_state *TLS, struct get_history_extra *E, void (*callback)(struct tgl_state *TLS,void *callback_extra, int success, int size, struct tgl_message *list[]), void *callback_extra);
-
-
-static int get_history_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_messages_messages *DS_MM = D;
-
- struct get_history_extra *E = q->extra;
-
- int n = DS_LVAL (DS_MM->messages->cnt);
-
- if (E->list_size - E->list_offset < n) {
- int new_list_size = 2 * E->list_size;
- if (new_list_size - E->list_offset < n) {
- new_list_size = n + E->list_offset;
- }
- E->ML = trealloc (E->ML, E->list_size * sizeof (void *), new_list_size * sizeof (void *));
- assert (E->ML);
- E->list_size = new_list_size;
- }
-
- int i;
- for (i = 0; i < n; i++) {
- E->ML[i + E->list_offset] = tglf_fetch_alloc_message_new (TLS, DS_MM->messages->data[i]);
- }
- E->list_offset += n;
- E->offset += n;
- E->limit -= n;
-
- int count = DS_LVAL (DS_MM->count);
- if (count >= 0 && E->limit + E->offset >= count) {
- E->limit = count - E->offset;
- if (E->limit < 0) { E->limit = 0; }
- }
- assert (E->limit >= 0);
-
- for (i = 0; i < DS_LVAL (DS_MM->chats->cnt); i++) {
- tglf_fetch_alloc_chat_new (TLS, DS_MM->chats->data[i]);
- }
-
- for (i = 0; i < DS_LVAL (DS_MM->users->cnt); i++) {
- tglf_fetch_alloc_user_new (TLS, DS_MM->users->data[i]);
- }
-
-
- if (E->limit <= 0 || DS_MM->magic == CODE_messages_messages) {
- if (q->callback) {
- ((void (*)(struct tgl_state *TLS, void *, int, int, struct tgl_message **))q->callback) (TLS, q->callback_extra, 1, E->list_offset, E->ML);
- }
- if (E->list_offset > 0) {
- tgl_do_messages_mark_read (TLS, E->id, E->ML[0]->id, 0, 0, 0);
- }
-
- tfree (E->ML, sizeof (void *) * E->list_size);
- tfree (E, sizeof (*E));
- } else {
- E->offset = 0;
- E->max_id = E->ML[E->list_offset - 1]->id;
- _tgl_do_get_history (TLS, E, q->callback, q->callback_extra);
- }
- return 0;
-}
-
-static int get_history_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
-
- struct get_history_extra *E = q->extra;
- tfree (E->ML, sizeof (void *) * E->list_size);
- tfree (E, sizeof (*E));
-
- if (q->callback) {
- ((void (*)(struct tgl_state *TLS, void *, int, int, struct tgl_message **))q->callback) (TLS, q->callback_extra, 0, 0, NULL);
- }
- return 0;
-}
-
-static struct query_methods get_history_methods = {
- .on_answer = get_history_on_answer,
- .on_error = get_history_on_error,
- .type = TYPE_TO_PARAM(messages_messages)
-};
-
-void tgl_do_get_local_history (struct tgl_state *TLS, tgl_peer_id_t id, int offset, int limit, void (*callback)(struct tgl_state *TLS,void *callback_extra, int success, int size, struct tgl_message *list[]), void *callback_extra) {
- tgl_peer_t *P = tgl_peer_get (TLS, id);
- if (!P || !P->last) {
- tgl_set_query_error (TLS, EINVAL, "unknown peer");
- if (callback) {
- callback (TLS, callback_extra, 0, 0, 0);
- }
- return;
- }
- struct tgl_message *M = P->last;
- int count = 1;
- assert (!M->prev);
- while (count < limit + offset && M->next) {
- M = M->next;
- count ++;
- }
- if (count <= offset) {
- if (callback) {
- callback (TLS, callback_extra, 1, 0, 0);
- }
- return;
- }
- struct tgl_message **ML = talloc (sizeof (void *) * (count - offset));
- M = P->last;
- ML[0] = M;
- count = 1;
- while (count < limit && M->next) {
- M = M->next;
- if (count >= offset) {
- ML[count - offset] = M;
- }
- count ++;
- }
-
- if (callback) {
- callback (TLS, callback_extra, 1, count - offset, ML);
- }
- tfree (ML, sizeof (void *) * (count) - offset);
-}
-
-static void _tgl_do_get_history (struct tgl_state *TLS, struct get_history_extra *E, void (*callback)(struct tgl_state *TLS,void *callback_extra, int success, int size, struct tgl_message *list[]), void *callback_extra) {
- clear_packet ();
- out_int (CODE_messages_get_history);
- out_peer_id (TLS, E->id);
- out_int (E->offset);
- out_int (E->max_id);
- out_int (E->limit);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &get_history_methods, E, callback, callback_extra);
-}
-
-void tgl_do_get_history (struct tgl_state *TLS, tgl_peer_id_t id, int offset, int limit, int offline_mode, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, struct tgl_message *list[]), void *callback_extra) {
- if (tgl_get_peer_type (id) == TGL_PEER_ENCR_CHAT || offline_mode) {
- tgl_do_get_local_history (TLS, id, offset, limit, callback, callback_extra);
- tgl_do_mark_read (TLS, id, 0, 0);
- return;
- }
- struct get_history_extra *E = talloc0 (sizeof (*E));
- E->id = id;
- E->limit = limit;
- E->offset = offset;
- _tgl_do_get_history (TLS, E, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Get dialogs */
-struct get_dialogs_extra {
- tgl_peer_id_t *PL;
- int *UC;
- int *LM;
- int *LRM;
-
- int list_offset;
- int list_size;
- int limit;
- int offset;
- int max_id;
-};
-
-static void _tgl_do_get_dialog_list (struct tgl_state *TLS, struct get_dialogs_extra *E, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, tgl_peer_id_t peers[], int last_msg_id[], int unread_count[]), void *callback_extra);
-
-static int get_dialogs_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_messages_dialogs *DS_MD = D;
-
- struct get_dialogs_extra *E = q->extra;
-
- int dl_size = DS_LVAL (DS_MD->dialogs->cnt);
-
- if (E->list_offset + dl_size > E->list_size) {
- int new_list_size = E->list_size * 2;
- if (new_list_size < E->list_offset + dl_size) {
- new_list_size = E->list_offset + dl_size;
- }
-
- E->PL = trealloc (E->PL, E->list_size * sizeof (tgl_peer_id_t), new_list_size * sizeof (tgl_peer_id_t));
- assert (E->PL);
- E->UC = trealloc (E->UC, E->list_size * sizeof (int), new_list_size * sizeof (int));
- assert (E->UC);
- E->LM = trealloc (E->LM, E->list_size * sizeof (int), new_list_size * sizeof (int));
- assert (E->LM);
- E->LRM = trealloc (E->LRM, E->list_size * sizeof (int), new_list_size * sizeof (int));
- assert (E->LRM);
-
- E->list_size = new_list_size;
- }
-
- int i;
- for (i = 0; i < dl_size; i++) {
- struct tl_ds_dialog *DS_D = DS_MD->dialogs->data[i];
- E->PL[E->list_offset + i] = tglf_fetch_peer_id_new (TLS, DS_D->peer);
- E->LM[E->list_offset + i] = DS_LVAL (DS_D->top_message);
- E->UC[E->list_offset + i] = DS_LVAL (DS_D->unread_count);
- E->LRM[E->list_offset + i] = DS_LVAL (DS_D->read_inbox_max_id);
- }
- E->list_offset += dl_size;
-
- for (i = 0; i < DS_LVAL (DS_MD->messages->cnt); i++) {
- tglf_fetch_alloc_message_new (TLS, DS_MD->messages->data[i]);
- }
-
- for (i = 0; i < DS_LVAL (DS_MD->chats->cnt); i++) {
- tglf_fetch_alloc_chat_new (TLS, DS_MD->chats->data[i]);
- }
-
- for (i = 0; i < DS_LVAL (DS_MD->users->cnt); i++) {
- tglf_fetch_alloc_user_new (TLS, DS_MD->users->data[i]);
- }
-
- vlogprintf (E_DEBUG, "dl_size = %d, total = %d\n", dl_size, E->list_offset);
- if (dl_size && E->list_offset < E->limit && DS_MD->magic == CODE_messages_dialogs_slice && E->list_offset < DS_LVAL (DS_MD->count)) {
- E->offset += dl_size;
- _tgl_do_get_dialog_list (TLS, E, q->callback, q->callback_extra);
- } else {
- if (q->callback) {
- ((void (*)(struct tgl_state *TLS, void *, int, int, tgl_peer_id_t *, int *, int *))q->callback) (TLS, q->callback_extra, 1, E->list_offset, E->PL, E->LM, E->UC);
- }
- tfree (E->PL, sizeof (tgl_peer_id_t) * E->list_size);
- tfree (E->UC, 4 * E->list_size);
- tfree (E->LM, 4 * E->list_size);
- tfree (E->LRM, 4 * E->list_size);
- tfree (E, sizeof (*E));
- }
-
- return 0;
-}
-
-static int get_dialogs_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
-
- struct get_dialogs_extra *E = q->extra;
- tfree (E->PL, sizeof (tgl_peer_id_t) * E->list_size);
- tfree (E->UC, 4 * E->list_size);
- tfree (E->LM, 4 * E->list_size);
- tfree (E->LRM, 4 * E->list_size);
- tfree (E, sizeof (*E));
- if (q->callback) {
- ((void (*)(struct tgl_state *TLS, void *, int, int, tgl_peer_id_t *, int *, int *))q->callback) (TLS, q->callback_extra, 0, 0, NULL, NULL, NULL);
- }
- return 0;
-}
-
-static struct query_methods get_dialogs_methods = {
- .on_answer = get_dialogs_on_answer,
- .on_error = get_dialogs_on_error,
- .type = TYPE_TO_PARAM(messages_dialogs)
-};
-
-static void _tgl_do_get_dialog_list (struct tgl_state *TLS, struct get_dialogs_extra *E, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, tgl_peer_id_t peers[], int last_msg_id[], int unread_count[]), void *callback_extra) {
- clear_packet ();
- out_int (CODE_messages_get_dialogs);
- out_int (E->offset);
- out_int (0);
- out_int (E->limit - E->list_offset);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &get_dialogs_methods, E, callback, callback_extra);
-}
-
-void tgl_do_get_dialog_list (struct tgl_state *TLS, int limit, int offset, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, tgl_peer_id_t peers[], int last_msg_id[], int unread_count[]), void *callback_extra) {
- struct get_dialogs_extra *E = talloc0 (sizeof (*E));
- E->limit = limit;
- E->offset = offset;
- _tgl_do_get_dialog_list (TLS, E, callback, callback_extra);
-}
-/* }}} */
-
-int allow_send_os_version = 1;
-
-/* {{{ Send document file */
-
-static void out_peer_id (struct tgl_state *TLS, tgl_peer_id_t id) {
- tgl_peer_t *U;
- switch (tgl_get_peer_type (id)) {
- case TGL_PEER_CHAT:
- out_int (CODE_input_peer_chat);
- out_int (tgl_get_peer_id (id));
- break;
- case TGL_PEER_USER:
- U = tgl_peer_get (TLS, id);
- if (U && U->user.access_hash) {
- out_int (CODE_input_peer_foreign);
- out_int (tgl_get_peer_id (id));
- out_long (U->user.access_hash);
- } else {
- out_int (CODE_input_peer_contact);
- out_int (tgl_get_peer_id (id));
- }
- break;
- default:
- assert (0);
- }
-}
-
-static void send_part (struct tgl_state *TLS, struct send_file *f, void *callback, void *callback_extra);
-static int send_file_part_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- send_part (TLS, q->extra, q->callback, q->callback_extra);
- return 0;
-}
-
-static int set_photo_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static int send_file_part_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
-
- struct send_file *f = q->extra;
- tfree_str (f->file_name);
- tfree_str (f->caption);
- if (!f->avatar) {
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_message *))q->callback) (TLS, q->callback_extra, 0, 0);
- }
- } else {
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback) (TLS, q->callback_extra, 0);
- }
- }
- tfree (f, sizeof (*f));
- return 0;
-}
-
-static struct query_methods send_file_part_methods = {
- .on_answer = send_file_part_on_answer,
- .on_error = send_file_part_on_error,
- .type = TYPE_TO_PARAM(bool)
-};
-
-static struct query_methods set_photo_methods = {
- .on_answer = set_photo_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM(photos_photo)
-};
-
-static void send_avatar_end (struct tgl_state *TLS, struct send_file *f, void *callback, void *callback_extra) {
- if (f->avatar > 0) {
- out_int (CODE_messages_edit_chat_photo);
- out_int (f->avatar);
- out_int (CODE_input_chat_uploaded_photo);
- if (f->size < (16 << 20)) {
- out_int (CODE_input_file);
- } else {
- out_int (CODE_input_file_big);
- }
- out_long (f->id);
- out_int (f->part_num);
- out_string ("");
- if (f->size < (16 << 20)) {
- out_string ("");
- }
- out_int (CODE_input_photo_crop_auto);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, NULL, callback, callback_extra);
- } else {
- out_int (CODE_photos_upload_profile_photo);
- if (f->size < (16 << 20)) {
- out_int (CODE_input_file);
- } else {
- out_int (CODE_input_file_big);
- }
- out_long (f->id);
- out_int (f->part_num);
- char *s = f->file_name + strlen (f->file_name);
- while (s >= f->file_name && *s != '/') { s --;}
- out_string (s + 1);
- if (f->size < (16 << 20)) {
- out_string ("");
- }
- out_string ("profile photo");
- out_int (CODE_input_geo_point_empty);
- out_int (CODE_input_photo_crop_auto);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &set_photo_methods, 0, callback, callback_extra);
- }
-}
-
-
-static void send_file_unencrypted_end (struct tgl_state *TLS, struct send_file *f, void *callback, void *callback_extra) {
- out_int (CODE_messages_send_media);
- out_int ((f->reply ? 1 : 0));
- out_peer_id (TLS, f->to_id);
- if (f->reply) {
- out_int (f->reply);
- }
- if (f->flags & TGL_SEND_MSG_FLAG_DOCUMENT_PHOTO) {
- out_int (CODE_input_media_uploaded_photo);
- } else {
- if (f->thumb_id > 0) {
- out_int (CODE_input_media_uploaded_thumb_document);
- } else {
- out_int (CODE_input_media_uploaded_document);
- }
- }
-
- if (f->size < (16 << 20)) {
- out_int (CODE_input_file);
- } else {
- out_int (CODE_input_file_big);
- }
-
- out_long (f->id);
- out_int (f->part_num);
- char *s = f->file_name + strlen (f->file_name);
- while (s >= f->file_name && *s != '/') { s --;}
- out_string (s + 1);
- if (f->size < (16 << 20)) {
- out_string ("");
- }
-
- if (!(f->flags & TGL_SEND_MSG_FLAG_DOCUMENT_PHOTO)) {
- out_string (tg_mime_by_filename (f->file_name));
-
- out_int (CODE_vector);
- if (f->flags & TGLDF_IMAGE) {
- if (f->flags & TGLDF_ANIMATED) {
- out_int (2);
- out_int (CODE_document_attribute_image_size);
- out_int (f->w);
- out_int (f->h);
- out_int (CODE_document_attribute_animated);
- } else {
- out_int (1);
- out_int (CODE_document_attribute_image_size);
- out_int (f->w);
- out_int (f->h);
- }
- } else if (f->flags & TGLDF_AUDIO) {
- out_int (2);
- out_int (CODE_document_attribute_audio);
- out_int (f->duration);
- out_int (CODE_document_attribute_filename);
- out_string (s + 1);
- } else if (f->flags & TGLDF_VIDEO) {
- out_int (2);
- out_int (CODE_document_attribute_video);
- out_int (f->duration);
- out_int (f->w);
- out_int (f->h);
- out_int (CODE_document_attribute_filename);
- out_string (s + 1);
- } else if (f->flags & TGLDF_STICKER) {
- out_int (1);
- out_int (CODE_document_attribute_sticker);
- } else {
- out_int (1);
- out_int (CODE_document_attribute_filename);
- out_string (s + 1);
- }
-
- if (f->thumb_id > 0) {
- out_int (CODE_input_file);
- out_long (f->thumb_id);
- out_int (1);
- out_string ("thumb.jpg");
- out_string ("");
- }
- } else {
- out_string (f->caption ? f->caption : "");
- }
-
-
- struct messages_send_extra *E = talloc0 (sizeof (*E));
- tglt_secure_random (&E->id, 8);
- out_long (E->id);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, E, callback, callback_extra);
- tfree_str (f->file_name);
- tfree_str (f->caption);
- tfree (f, sizeof (*f));
-}
-
-static void send_file_end (struct tgl_state *TLS, struct send_file *f, void *callback, void *callback_extra) {
- TLS->cur_uploaded_bytes -= f->size;
- TLS->cur_uploading_bytes -= f->size;
- clear_packet ();
-
- if (f->avatar) {
- send_avatar_end (TLS, f, callback, callback_extra);
- return;
- }
- if (!f->encr) {
- send_file_unencrypted_end (TLS, f, callback, callback_extra);
- return;
- }
- send_file_encrypted_end (TLS, f, callback, callback_extra);
- return;
-}
-
-static void send_part (struct tgl_state *TLS, struct send_file *f, void *callback, void *callback_extra) {
- if (f->fd >= 0) {
- if (!f->part_num) {
- TLS->cur_uploading_bytes += f->size;
- }
- clear_packet ();
- if (f->size < (16 << 20)) {
- out_int (CODE_upload_save_file_part);
- out_long (f->id);
- out_int (f->part_num ++);
- } else {
- out_int (CODE_upload_save_big_file_part);
- out_long (f->id);
- out_int (f->part_num ++);
- out_int ((f->size + f->part_size - 1) / f->part_size);
- }
- static char buf[512 << 10];
-#ifdef _WIN32
- int x = _read(f->fd, buf, f->part_size);
-#else
- int x = read (f->fd, buf, f->part_size);
-#endif
- assert (x > 0);
- f->offset += x;
- TLS->cur_uploaded_bytes += x;
-
- if (f->encr) {
- if (x & 15) {
- assert (f->offset == f->size);
- tglt_secure_random (buf + x, (-x) & 15);
- x = (x + 15) & ~15;
- }
-
- AES_KEY aes_key;
- AES_set_encrypt_key (f->key, 256, &aes_key);
- AES_ige_encrypt ((void *)buf, (void *)buf, x, &aes_key, f->iv, 1);
- memset (&aes_key, 0, sizeof (aes_key));
- }
- out_cstring (buf, x);
- vlogprintf (E_DEBUG, "offset=%"_PRINTF_INT64_"d size=%"_PRINTF_INT64_"d\n", f->offset, f->size);
- if (f->offset == f->size) {
- close (f->fd);
- f->fd = -1;
- } else {
- assert (f->part_size == x);
- }
- //update_prompt ();
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_file_part_methods, f, callback, callback_extra);
- } else {
- send_file_end (TLS, f, callback, callback_extra);
- }
-}
-
-static void send_file_thumb (struct tgl_state *TLS, struct send_file *f, const void *thumb_data, int thumb_len, void *callback, void *callback_extra) {
- clear_packet ();
- f->thumb_id = lrand48 () * (1ll << 32) + lrand48 ();
- out_int (CODE_upload_save_file_part);
- out_long (f->thumb_id);
- out_int (0);
- out_cstring ((void *)thumb_data, thumb_len);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_file_part_methods, f, callback, callback_extra);
-}
-
-
-static void _tgl_do_send_photo (struct tgl_state *TLS, tgl_peer_id_t to_id, const char *file_name, int avatar, int w, int h, int duration, const void *thumb_data, int thumb_len, const char *caption, int caption_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
-#if defined(_MSC_VER) && _MSC_VER >= 1400
- int fd = 0;
- errno_t err = _sopen_s(&fd, file_name, _O_RDONLY | _O_BINARY, _SH_DENYNO, _S_IREAD | _S_IWRITE);
- if(err != 0) {
- tgl_set_query_error (TLS, EBADF, "Can not open file: %s", GetErrnoStr (errno));
-#elif defined(WIN32) || defined(_WIN32)
- int fd = open(file_name, O_RDONLY | O_BINARY);
- if (fd < 0) {
- tgl_set_query_error (TLS, EBADF, "Can not open file: %s", GetErrnoStr (errno));
-#else
- int fd = open (file_name, O_RDONLY);
- if (fd < 0) {
- tgl_set_query_error (TLS, EBADF, "Can not open file: %m");
-#endif
- if (!avatar) {
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- } else {
- if (callback) {
- ((void (*)(struct tgl_state *, void *, int))callback) (TLS, callback_extra, 0);
- }
- }
- return;
- }
- struct stat buf;
- fstat (fd, &buf);
- long long size = buf.st_size;
- if (size <= 0) {
- tgl_set_query_error (TLS, EBADF, "File is empty");
- close (fd);
- if (!avatar) {
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- } else {
- if (callback) {
- ((void (*)(struct tgl_state *, void *, int))callback) (TLS, callback_extra, 0);
- }
- }
- return;
- }
- struct send_file *f = talloc0 (sizeof (*f));
- f->fd = fd;
- f->size = size;
- f->offset = 0;
- f->part_num = 0;
- f->avatar = avatar;
- f->reply = flags >> 32;
- int tmp = ((size + 2999) / 3000);
- f->part_size = (1 << 14);
- while (f->part_size < tmp) {
- f->part_size *= 2;
- }
- f->flags = flags;
-
- if (f->part_size > (512 << 10)) {
- close (fd);
- tgl_set_query_error (TLS, E2BIG, "File is too big");
- tfree (f, sizeof (*f));
- if (!avatar) {
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- } else {
- if (callback) {
- ((void (*)(struct tgl_state *, void *, int))callback) (TLS, callback_extra, 0);
- }
- }
- return;
- }
-
- tglt_secure_random (&f->id, 8);
- f->to_id = to_id;
- f->flags = flags;
- f->file_name = tstrdup (file_name);
- f->w = w;
- f->h = h;
- f->duration = duration;
- f->caption = caption ? tstrdup (caption) : tstrdup ("");
-
- if (tgl_get_peer_type (f->to_id) == TGL_PEER_ENCR_CHAT) {
- f->encr = 1;
- f->iv = talloc (32);
- tglt_secure_random (f->iv, 32);
- f->init_iv = talloc (32);
- memcpy (f->init_iv, f->iv, 32);
- f->key = talloc (32);
- tglt_secure_random (f->key, 32);
- }
-
- if (!f->encr && f->flags != -1 && thumb_len > 0) {
- send_file_thumb (TLS, f, thumb_data, thumb_len, callback, callback_extra);
- } else {
- send_part (TLS, f, callback, callback_extra);
- }
-}
-
-void tgl_do_send_document (struct tgl_state *TLS, tgl_peer_id_t to_id, const char *file_name, const char *caption, int caption_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- if (flags & TGL_SEND_MSG_FLAG_DOCUMENT_AUTO) {
- char *mime_type = tg_mime_by_filename (file_name);
- if (strcmp (mime_type, "image/gif") == 0) {
- flags |= TGL_SEND_MSG_FLAG_DOCUMENT_ANIMATED;
- } else if (!memcmp (mime_type, "image/", 6)) {
- flags |= TGL_SEND_MSG_FLAG_DOCUMENT_PHOTO;
- } else if (!memcmp (mime_type, "video/", 6)) {
- flags |= TGLDF_VIDEO;
- } else if (!memcmp (mime_type, "audio/", 6)) {
- flags |= TGLDF_AUDIO;
- }
- }
- _tgl_do_send_photo (TLS, to_id, file_name, 0, 100, 100, 100, 0, 0, caption, caption_len, flags, callback, callback_extra);
-}
-
-void tgl_do_reply_document (struct tgl_state *TLS, int reply_id, const char *file_name, const char *caption, int caption_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- struct tgl_message *M = tgl_message_get (TLS, reply_id);
- if (!M || !(M->flags & TGLMF_CREATED) || (M->flags & TGLMF_ENCRYPTED)) {
- if (!M || !(M->flags & TGLMF_CREATED)) {
- tgl_set_query_error (TLS, EINVAL, "unknown message");
- } else {
- tgl_set_query_error (TLS, EINVAL, "can not reply on message from secret chat");
- }
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
-
- tgl_peer_id_t id = M->to_id;
- if (tgl_get_peer_type (id) == TGL_PEER_USER && tgl_get_peer_id (id) == TLS->our_id) {
- id = M->from_id;
- }
-
- tgl_do_send_document (TLS, id, file_name, caption, caption_len, flags | TGL_SEND_MSG_FLAG_REPLY (reply_id), callback, callback_extra);
-}
-
-void tgl_do_set_chat_photo (struct tgl_state *TLS, tgl_peer_id_t chat_id, const char *file_name, void (*callback)(struct tgl_state *TLS,void *callback_extra, int success), void *callback_extra) {
- assert (tgl_get_peer_type (chat_id) == TGL_PEER_CHAT);
- _tgl_do_send_photo (TLS, chat_id, file_name, tgl_get_peer_id (chat_id), 0, 0, 0, 0, 0, NULL, 0, TGL_SEND_MSG_FLAG_DOCUMENT_PHOTO, (void *)callback, callback_extra);
-}
-
-void tgl_do_set_profile_photo (struct tgl_state *TLS, const char *file_name, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- _tgl_do_send_photo (TLS, TGL_MK_USER(TLS->our_id), file_name, -1, 0, 0, 0, 0, 0, NULL, 0, TGL_SEND_MSG_FLAG_DOCUMENT_PHOTO, (void *)callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Profile name */
-
-int set_profile_name_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_user *DS_U = D;
- struct tgl_user *U = tglf_fetch_alloc_user_new (TLS, DS_U);
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_user *))q->callback) (TLS, q->callback_extra, 1, U);
- }
- return 0;
-}
-
-static struct query_methods set_profile_name_methods = {
- .on_answer = set_profile_name_on_answer,
- .on_error = q_ptr_on_error,
- .type = TYPE_TO_PARAM(user)
-};
-
-void tgl_do_set_profile_name (struct tgl_state *TLS, const char *first_name, int first_name_len, const char *last_name, int last_name_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *U), void *callback_extra) {
- clear_packet ();
- out_int (CODE_account_update_profile);
- out_cstring (first_name, first_name_len);
- out_cstring (last_name, last_name_len);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &set_profile_name_methods, 0, callback, callback_extra);
-}
-
-void tgl_do_set_username (struct tgl_state *TLS, const char *username, int username_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *U), void *callback_extra) {
- clear_packet ();
- out_int (CODE_account_update_username);
- out_cstring (username, username_len);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &set_profile_name_methods, 0, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Contacts search */
-
-int contact_search_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_user *DS_U = D;
-
- struct tgl_user *U = tglf_fetch_alloc_user_new (TLS, DS_U);
-
- if (q->callback) {
- ((void (*)(struct tgl_state *,void *, int, struct tgl_user *))q->callback) (TLS, q->callback_extra, 1, U);
- }
-
- return 0;
-}
-
-static struct query_methods contact_search_methods = {
- .on_answer = contact_search_on_answer,
- .on_error = q_list_on_error,
- .type = TYPE_TO_PARAM(user)
-};
-
-void tgl_do_contact_search (struct tgl_state *TLS, const char *name, int name_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *U), void *callback_extra) {
- clear_packet ();
- out_int (CODE_contacts_resolve_username);
- out_cstring (name, name_len);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &contact_search_methods, 0, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Forward */
-
-static int send_msgs_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- tglu_work_any_updates_new (TLS, 1, D);
- tglu_work_any_updates_new (TLS, 0, D);
-
- struct messages_send_extra *E = q->extra;
-
- if (!E) {
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback) (TLS, q->callback_extra, 1);
- }
- } else if (E->multi) {
- struct tgl_message **ML = talloc (sizeof (void *) * E->count);
- int count = E->count;
- int i;
- for (i = 0; i < count; i++) {
- int y = tgls_get_local_by_random (TLS, E->list[i]);
- ML[i] = tgl_message_get (TLS, y);
- }
- tfree (E->list, sizeof (long long) * count);
- tfree (E, sizeof (*E));
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, int, struct tgl_message **))q->callback) (TLS, q->callback_extra, 1, count, ML);
- }
- tfree (ML, sizeof (void *) * count);
- } else {
- int y = tgls_get_local_by_random (TLS, E->id);
- struct tgl_message *M = tgl_message_get (TLS, y);
- tfree (E, sizeof (*E));
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_message *))q->callback) (TLS, q->callback_extra, 1, M);
- }
- }
- return 0;
-}
-
-static int send_msgs_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
- struct messages_send_extra *E = q->extra;
-
- if (!E) {
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback) (TLS, q->callback_extra, 0);
- }
- } else if (E->multi) {
- int count = E->count;
- tfree (E->list, sizeof (long long) * count);
- tfree (E, sizeof (*E));
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, int, struct tgl_message **))q->callback) (TLS, q->callback_extra, 0, 0, NULL);
- }
- } else {
- tfree (E, sizeof (*E));
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_message *))q->callback) (TLS, q->callback_extra, 0, NULL);
- }
- }
- return 0;
-}
-
-static struct query_methods send_msgs_methods = {
- .on_answer = send_msgs_on_answer,
- .on_error = send_msgs_on_error,
- .type = TYPE_TO_PARAM(updates)
-};
-
-void tgl_do_forward_messages (struct tgl_state *TLS, tgl_peer_id_t id, int n, const int ids[], unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int count, struct tgl_message *ML[]), void *callback_extra) {
- if (tgl_get_peer_type (id) == TGL_PEER_ENCR_CHAT) {
- tgl_set_query_error (TLS, EINVAL, "can not forward messages to secret chats");
- if (callback) {
- callback (TLS, callback_extra, 0, 0, 0);
- }
- return;
- }
- clear_packet ();
- out_int (CODE_messages_forward_messages);
- out_peer_id (TLS, id);
- out_int (CODE_vector);
- out_int (n);
- int i;
- for (i = 0; i < n; i++) {
- out_int (ids[i]);
- }
-
- struct messages_send_extra *E = talloc0 (sizeof (*E));
- E->multi = 1;
- E->count = n;
- E->list = talloc (sizeof (long long) * n);
- out_int (CODE_vector);
- out_int (n);
- for (i = 0; i < n; i++) {
- tglt_secure_random (&E->list[i], 8);
- out_long (E->list[i]);
- }
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, E, callback, callback_extra);
-}
-
-void tgl_do_forward_message (struct tgl_state *TLS, tgl_peer_id_t id, int msg_id, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- if (tgl_get_peer_type (id) == TGL_PEER_ENCR_CHAT) {
- tgl_set_query_error (TLS, EINVAL, "can not forward messages to secret chats");
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
- clear_packet ();
- out_int (CODE_messages_forward_message);
- out_peer_id (TLS, id);
- out_int (msg_id);
-
- struct messages_send_extra *E = talloc0 (sizeof (*E));
- tglt_secure_random (&E->id, 8);
- out_long (E->id);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, E, callback, callback_extra);
-}
-
-void tgl_do_send_contact (struct tgl_state *TLS, tgl_peer_id_t id, const char *phone, int phone_len, const char *first_name, int first_name_len, const char *last_name, int last_name_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- if (tgl_get_peer_type (id) == TGL_PEER_ENCR_CHAT) {
- tgl_set_query_error (TLS, EINVAL, "can not send contact to secret chat");
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
-
- int reply_id = flags >> 32;
-
- clear_packet ();
- out_int (CODE_messages_send_media);
- out_int (reply_id ? 1 : 0);
- if (reply_id) { out_int (reply_id); }
- out_peer_id (TLS, id);
- out_int (CODE_input_media_contact);
- out_cstring (phone, phone_len);
- out_cstring (first_name, first_name_len);
- out_cstring (last_name, last_name_len);
-
- struct messages_send_extra *E = talloc0 (sizeof (*E));
- tglt_secure_random (&E->id, 8);
- out_long (E->id);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, E, callback, callback_extra);
-}
-
-
-void tgl_do_reply_contact (struct tgl_state *TLS, int reply_id, const char *phone, int phone_len, const char *first_name, int first_name_len, const char *last_name, int last_name_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- struct tgl_message *M = tgl_message_get (TLS, reply_id);
- if (!M || !(M->flags & TGLMF_CREATED) || (M->flags & TGLMF_ENCRYPTED)) {
- if (!M || !(M->flags & TGLMF_CREATED)) {
- tgl_set_query_error (TLS, EINVAL, "unknown message");
- } else {
- tgl_set_query_error (TLS, EINVAL, "can not reply on message from secret chat");
- }
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
-
- tgl_peer_id_t id = M->to_id;
- if (tgl_get_peer_type (id) == TGL_PEER_USER && tgl_get_peer_id (id) == TLS->our_id) {
- id = M->from_id;
- }
-
- tgl_do_send_contact (TLS, id, phone, phone_len, first_name, first_name_len, last_name, last_name_len, flags | TGL_SEND_MSG_FLAG_REPLY (reply_id), callback, callback_extra);
-}
-
-void tgl_do_forward_media (struct tgl_state *TLS, tgl_peer_id_t id, int n, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- if (tgl_get_peer_type (id) == TGL_PEER_ENCR_CHAT) {
- tgl_set_query_error (TLS, EINVAL, "can not forward messages to secret chats");
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
- struct tgl_message *M = tgl_message_get (TLS, n);
- if (!M || !(M->flags & TGLMF_CREATED) || (M->flags & TGLMF_ENCRYPTED)) {
- if (!M || !(M->flags & TGLMF_CREATED)) {
- tgl_set_query_error (TLS, EINVAL, "unknown message");
- } else {
- tgl_set_query_error (TLS, EINVAL, "can not forward message from secret chat");
- }
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
- if (M->media.type != tgl_message_media_photo && M->media.type != tgl_message_media_document) {
- tgl_set_query_error (TLS, EINVAL, "can only forward photo/document");
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
- clear_packet ();
- out_int (CODE_messages_send_media);
- out_peer_id (TLS, id);
- switch (M->media.type) {
- case tgl_message_media_photo:
- assert (M->media.photo);
- out_int (CODE_input_media_photo);
- out_int (CODE_input_photo);
- out_long (M->media.photo->id);
- out_long (M->media.photo->access_hash);
- break;
- case tgl_message_media_document:
- assert (M->media.document);
- out_int (CODE_input_media_document);
- out_int (CODE_input_document);
- out_long (M->media.document->id);
- out_long (M->media.document->access_hash);
- break;
- default:
- assert (0);
- }
-
- struct messages_send_extra *E = talloc0 (sizeof (*E));
- tglt_secure_random (&E->id, 8);
- out_long (E->id);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, E, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Send location */
-
-void tgl_do_send_location (struct tgl_state *TLS, tgl_peer_id_t id, double latitude, double longitude, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- if (tgl_get_peer_type (id) == TGL_PEER_ENCR_CHAT) {
- tgl_do_send_location_encr (TLS, id, latitude, longitude, flags, callback, callback_extra);
- } else {
- int reply_id = flags >> 32;
- clear_packet ();
- out_int (CODE_messages_send_media);
- out_int (reply_id ? 1 : 0);
- if (reply_id) { out_int (reply_id); }
- out_peer_id (TLS, id);
- out_int (CODE_input_media_geo_point);
- out_int (CODE_input_geo_point);
- out_double (latitude);
- out_double (longitude);
-
- struct messages_send_extra *E = talloc0 (sizeof (*E));
- tglt_secure_random (&E->id, 8);
- out_long (E->id);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, E, callback, callback_extra);
- }
-}
-
-void tgl_do_reply_location (struct tgl_state *TLS, int reply_id, double latitude, double longitude, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- struct tgl_message *M = tgl_message_get (TLS, reply_id);
- if (!M || !(M->flags & TGLMF_CREATED) || (M->flags & TGLMF_ENCRYPTED)) {
- if (!M || !(M->flags & TGLMF_CREATED)) {
- tgl_set_query_error (TLS, EINVAL, "unknown message");
- } else {
- tgl_set_query_error (TLS, EINVAL, "can not forward message from secret chat");
- }
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
-
- tgl_peer_id_t id = M->to_id;
- if (tgl_get_peer_type (id) == TGL_PEER_USER && tgl_get_peer_id (id) == TLS->our_id) {
- id = M->from_id;
- }
-
- tgl_do_send_location (TLS, id, latitude, longitude, flags | TGL_SEND_MSG_FLAG_REPLY (reply_id), callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Rename chat */
-
-void tgl_do_rename_chat (struct tgl_state *TLS, tgl_peer_id_t id, const char *name, int name_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- clear_packet ();
- out_int (CODE_messages_edit_chat_title);
- assert (tgl_get_peer_type (id) == TGL_PEER_CHAT);
- out_int (tgl_get_peer_id (id));
- out_cstring (name, name_len);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, 0, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Chat info */
-
-static int chat_info_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tgl_chat *C = tglf_fetch_alloc_chat_full_new (TLS, D);
- //print_chat_info (C);
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_chat *))q->callback) (TLS, q->callback_extra, 1, C);
- }
- return 0;
-}
-
-static struct query_methods chat_info_methods = {
- .on_answer = chat_info_on_answer,
- .on_error = q_ptr_on_error,
- .type = TYPE_TO_PARAM(messages_chat_full)
-};
-
-void tgl_do_get_chat_info (struct tgl_state *TLS, tgl_peer_id_t id, int offline_mode, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_chat *C), void *callback_extra) {
- if (offline_mode) {
- tgl_peer_t *C = tgl_peer_get (TLS, id);
- if (!C) {
- tgl_set_query_error (TLS, EINVAL, "unknown chat id");
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- } else {
- //print_chat_info (&C->chat);
- if (callback) {
- callback (TLS, callback_extra, 1, &C->chat);
- }
- }
- return;
- }
- clear_packet ();
- out_int (CODE_messages_get_full_chat);
- assert (tgl_get_peer_type (id) == TGL_PEER_CHAT);
- out_int (tgl_get_peer_id (id));
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &chat_info_methods, 0, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ User info */
-
-static int user_info_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tgl_user *U = tglf_fetch_alloc_user_full_new (TLS, D);
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_user *))q->callback) (TLS, q->callback_extra, 1, U);
- }
- return 0;
-}
-
-static struct query_methods user_info_methods = {
- .on_answer = user_info_on_answer,
- .on_error = q_ptr_on_error,
- .type = TYPE_TO_PARAM(user_full)
-};
-
-void tgl_do_get_user_info (struct tgl_state *TLS, tgl_peer_id_t id, int offline_mode, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *U), void *callback_extra) {
- if (tgl_get_peer_type (id) != TGL_PEER_USER) {
- tgl_set_query_error (TLS, EINVAL, "id should be user id");
- if (callback) {
- callback (TLS, callback_extra, 0, NULL);
- }
- return;
- }
- if (offline_mode) {
- tgl_peer_t *C = tgl_peer_get (TLS, id);
- if (!C) {
- tgl_set_query_error (TLS, EINVAL, "unknown user id");
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- } else {
- if (callback) {
- callback (TLS, callback_extra, 1, &C->user);
- }
- }
- return;
- }
- clear_packet ();
- out_int (CODE_users_get_full_user);
- assert (tgl_get_peer_type (id) == TGL_PEER_USER);
- tgl_peer_t *U = tgl_peer_get (TLS, id);
- if (U && U->user.access_hash) {
- out_int (CODE_input_user_foreign);
- out_int (tgl_get_peer_id (id));
- out_long (U->user.access_hash);
- } else {
- out_int (CODE_input_user_contact);
- out_int (tgl_get_peer_id (id));
- }
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &user_info_methods, 0, callback, callback_extra);
-}
-
-static void resend_query_cb (struct tgl_state *TLS, void *_q, int success) {
- assert (success);
-
- bl_do_dc_signed (TLS, TLS->DC_working->id);
-
- struct query *q = _q;
-
- clear_packet ();
- out_int (CODE_users_get_full_user);
- out_int (CODE_input_user_self);
- tglq_send_query (TLS, q->DC, packet_ptr - packet_buffer, packet_buffer, &user_info_methods, 0, q->callback, q->callback_extra);
-
- tfree (q->data, 4 * q->data_len);
- TLS->timer_methods->free (q->ev);
- tfree (q, sizeof (*q));
-}
-/* }}} */
-
-/* {{{ Load photo/video */
-struct download {
- int offset;
- int size;
- long long volume;
- long long secret;
- long long access_hash;
- int local_id;
- int dc;
- int next;
- int fd;
- char *name;
- char *ext;
- long long id;
- unsigned char *iv;
- unsigned char *key;
- int type;
- int refcnt;
-};
-
-
-static void end_load (struct tgl_state *TLS, struct download *D, void *callback, void *callback_extra) {
- TLS->cur_downloading_bytes -= D->size;
- TLS->cur_downloaded_bytes -= D->size;
-
- if (D->fd >= 0) {
- close (D->fd);
- }
-
- if (callback) {
- ((void (*)(struct tgl_state *, void *, int, char *))callback) (TLS, callback_extra, 1, D->name);
- }
-
- if (D->iv) {
- tfree_secure (D->iv, 32);
- }
- tfree_str (D->name);
- tfree (D, sizeof (*D));
-}
-
-static void load_next_part (struct tgl_state *TLS, struct download *D, void *callback, void *callback_extra);
-static int download_on_answer (struct tgl_state *TLS, struct query *q, void *DD) {
- struct tl_ds_upload_file *DS_UF = DD;
-
- struct download *D = q->extra;
- if (D->fd == -1) {
-#if defined(_MSC_VER) && _MSC_VER >= 1400
- errno_t err = _sopen_s(&D->fd, D->name, O_CREAT | O_WRONLY | _O_BINARY, _SH_DENYNO, _S_IREAD | _S_IWRITE);
- if (err != 0) {
- tgl_set_query_error (TLS, EBADF, "Can not open file for writing: %s", GetErrnoStr (errno));
-#elif defined(WIN32) || defined(_WIN32)
- D->fd = open(D->name, O_CREAT | O_WRONLY | O_BINARY, 0640);
- if (D->fd < 0) {
- tgl_set_query_error (TLS, EBADF, "Can not open file for writing: %s", GetErrnoStr (errno));
-#else
- D->fd = open (D->name, O_CREAT | O_WRONLY, 0640);
- if (D->fd < 0) {
- tgl_set_query_error (TLS, EBADF, "Can not open file for writing: %m");
-#endif
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, char *))q->callback) (TLS, q->callback_extra, 0, NULL);
- }
-
- if (D->iv) {
- tfree_secure (D->iv, 32);
- }
- tfree_str (D->name);
- if (D->ext) {
- tfree_str (D->ext);
- }
- tfree (D, sizeof (*D));
- return 0;
- }
- }
-
- int len = DS_UF->bytes->len;
- TLS->cur_downloaded_bytes += len;
- //update_prompt ();
-
- if (D->iv) {
- assert (!(len & 15));
- void *ptr = DS_UF->bytes->data;
-
- AES_KEY aes_key;
- AES_set_decrypt_key (D->key, 256, &aes_key);
- AES_ige_encrypt (ptr, ptr, len, &aes_key, D->iv, 0);
- memset (&aes_key, 0, sizeof (aes_key));
- if (len > D->size - D->offset) {
- len = D->size - D->offset;
- }
- assert (write (D->fd, ptr, len) == len);
- } else {
- assert (write (D->fd, DS_UF->bytes->data, len) == len);
- }
-
- D->offset += len;
- D->refcnt --;
- if (D->offset < D->size) {
- load_next_part (TLS, D, q->callback, q->callback_extra);
- return 0;
- } else {
- if (!D->refcnt) {
- end_load (TLS, D, q->callback, q->callback_extra);
- }
- return 0;
- }
-}
-
-static int download_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
-
- struct download *D = q->extra;
- if (D->fd >= 0) {
- close (D->fd);
- }
-
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, char *))q->callback) (TLS, q->callback_extra, 0, NULL);
- }
-
- if (D->iv) {
- tfree_secure (D->iv, 32);
- }
- tfree_str (D->name);
- if (D->ext) {
- tfree_str (D->ext);
- }
- tfree (D, sizeof (*D));
- return 0;
-}
-
-static struct query_methods download_methods = {
- .on_answer = download_on_answer,
- .on_error = download_on_error,
- .type = TYPE_TO_PARAM(upload_file)
-};
-
-static void load_next_part (struct tgl_state *TLS, struct download *D, void *callback, void *callback_extra) {
- if (!D->offset) {
- static char buf[PATH_MAX];
- int l;
- if (!D->id) {
- l = tsnprintf (buf, sizeof (buf), "%s/download_%"_PRINTF_INT64_"d_%d.jpg", TLS->downloads_directory, D->volume, D->local_id);
- } else {
- if (D->ext) {
- l = tsnprintf (buf, sizeof (buf), "%s/download_%"_PRINTF_INT64_"d.%s", TLS->downloads_directory, D->id, D->ext);
- } else {
- l = tsnprintf (buf, sizeof (buf), "%s/download_%"_PRINTF_INT64_"d", TLS->downloads_directory, D->id);
- }
- }
- if (l >= (int) sizeof (buf)) {
- vlogprintf (E_ERROR, "Download filename is too long");
- assert (0);
- }
- D->name = tstrdup (buf);
- struct stat st;
- if (stat (buf, &st) >= 0) {
- D->offset = st.st_size;
- if (D->offset >= D->size) {
- TLS->cur_downloading_bytes += D->size;
- TLS->cur_downloaded_bytes += D->offset;
- vlogprintf (E_NOTICE, "Already downloaded\n");
- end_load (TLS, D, callback, callback_extra);
- return;
- }
- }
-
- TLS->cur_downloading_bytes += D->size;
- TLS->cur_downloaded_bytes += D->offset;
- //update_prompt ();
- }
- D->refcnt ++;
- clear_packet ();
- out_int (CODE_upload_get_file);
- if (!D->id) {
- out_int (CODE_input_file_location);
- out_long (D->volume);
- out_int (D->local_id);
- out_long (D->secret);
- } else {
- if (D->iv) {
- out_int (CODE_input_encrypted_file_location);
- } else {
- out_int (D->type);
- }
- out_long (D->id);
- out_long (D->access_hash);
- }
- out_int (D->offset);
- out_int (D->size ? (1 << 14) : (1 << 19));
- tglq_send_query (TLS, TLS->DC_list[D->dc], packet_ptr - packet_buffer, packet_buffer, &download_methods, D, callback, callback_extra);
- //tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &download_methods, D);
-}
-
-void tgl_do_load_photo_size (struct tgl_state *TLS, struct tgl_photo_size *P, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *filename), void *callback_extra) {
- if (!P->loc.dc) {
- vlogprintf (E_WARNING, "Bad video thumb\n");
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
-
- assert (P);
- struct download *D = talloc0 (sizeof (*D));
- D->id = 0;
- D->offset = 0;
- D->size = P->size;
- D->volume = P->loc.volume;
- D->dc = P->loc.dc;
- D->local_id = P->loc.local_id;
- D->secret = P->loc.secret;
- D->name = 0;
- D->fd = -1;
- load_next_part (TLS, D, callback, callback_extra);
-}
-
-void tgl_do_load_file_location (struct tgl_state *TLS, struct tgl_file_location *P, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *filename), void *callback_extra) {
- if (!P->dc) {
- tgl_set_query_error (TLS, EINVAL, "Bad file location");
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
-
- assert (P);
- struct download *D = talloc0 (sizeof (*D));
- D->id = 0;
- D->offset = 0;
- D->size = 0;
- D->volume = P->volume;
- D->dc = P->dc;
- D->local_id = P->local_id;
- D->secret = P->secret;
- D->name = 0;
- D->fd = -1;
- load_next_part (TLS, D, callback, callback_extra);
-}
-
-void tgl_do_load_photo (struct tgl_state *TLS, struct tgl_photo *photo, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *filename), void *callback_extra) {
- if (!photo->sizes_num) {
- tgl_set_query_error (TLS, EINVAL, "Bad photo (no photo sizes");
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
- return;
- }
- int max = -1;
- int maxi = 0;
- int i;
- for (i = 0; i < photo->sizes_num; i++) {
- if (photo->sizes[i].w + photo->sizes[i].h > max) {
- max = photo->sizes[i].w + photo->sizes[i].h;
- maxi = i;
- }
- }
- tgl_do_load_photo_size (TLS, &photo->sizes[maxi], callback, callback_extra);
-}
-
-void tgl_do_load_document_thumb (struct tgl_state *TLS, struct tgl_document *video, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *filename), void *callback_extra) {
- tgl_do_load_photo_size (TLS, &video->thumb, callback, callback_extra);
-}
-
-static void _tgl_do_load_document (struct tgl_state *TLS, struct tgl_document *V, struct download *D, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *filename), void *callback_extra) {
- assert (V);
- D->offset = 0;
- D->size = V->size;
- D->id = V->id;
- D->access_hash = V->access_hash;
- D->dc = V->dc_id;
- D->name = 0;
- D->fd = -1;
-
- if (V->mime_type) {
- char *r = tg_extension_by_mime (V->mime_type);
- if (r) {
- D->ext = tstrdup (r);
- }
- }
- load_next_part (TLS, D, callback, callback_extra);
-}
-
-void tgl_do_load_document (struct tgl_state *TLS, struct tgl_document *V, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *filename), void *callback_extra) {
-
- struct download *D = talloc0 (sizeof (*D));
- D->type = CODE_input_document_file_location;
-
- _tgl_do_load_document (TLS, V, D, callback, callback_extra);
-}
-
-void tgl_do_load_video (struct tgl_state *TLS, struct tgl_document *V, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *filename), void *callback_extra) {
-
- struct download *D = talloc0 (sizeof (*D));
- D->type = CODE_input_video_file_location;
-
- _tgl_do_load_document (TLS, V, D, callback, callback_extra);
-}
-
-void tgl_do_load_audio (struct tgl_state *TLS, struct tgl_document *V, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *filename), void *callback_extra) {
-
- struct download *D = talloc0 (sizeof (*D));
- D->type = CODE_input_audio_file_location;
-
- _tgl_do_load_document (TLS, V, D, callback, callback_extra);
-}
-
-void tgl_do_load_encr_document (struct tgl_state *TLS, struct tgl_encr_document *V, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *filename), void *callback_extra) {
- assert (V);
- struct download *D = talloc0 (sizeof (*D));
- D->offset = 0;
- D->size = V->size;
- D->id = V->id;
- D->access_hash = V->access_hash;
- D->dc = V->dc_id;
- D->name = 0;
- D->fd = -1;
- D->key = V->key;
- D->iv = talloc (32);
- memcpy (D->iv, V->iv, 32);
- if (V->mime_type) {
- char *r = tg_extension_by_mime (V->mime_type);
- if (r) {
- D->ext = tstrdup (r);
- }
- }
- load_next_part (TLS, D, callback, callback_extra);
-
- unsigned char md5[16];
- unsigned char str[64];
- memcpy (str, V->key, 32);
- memcpy (str + 32, V->iv, 32);
- MD5 (str, 64, md5);
- assert (V->key_fingerprint == ((*(int *)md5) ^ (*(int *)(md5 + 4))));
-}
-/* }}} */
-
-/* {{{ Export auth */
-
-static int import_auth_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_auth_authorization *DS_U = D;
- tglf_fetch_alloc_user_new (TLS, DS_U->user);
-
- bl_do_dc_signed (TLS, ((struct tgl_dc *)q->extra)->id);
-
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback) (TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static struct query_methods import_auth_methods = {
- .on_answer = import_auth_on_answer,
- .on_error = fail_on_error,
- .type = TYPE_TO_PARAM(auth_authorization)
-};
-
-static int export_auth_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_auth_exported_authorization *DS_EA = D;
-
- bl_do_set_our_id (TLS, DS_LVAL (DS_EA->id));
-
-
- clear_packet ();
- tgl_do_insert_header (TLS);
- out_int (CODE_auth_import_authorization);
- out_int (TLS->our_id);
- out_cstring (DS_STR (DS_EA->bytes));
- tglq_send_query (TLS, q->extra, packet_ptr - packet_buffer, packet_buffer, &import_auth_methods, q->extra, q->callback, q->callback_extra);
- return 0;
-}
-
-static struct query_methods export_auth_methods = {
- .on_answer = export_auth_on_answer,
- .on_error = fail_on_error,
- .type = TYPE_TO_PARAM(auth_exported_authorization)
-};
-
-void tgl_do_export_auth (struct tgl_state *TLS, int num, void (*callback) (struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- clear_packet ();
- out_int (CODE_auth_export_authorization);
- out_int (num);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &export_auth_methods, TLS->DC_list[num], callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Add contact */
-static int add_contact_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_contacts_imported_contacts *DS_CIC = D;
-
- if (DS_LVAL (DS_CIC->imported->cnt) > 0) {
- vlogprintf (E_DEBUG, "Added successfully");
- } else {
- vlogprintf (E_DEBUG, "Not added");
- }
-
- int n = DS_LVAL (DS_CIC->users->cnt);
-
- struct tgl_user **UL = talloc (n * sizeof (void *));
- int i;
- for (i = 0; i < n; i++) {
- UL[i] = tglf_fetch_alloc_user_new (TLS, DS_CIC->users->data[i]);
- }
-
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, int, struct tgl_user **))q->callback) (TLS, q->callback_extra, 1, n, UL);
- }
- tfree (UL, n * sizeof (void *));
- return 0;
-}
-
-static struct query_methods add_contact_methods = {
- .on_answer = add_contact_on_answer,
- .on_error = q_list_on_error,
- .type = TYPE_TO_PARAM(contacts_imported_contacts)
-};
-
-void tgl_do_add_contact (struct tgl_state *TLS, const char *phone, int phone_len, const char *first_name, int first_name_len, const char *last_name, int last_name_len, int force, void (*callback)(struct tgl_state *TLS,void *callback_extra, int success, int size, struct tgl_user *users[]), void *callback_extra) {
- clear_packet ();
- out_int (CODE_contacts_import_contacts);
- out_int (CODE_vector);
- out_int (1);
- out_int (CODE_input_phone_contact);
- long long r;
- tglt_secure_random (&r, 8);
- out_long (r);
- out_cstring (phone, phone_len);
- out_cstring (first_name, first_name_len);
- out_cstring (last_name, last_name_len);
- out_int (force ? CODE_bool_true : CODE_bool_false);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &add_contact_methods, 0, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Del contact */
-static int del_contact_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback) (TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static struct query_methods del_contact_methods = {
- .on_answer = del_contact_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM(contacts_link)
-};
-
-void tgl_do_del_contact (struct tgl_state *TLS, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- if (tgl_get_peer_type (id) != TGL_PEER_USER) {
- tgl_set_query_error (TLS, EINVAL, "id should be user id");
- if (callback) {
- callback (TLS, callback_extra, 0);
- }
- return;
- }
- clear_packet ();
- out_int (CODE_contacts_delete_contact);
-
- tgl_peer_t *U = tgl_peer_get (TLS, id);
- if (U && U->user.access_hash) {
- out_int (CODE_input_user_foreign);
- out_int (tgl_get_peer_id (id));
- out_long (U->user.access_hash);
- } else {
- out_int (CODE_input_user_contact);
- out_int (tgl_get_peer_id (id));
- }
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &del_contact_methods, 0, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Msg search */
-
-struct msg_search_extra {
- struct tgl_message **ML;
- int list_offset;
- int list_size;
- tgl_peer_id_t id;
- int limit;
- int offset;
- int from;
- int to;
- int max_id;
- char *query;
-};
-
-static void _tgl_do_msg_search (struct tgl_state *TLS, struct msg_search_extra *E, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, struct tgl_message *list[]), void *callback_extra);
-
-static int msg_search_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_messages_messages *DS_MM = D;
-
- struct msg_search_extra *E = q->extra;
-
- int n = DS_LVAL (DS_MM->messages->cnt);
-
- if (E->list_size - E->list_offset < n) {
- int new_list_size = 2 * E->list_size;
- if (new_list_size - E->list_offset < n) {
- new_list_size = n + E->list_offset;
- }
- E->ML = trealloc (E->ML, E->list_size * sizeof (void *), new_list_size * sizeof (void *));
- assert (E->ML);
- E->list_size = new_list_size;
- }
-
- int i;
- for (i = 0; i < n; i++) {
- E->ML[i + E->list_offset] = tglf_fetch_alloc_message_new (TLS, DS_MM->messages->data[i]);
- }
- E->list_offset += n;
- E->offset += n;
- E->limit -= n;
- if (E->limit + E->offset >= DS_LVAL (DS_MM->count)) {
- E->limit = DS_LVAL (DS_MM->count) - E->offset;
- if (E->limit < 0) { E->limit = 0; }
- }
- assert (E->limit >= 0);
-
- for (i = 0; i < DS_LVAL (DS_MM->chats->cnt); i++) {
- tglf_fetch_alloc_chat_new (TLS, DS_MM->chats->data[i]);
- }
- for (i = 0; i < DS_LVAL (DS_MM->users->cnt); i++) {
- tglf_fetch_alloc_user_new (TLS, DS_MM->users->data[i]);
- }
-
- if (E->limit <= 0 || DS_MM->magic == CODE_messages_messages) {
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, int, struct tgl_message **))q->callback) (TLS, q->callback_extra, 1, E->list_offset, E->ML);
- }
-
- tfree_str (E->query);
- tfree (E->ML, sizeof (void *) * E->list_size);
- tfree (E, sizeof (*E));
- } else {
- E->max_id = E->ML[E->list_offset - 1]->id;
- E->offset = 0;
- _tgl_do_msg_search (TLS, E, q->callback, q->callback_extra);
- }
- return 0;
-}
-
-static int msg_search_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
-
- struct msg_search_extra *E = q->extra;
- tfree_str (E->query);
- tfree (E->ML, sizeof (void *) * E->list_size);
- tfree (E, sizeof (*E));
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, int, struct tgl_message **))q->callback) (TLS, q->callback_extra, 0, 0, NULL);
- }
- return 0;
-}
-
-static struct query_methods msg_search_methods = {
- .on_answer = msg_search_on_answer,
- .on_error = msg_search_on_error,
- .type = TYPE_TO_PARAM(messages_messages)
-};
-
-static void _tgl_do_msg_search (struct tgl_state *TLS, struct msg_search_extra *E, void (*callback)(struct tgl_state *TLS,void *callback_extra, int success, int size, struct tgl_message *list[]), void *callback_extra) {
- clear_packet ();
- out_int (CODE_messages_search);
- if (tgl_get_peer_type (E->id) == TGL_PEER_UNKNOWN) {
- out_int (CODE_input_peer_empty);
- } else {
- out_peer_id (TLS, E->id);
- }
-
- out_string (E->query);
- out_int (CODE_input_messages_filter_empty);
- out_int (E->from);
- out_int (E->to);
- out_int (E->offset); // offset
- out_int (E->max_id); // max_id
- out_int (E->limit);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &msg_search_methods, E, callback, callback_extra);
-}
-
-void tgl_do_msg_search (struct tgl_state *TLS, tgl_peer_id_t id, int from, int to, int limit, int offset, const char *pattern, int pattern_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, struct tgl_message *list[]), void *callback_extra) {
- if (tgl_get_peer_type (id) == TGL_PEER_ENCR_CHAT) {
- tgl_set_query_error (TLS, EINVAL, "can not search in secret chats");
- if (callback) {
- callback (TLS, callback_extra, 0, 0, 0);
- }
- return;
- }
- struct msg_search_extra *E = talloc0 (sizeof (*E));
- E->id = id;
- E->from = from;
- E->to = to;
- E->limit = limit;
- E->offset = offset;
- E->query = tstrndup (pattern, pattern_len);
-
- _tgl_do_msg_search (TLS, E, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Get difference */
-
-static int get_state_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_updates_state *DS_US = D;
-
- assert (TLS->locks & TGL_LOCK_DIFF);
- TLS->locks ^= TGL_LOCK_DIFF;
-
- bl_do_set_pts (TLS, DS_LVAL (DS_US->pts));
- bl_do_set_qts (TLS, DS_LVAL (DS_US->qts));
- bl_do_set_date (TLS, DS_LVAL (DS_US->date));
- bl_do_set_seq (TLS, DS_LVAL (DS_US->seq));
-
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback) (TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static int lookup_state_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_updates_state *DS_US = D;
- int pts = DS_LVAL (DS_US->pts);
- int qts = DS_LVAL (DS_US->qts);
- int seq = DS_LVAL (DS_US->seq);
-
- if (pts > TLS->pts || qts > TLS->qts || seq > TLS->seq) {
- tgl_do_get_difference (TLS, 0, 0, 0);
- }
- return 0;
-}
-
-
-//int get_difference_active;
-static int get_difference_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_updates_difference *DS_UD = D;
-
- assert (TLS->locks & TGL_LOCK_DIFF);
- TLS->locks ^= TGL_LOCK_DIFF;
-
- if (DS_UD->magic == CODE_updates_difference_empty) {
- bl_do_set_date (TLS, DS_LVAL (DS_UD->date));
- bl_do_set_seq (TLS, DS_LVAL (DS_UD->seq));
-
- vlogprintf (E_DEBUG, "Empty difference. Seq = %d\n", TLS->seq);
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback) (TLS, q->callback_extra, 1);
- }
- } else {
- int i;
-
- for (i = 0; i < DS_LVAL (DS_UD->users->cnt); i++) {
- tglf_fetch_alloc_user_new (TLS, DS_UD->users->data[i]);
- }
- for (i = 0; i < DS_LVAL (DS_UD->chats->cnt); i++) {
- tglf_fetch_alloc_chat_new (TLS, DS_UD->chats->data[i]);
- }
-
- int ml_pos = DS_LVAL (DS_UD->new_messages->cnt);
- struct tgl_message **ML = talloc (ml_pos * sizeof (void *));
- for (i = 0; i < ml_pos; i++) {
- ML[i] = tglf_fetch_alloc_message_new (TLS, DS_UD->new_messages->data[i]);
- }
-
- int el_pos = DS_LVAL (DS_UD->new_encrypted_messages->cnt);
- struct tgl_message **EL = talloc (el_pos * sizeof (void *));
- for (i = 0; i < el_pos; i++) {
- EL[i] = tglf_fetch_alloc_encrypted_message_new (TLS, DS_UD->new_encrypted_messages->data[i]);
- }
-
- for (i = 0; i < DS_LVAL (DS_UD->other_updates->cnt); i++) {
- tglu_work_update_new (TLS, 1, DS_UD->other_updates->data[i]);
- }
-
- for (i = 0; i < DS_LVAL (DS_UD->other_updates->cnt); i++) {
- tglu_work_update_new (TLS, -1, DS_UD->other_updates->data[i]);
- }
-
- for (i = 0; i < ml_pos; i++) {
- bl_do_msg_update (TLS, ML[i]->id);
- }
- for (i = 0; i < el_pos; i++) {
- bl_do_msg_update (TLS, EL[i]->id);
- }
-
- tfree (ML, ml_pos * sizeof (void *));
- tfree (EL, el_pos * sizeof (void *));
-
- if (DS_UD->state) {
- bl_do_set_pts (TLS, DS_LVAL (DS_UD->state->pts));
- bl_do_set_qts (TLS, DS_LVAL (DS_UD->state->qts));
- bl_do_set_date (TLS, DS_LVAL (DS_UD->state->date));
- bl_do_set_seq (TLS, DS_LVAL (DS_UD->state->seq));
-
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback) (TLS, q->callback_extra, 1);
- }
- } else {
- bl_do_set_pts (TLS, DS_LVAL (DS_UD->intermediate_state->pts));
- bl_do_set_qts (TLS, DS_LVAL (DS_UD->intermediate_state->qts));
- bl_do_set_date (TLS, DS_LVAL (DS_UD->intermediate_state->date));
-
- tgl_do_get_difference (TLS, 0, q->callback, q->callback_extra);
- }
- }
- return 0;
-}
-
-static struct query_methods lookup_state_methods = {
- .on_answer = lookup_state_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM(updates_state)
-};
-
-static struct query_methods get_state_methods = {
- .on_answer = get_state_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM(updates_state)
-};
-
-static struct query_methods get_difference_methods = {
- .on_answer = get_difference_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM(updates_difference)
-};
-
-void tgl_do_lookup_state (struct tgl_state *TLS) {
- if (TLS->locks & TGL_LOCK_DIFF) {
- return;
- }
- clear_packet ();
- tgl_do_insert_header (TLS);
- out_int (CODE_updates_get_state);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &lookup_state_methods, 0, 0, 0);
-}
-
-void tgl_do_get_difference (struct tgl_state *TLS, int sync_from_start, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- //get_difference_active = 1;
- //difference_got = 0;
- if (TLS->locks & TGL_LOCK_DIFF) {
- if (callback) {
- callback (TLS, callback_extra, 0);
- }
- return;
- }
- TLS->locks |= TGL_LOCK_DIFF;
- clear_packet ();
- tgl_do_insert_header (TLS);
- if (TLS->pts > 0 || sync_from_start) {
- if (TLS->pts == 0) { TLS->pts = 1; }
- //if (TLS->qts == 0) { TLS->qts = 1; }
- if (TLS->date == 0) { TLS->date = 1; }
- out_int (CODE_updates_get_difference);
- out_int (TLS->pts);
- out_int (TLS->date);
- out_int (TLS->qts);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &get_difference_methods, 0, callback, callback_extra);
- } else {
- out_int (CODE_updates_get_state);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &get_state_methods, 0, callback, callback_extra);
- }
-}
-/* }}} */
-
-/* {{{ Visualize key */
-
-int tgl_do_visualize_key (struct tgl_state *TLS, tgl_peer_id_t id, unsigned char buf[16]) {
- assert (tgl_get_peer_type (id) == TGL_PEER_ENCR_CHAT);
- tgl_peer_t *P = tgl_peer_get (TLS, id);
- assert (P);
- if (P->encr_chat.state != sc_ok) {
- vlogprintf (E_WARNING, "Chat is not initialized yet\n");
- return -1;
- }
- memcpy (buf, P->encr_chat.first_key_sha, 16);
- return 0;
-}
-/* }}} */
-
-/* {{{ Add user to chat */
-
-void tgl_do_add_user_to_chat (struct tgl_state *TLS, tgl_peer_id_t chat_id, tgl_peer_id_t id, int limit, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- clear_packet ();
- out_int (CODE_messages_add_chat_user);
- out_int (tgl_get_peer_id (chat_id));
-
- assert (tgl_get_peer_type (id) == TGL_PEER_USER);
- tgl_peer_t *U = tgl_peer_get (TLS, id);
- if (U && U->user.access_hash) {
- out_int (CODE_input_user_foreign);
- out_int (tgl_get_peer_id (id));
- out_long (U->user.access_hash);
- } else {
- out_int (CODE_input_user_contact);
- out_int (tgl_get_peer_id (id));
- }
- out_int (limit);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, 0, callback, callback_extra);
-}
-
-void tgl_do_del_user_from_chat (struct tgl_state *TLS, tgl_peer_id_t chat_id, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- clear_packet ();
- out_int (CODE_messages_delete_chat_user);
- out_int (tgl_get_peer_id (chat_id));
-
- assert (tgl_get_peer_type (id) == TGL_PEER_USER);
- tgl_peer_t *U = tgl_peer_get (TLS, id);
- if (U && U->user.access_hash) {
- out_int (CODE_input_user_foreign);
- out_int (tgl_get_peer_id (id));
- out_long (U->user.access_hash);
- } else {
- out_int (CODE_input_user_contact);
- out_int (tgl_get_peer_id (id));
- }
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, 0, callback, callback_extra);
-}
-
-/* }}} */
-
-/* {{{ Create secret chat */
-
-void tgl_do_create_secret_chat (struct tgl_state *TLS, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_secret_chat *E), void *callback_extra) {
- assert (tgl_get_peer_type (id) == TGL_PEER_USER);
- tgl_peer_t *U = tgl_peer_get (TLS, id);
- if (!U) {
- tgl_set_query_error (TLS, EINVAL, "Can not create secret chat with unknown user");
- if (callback) {
- callback (TLS, callback_extra, 0, NULL);
- }
- return;
- }
-
- tgl_do_create_encr_chat_request (TLS, tgl_get_peer_id (id), callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Create group chat */
-
-void tgl_do_create_group_chat (struct tgl_state *TLS, int users_num, tgl_peer_id_t ids[], const char *chat_topic, int chat_topic_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- clear_packet ();
- out_int (CODE_messages_create_chat);
- out_int (CODE_vector);
- out_int (users_num); // Number of users, currently we support only 1 user.
- int i;
- for (i = 0; i < users_num; i++) {
- tgl_peer_id_t id = ids[i];
- tgl_peer_t *U = tgl_peer_get (TLS, id);
- if (!U || tgl_get_peer_type (id) != TGL_PEER_USER) {
- tgl_set_query_error (TLS, EINVAL, "Can not create chat with unknown user");
- if (callback) {
- callback (TLS, callback_extra, 0);
- }
- return;
- }
- if (U && U->user.access_hash) {
- out_int (CODE_input_user_foreign);
- out_int (tgl_get_peer_id (id));
- out_long (U->user.access_hash);
- } else {
- out_int (CODE_input_user_contact);
- out_int (tgl_get_peer_id (id));
- }
- }
- out_cstring (chat_topic, chat_topic_len);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, 0, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Delete msg */
-
-static int delete_msg_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_messages_affected_messages *DS_MAM = D;
-
- struct tgl_message *M = tgl_message_get (TLS, (long)q->extra);
- if (M) {
- bl_do_message_delete (TLS, M);
- }
-
- int r = tgl_check_pts_diff (TLS, DS_LVAL (DS_MAM->pts), DS_LVAL (DS_MAM->pts_count));
-
- if (r > 0) {
- bl_do_set_pts (TLS, DS_LVAL (DS_MAM->pts));
- }
-
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback) (TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static struct query_methods delete_msg_methods = {
- .on_answer = delete_msg_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM(messages_affected_messages)
-};
-
-void tgl_do_delete_msg (struct tgl_state *TLS, long long id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- clear_packet ();
- out_int (CODE_messages_delete_messages);
- out_int (CODE_vector);
- out_int (1);
- out_int (id);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &delete_msg_methods, (void *)(long)id, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Export card */
-
-static int export_card_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_vector *DS_V = D;
-
- int n = DS_LVAL (DS_V->f1);
-
- int *r = talloc (4 * n);
- int i;
- for (i = 0; i < n; i++) {
- r[i] = *(int *)DS_V->f2[i];
- }
-
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, int, int *))q->callback) (TLS, q->callback_extra, 1, n, r);
- }
- tfree (r, 4 * n);
- return 0;
-}
-
-static struct query_methods export_card_methods = {
- .on_answer = export_card_on_answer,
- .on_error = q_list_on_error,
- .type = TYPE_TO_PARAM_1(vector, TYPE_TO_PARAM (bare_int))
-};
-
-void tgl_do_export_card (struct tgl_state *TLS, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, int *card), void *callback_extra) {
- clear_packet ();
- out_int (CODE_contacts_export_card);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &export_card_methods, 0, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Import card */
-
-static int import_card_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tgl_user *U = tglf_fetch_alloc_user_new (TLS, D);
-
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_user *))q->callback) (TLS, q->callback_extra, 1, U);
- }
- return 0;
-}
-
-static struct query_methods import_card_methods = {
- .on_answer = import_card_on_answer,
- .on_error = q_ptr_on_error,
- .type = TYPE_TO_PARAM (user)
-};
-
-void tgl_do_import_card (struct tgl_state *TLS, int size, int *card, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *U), void *callback_extra) {
- clear_packet ();
- out_int (CODE_contacts_import_card);
- out_int (CODE_vector);
- out_int (size);
- out_ints (card, size);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &import_card_methods, 0, callback, callback_extra);
-}
-/* }}} */
-
-void tgl_do_start_bot (struct tgl_state *TLS, tgl_peer_id_t bot, tgl_peer_id_t chat, const char *str, int str_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- clear_packet ();
- out_int (CODE_messages_start_bot);
- struct tgl_user *U = (void *)tgl_peer_get (TLS, bot);
- if (U && U->access_hash) {
- out_int (CODE_input_user_foreign);
- out_int (tgl_get_peer_id (bot));
- out_long (U->access_hash);
- } else {
- out_int (CODE_input_user_contact);
- out_int (tgl_get_peer_id (bot));
- }
- out_int (tgl_get_peer_id (chat));
- long long m;
- tglt_secure_random (&m, 8);
- out_long (m);
- out_cstring (str, str_len);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, 0, callback, callback_extra);
-}
-
-/* {{{ Send typing */
-static int send_typing_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static struct query_methods send_typing_methods = {
- .on_answer = send_typing_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM(bool)
-};
-
-void tgl_do_send_typing (struct tgl_state *TLS, tgl_peer_id_t id, enum tgl_typing_status status, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- if (tgl_get_peer_type (id) != TGL_PEER_ENCR_CHAT) {
- clear_packet ();
- out_int (CODE_messages_set_typing);
- out_peer_id (TLS, id);
- switch (status) {
- case tgl_typing_none:
- case tgl_typing_typing:
- out_int (CODE_send_message_typing_action);
- break;
- case tgl_typing_cancel:
- out_int (CODE_send_message_cancel_action);
- break;
- case tgl_typing_record_video:
- out_int (CODE_send_message_record_video_action);
- break;
- case tgl_typing_upload_video:
- out_int (CODE_send_message_upload_video_action);
- break;
- case tgl_typing_record_audio:
- out_int (CODE_send_message_record_audio_action);
- break;
- case tgl_typing_upload_audio:
- out_int (CODE_send_message_upload_audio_action);
- break;
- case tgl_typing_upload_photo:
- out_int (CODE_send_message_upload_photo_action);
- break;
- case tgl_typing_upload_document:
- out_int (CODE_send_message_upload_document_action);
- break;
- case tgl_typing_geo:
- out_int (CODE_send_message_geo_location_action);
- break;
- case tgl_typing_choose_contact:
- out_int (CODE_send_message_choose_contact_action);
- break;
- }
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_typing_methods, 0, callback, callback_extra);
- } else {
- if (callback) {
- callback (TLS, callback_extra, 0);
- }
- }
-}
-/* }}} */
-
-/* {{{ Extd query */
-#ifndef DISABLE_EXTF
-
-
-char *tglf_extf_print_ds (struct tgl_state *TLS, void *DS, struct paramed_type *T);
-
-static int ext_query_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- if (q->callback) {
- char *buf = tglf_extf_print_ds (TLS, D, q->type);
- ((void (*)(struct tgl_state *, void *, int, char *))q->callback) (TLS, q->callback_extra, 1, buf);
- }
- tgl_paramed_type_free (q->type);
- return 0;
-}
-
-static struct query_methods ext_query_methods = {
- .on_answer = ext_query_on_answer,
- .on_error = q_list_on_error
-};
-
-void tgl_do_send_extf (struct tgl_state *TLS, const char *data, int data_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *buf), void *callback_extra) {
- clear_packet ();
-
- ext_query_methods.type = tglf_extf_store (TLS, data, data_len);
-
- if (ext_query_methods.type) {
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &ext_query_methods, 0, callback, callback_extra);
- }
-}
-#else
-void tgl_do_send_extf (struct tgl_state *TLS, char *data, int data_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, char *buf), void *callback_extra) {
- if (callback) {
- callback (TLS, callback_extra, 0, 0);
- }
-}
-#endif
-/* }}} */
-
-/* {{{ get messages */
-
-static int get_messages_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_messages_messages *DS_MM = D;
-
- int i;
- for (i = 0; i < DS_LVAL (DS_MM->users->cnt); i++) {
- tglf_fetch_alloc_user_new (TLS, DS_MM->users->data[i]);
- }
- for (i = 0; i < DS_LVAL (DS_MM->chats->cnt); i++) {
- tglf_fetch_alloc_chat_new (TLS, DS_MM->chats->data[i]);
- }
-
- struct tgl_message **ML;
- if (q->extra) {
- ML = talloc0 (sizeof (void *) * DS_LVAL (DS_MM->messages->cnt));
- } else {
- static struct tgl_message *M;
- M = NULL;
- ML = &M;
- assert (DS_LVAL (DS_MM->messages->cnt) <= 1);
- }
- for (i = 0; i < DS_LVAL (DS_MM->messages->cnt); i++) {
- ML[i] = tglf_fetch_alloc_message_new (TLS, DS_MM->messages->data[i]);
- }
- if (q->callback) {
- if (q->extra) {
- ((void (*)(struct tgl_state *, void *, int, int, struct tgl_message **))q->callback)(TLS, q->callback_extra, 1, DS_LVAL (DS_MM->messages->cnt), ML);
- } else {
- if (DS_LVAL (DS_MM->messages->cnt) > 0) {
- ((void (*)(struct tgl_state *, void *, int, struct tgl_message *))q->callback)(TLS, q->callback_extra, 1, *ML);
- } else {
- tgl_set_query_error (TLS, ENOENT, "no such message");
- ((void (*)(struct tgl_state *, void *, int, struct tgl_message *))q->callback)(TLS, q->callback_extra, 0, NULL);
- }
- }
- }
- if (q->extra) {
- tfree (ML, sizeof (void *) * DS_LVAL (DS_MM->messages->cnt));
- }
- return 0;
-}
-
-static struct query_methods get_messages_methods = {
- .on_answer = get_messages_on_answer,
- .on_error = q_ptr_on_error,
- .type = TYPE_TO_PARAM (messages_messages)
-};
-
-void tgl_do_get_message (struct tgl_state *TLS, long long id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra) {
- struct tgl_message *M = tgl_message_get (TLS, id);
- if (M) {
- if (callback) {
- callback (TLS, callback_extra, 1, M);
- }
- return;
- }
-
- clear_packet ();
-
- out_int (CODE_messages_get_messages);
- out_int (CODE_vector);
- out_int (1);
- out_int (id);
-
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &get_messages_methods, 0, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ Export/import chat link */
-static int export_chat_link_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_exported_chat_invite *DS_ECI = D;
-
- char *s = DS_STR_DUP (DS_ECI->link);
-
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int, const char *))q->callback)(TLS, q->callback_extra, s ? 1 : 0, s);
- }
- tfree_str (s);
- return 0;
-}
-
-
-static struct query_methods export_chat_link_methods = {
- .on_answer = export_chat_link_on_answer,
- .on_error = q_ptr_on_error,
- .type = TYPE_TO_PARAM(exported_chat_invite)
-};
-
-void tgl_do_export_chat_link (struct tgl_state *TLS, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *link), void *callback_extra) {
- if (tgl_get_peer_type (id) != TGL_PEER_CHAT) {
- tgl_set_query_error (TLS, EINVAL, "Can only export chat link for chat");
- if (callback) {
- callback (TLS, callback_extra, 0, NULL);
- }
- return;
- }
-
- clear_packet ();
- out_int (CODE_messages_export_chat_invite);
- out_int (tgl_get_peer_id (id));
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &export_chat_link_methods, 0, callback, callback_extra);
-}
-
-void tgl_do_import_chat_link (struct tgl_state *TLS, const char *link, int len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- const char *l = link + len - 1;
- while (l >= link && *l != '/') {
- l --;
- }
- l ++;
-
- clear_packet ();
- out_int (CODE_messages_import_chat_invite);
- out_cstring (l, len - (l - link));
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, 0, callback, callback_extra);
-}
-
-/* }}} */
-
-/* {{{ set password */
-static int set_password_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static int set_password_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- if (error_code == 400) {
- if (!strcmp (error, "PASSWORD_HASH_INVALID")) {
- vlogprintf (E_WARNING, "Bad old password\n");
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 0);
- }
- return 0;
- }
- if (!strcmp (error, "NEW_PASSWORD_BAD")) {
- vlogprintf (E_WARNING, "Bad new password (unchanged or equals hint)\n");
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 0);
- }
- return 0;
- }
- if (!strcmp (error, "NEW_SALT_INVALID")) {
- vlogprintf (E_WARNING, "Bad new salt\n");
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 0);
- }
- return 0;
- }
- }
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 0);
- }
- return 0;
-}
-
-static struct query_methods set_password_methods = {
- .on_answer = set_password_on_answer,
- .on_error = set_password_on_error,
- .type = TYPE_TO_PARAM(bool)
-};
-
-static void tgl_do_act_set_password (struct tgl_state *TLS, const char *current_password, int current_password_len, const char *new_password, int new_password_len, const char *current_salt, int current_salt_len, const char *new_salt, int new_salt_len, const char *hint, int hint_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- clear_packet ();
- static char s[512];
- static unsigned char shab[32];
-
- assert (current_salt_len <= 128);
- assert (current_password_len <= 128);
- assert (new_salt_len <= 128);
- assert (new_password_len <= 128);
-
- out_int (CODE_account_update_password_settings);
-
- if (current_password_len && current_salt_len) {
- memcpy (s, current_salt, current_salt_len);
- memcpy (s + current_salt_len, current_password, current_password_len);
- memcpy (s + current_salt_len + current_password_len, current_salt, current_salt_len);
-
- SHA256 ((void *)s, 2 * current_salt_len + current_password_len, shab);
- out_cstring ((void *)shab, 32);
- } else {
- out_string ("");
- }
-
- out_int (CODE_account_password_input_settings);
- if (new_password_len) {
- out_int (1);
-
- static char d[256];
- memcpy (d, new_salt, new_salt_len);
-
- int l = new_salt_len;
- tglt_secure_random (d + l, 16);
- l += 16;
- memcpy (s, d, l);
-
- memcpy (s + l, new_password, new_password_len);
- memcpy (s + l + new_password_len, d, l);
-
- SHA256 ((void *)s, 2 * l + new_password_len, shab);
-
- out_cstring (d, l);
- out_cstring ((void *)shab, 32);
- out_cstring (hint, hint_len);
- } else {
- out_int (0);
- }
-
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &set_password_methods, 0, callback, callback_extra);
-}
-
-struct change_password_extra {
- char *current_password;
- char *new_password;
- char *current_salt;
- char *new_salt;
- char *hint;
- int current_password_len;
- int new_password_len;
- int current_salt_len;
- int new_salt_len;
- int hint_len;
- void (*callback)(struct tgl_state *, void *, int);
- void *callback_extra;
-};
-
-void tgl_on_new_pwd (struct tgl_state *TLS, const char *pwd[], void *_T);
-void tgl_on_new2_pwd (struct tgl_state *TLS, const char *pwd, void *_T) {
- struct change_password_extra *E = _T;
- if (strlen (pwd) != (size_t)E->new_password_len || memcmp (E->new_password, pwd, E->new_password_len)) {
- tfree (E->new_password, E->new_password_len);
- E->new_password = NULL;
- E->new_password_len = 0;
- vlogprintf (E_ERROR, "passwords do not match\n");
- TLS->callback.get_values (TLS, tgl_new_password, "new password: ", 2, tgl_on_new_pwd, E);
- return;
- }
- tgl_do_act_set_password (TLS, E->current_password, E->current_password_len,
- E->new_password, E->new_password_len,
- E->current_salt, E->current_salt_len,
- E->new_salt, E->new_salt_len,
- E->hint, E->hint_len,
- E->callback, E->callback_extra);
-
- tfree (E->current_password, E->current_password_len);
- tfree (E->new_password, E->new_password_len);
- tfree (E->current_salt, E->current_salt_len);
- tfree (E->new_salt, E->new_salt_len);
- tfree_str (E->hint);
- tfree (E, sizeof (*E));
-}
-
-void tgl_on_new_pwd (struct tgl_state *TLS, const char *pwd[], void *_T) {
- struct change_password_extra *E = _T;
- E->new_password_len = strlen (pwd[0]);
- E->new_password = tmemdup (pwd[0], E->new_password_len);
- tgl_on_new2_pwd(TLS, pwd[1], E);
-}
-
-void tgl_on_old_pwd (struct tgl_state *TLS, const char *pwd[], void *_T) {
- struct change_password_extra *E = _T;
- E->current_password_len = strlen (pwd[0]);
- E->current_password = tmemdup (pwd[0], E->current_password_len);
- tgl_on_new_pwd(TLS, pwd + 1, E);
-}
-
-static int set_get_password_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_account_password *DS_AP = D;
-
- char *new_hint = q->extra;
-
- struct change_password_extra *E = talloc0 (sizeof (*E));
-
- if (DS_AP->current_salt) {
- E->current_salt_len = DS_AP->current_salt->len;
- E->current_salt = tmemdup (DS_AP->current_salt->data, E->current_salt_len);
- }
- if (DS_AP->new_salt) {
- E->new_salt_len = DS_AP->new_salt->len;
- E->new_salt = tmemdup (DS_AP->new_salt->data, E->new_salt_len);
- }
-
- if (new_hint) {
- E->hint_len = strlen (new_hint);
- E->hint = new_hint;
- }
-
- E->callback = q->callback;
- E->callback_extra = q->callback_extra;
-
- if (DS_AP->magic == CODE_account_no_password) {
- TLS->callback.get_values (TLS, tgl_new_password, "new password: ", 2, tgl_on_new_pwd, E);
- } else {
- static char s[512];
- _snprintf (s, 511, "old password (hint %.*s): ", DS_RSTR (DS_AP->hint));
- TLS->callback.get_values (TLS, tgl_cur_and_new_password, s, 3, tgl_on_old_pwd, E);
- }
- return 0;
-}
-
-static struct query_methods set_get_password_methods = {
- .on_answer = set_get_password_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM(account_password)
-};
-
-void tgl_do_set_password (struct tgl_state *TLS, const char *hint, int hint_len, void (*callback)(struct tgl_state *TLS, void *extra, int success), void *callback_extra) {
- clear_packet ();
- out_int (CODE_account_get_password);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &set_get_password_methods, hint ? tstrndup (hint, hint_len) : NULL, callback, callback_extra);
-}
-
-/* }}} */
-
-/* {{{ check password */
-static int check_password_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- if (error_code == 400) {
- vlogprintf (E_ERROR, "bad password\n");
- tgl_do_check_password (TLS, q->callback, q->callback_extra);
- return 0;
- }
- TLS->locks ^= TGL_LOCK_PASSWORD;
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 0);
- }
- return 0;
-}
-
-static int check_password_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- TLS->locks ^= TGL_LOCK_PASSWORD;
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static struct query_methods check_password_methods = {
- .on_answer = check_password_on_answer,
- .on_error = check_password_on_error,
- .type = TYPE_TO_PARAM(auth_authorization)
-};
-
-
-struct check_password_extra {
- char *current_salt;
- int current_salt_len;
- void (*callback)(struct tgl_state *, void *, int);
- void *callback_extra;
-};
-
-static void tgl_pwd_got (struct tgl_state *TLS, const char *pwd[], void *_T) {
- struct check_password_extra *E = _T;
-
- clear_packet ();
- static char s[512];
- static unsigned char shab[32];
-
- assert (E->current_salt_len <= 128);
- assert (strlen (pwd[0]) <= 128);
-
- out_int (CODE_auth_check_password);
-
- if (pwd[0] && E->current_salt_len) {
- int l = E->current_salt_len;
- memcpy (s, E->current_salt, l);
-
- int r = strlen (pwd[0]);
-#if defined(_MSC_VER) && _MSC_VER >= 1400
- strcpy_s (s + l, 512 -l, pwd[0]);
-#else
- strcpy (s + l, pwd[0]);
-#endif
-
- memcpy (s + l + r, E->current_salt, l);
-
- SHA256 ((void *)s, 2 * l + r, shab);
- out_cstring ((void *)shab, 32);
- } else {
- out_string ("");
- }
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &check_password_methods, 0, E->callback, E->callback_extra);
-
- tfree (E->current_salt, E->current_salt_len);
- tfree (E, sizeof (*E));
-}
-
-static int check_get_password_on_error (struct tgl_state *TLS, struct query *q, int error_code, int error_len, const char *error) {
- TLS->locks ^= TGL_LOCK_PASSWORD;
- tgl_set_query_error (TLS, EPROTO, "RPC_CALL_FAIL %d: %.*s", error_code, error_len, error);
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback) (TLS, q->callback_extra, 0);
- }
- return 0;
-}
-
-static int check_get_password_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tl_ds_account_password *DS_AP = D;
-
- if (DS_AP->magic == CODE_account_no_password) {
- TLS->locks ^= TGL_LOCK_PASSWORD;
- return 0;
- }
- static char s[512];
- _snprintf (s, 511, "type password (hint %.*s): ", DS_RSTR (DS_AP->hint));
-
- struct check_password_extra *E = talloc0 (sizeof (*E));
-
- if (DS_AP->current_salt) {
- E->current_salt_len = DS_AP->current_salt->len;
- E->current_salt = tmemdup (DS_AP->current_salt->data, E->current_salt_len);
- }
-
- E->callback = q->callback;
- E->callback_extra = q->callback_extra;
-
- TLS->callback.get_values (TLS, tgl_cur_password, s, 1, tgl_pwd_got, E);
- return 0;
-}
-
-static struct query_methods check_get_password_methods = {
- .on_answer = check_get_password_on_answer,
- .on_error = check_get_password_on_error,
- .type = TYPE_TO_PARAM(account_password)
-};
-
-void tgl_do_check_password (struct tgl_state *TLS, void (*callback)(struct tgl_state *TLS, void *extra, int success), void *callback_extra) {
- clear_packet ();
- out_int (CODE_account_get_password);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &check_get_password_methods, NULL, callback, callback_extra);
-}
-
-/* }}} */
-
-/* {{{ send broadcast */
-void tgl_do_send_broadcast (struct tgl_state *TLS, int num, tgl_peer_id_t id[], const char *text, int text_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *extra, int success, int num, struct tgl_message *ML[]), void *callback_extra) {
-
- assert (num <= 1000);
-
- struct messages_send_extra *E = talloc0 (sizeof (*E));
- E->multi = 1;
- E->count = num;
- E->list = talloc (sizeof (long long) * num);
-
- int date = (int)time (0);
- struct tl_ds_message_media TDSM;
- TDSM.magic = CODE_message_media_empty;
-
- int i;
- for (i = 0; i < num; i++) {
- tglt_secure_random (&E->list[i], 8);
-
- int peer_type = tgl_get_peer_type (id[i]);
- int peer_id = tgl_get_peer_id (id[i]);
- assert (tgl_get_peer_type (id[i]) == TGL_PEER_USER);
-
- int disable_preview = flags & TGL_SEND_MSG_FLAG_DISABLE_PREVIEW;
- if (!(flags & TGL_SEND_MSG_FLAG_ENABLE_PREVIEW) && TLS->disable_link_preview) {
- disable_preview = 1;
- }
- if (disable_preview) {
- disable_preview = TGLMF_DISABLE_PREVIEW;
- }
-
- bl_do_create_message_new (TLS, E->list[i], &TLS->our_id, &peer_type, &peer_id, NULL, NULL, &date, text, text_len, &TDSM, NULL, NULL, NULL, TGLMF_UNREAD | TGLMF_OUT | TGLMF_PENDING | TGLMF_CREATE | TGLMF_CREATED | disable_preview);
- }
-
- clear_packet ();
- out_int (CODE_messages_send_broadcast);
- out_int (CODE_vector);
- out_int (num);
- for (i = 0; i < num; i++) {
- assert (tgl_get_peer_type (id[i]) == TGL_PEER_USER);
-
- struct tgl_user *U = (void *)tgl_peer_get (TLS, id[i]);
- if (U && U->access_hash) {
- out_int (CODE_input_user_foreign);
- out_int (tgl_get_peer_id (id[i]));
- out_long (U->access_hash);
- } else {
- out_int (CODE_input_user_contact);
- out_int (tgl_get_peer_id (id[i]));
- }
- }
-
- out_int (CODE_vector);
- out_int (num);
- for (i = 0; i < num; i++) {
- out_long (E->list[i]);
- }
- out_cstring (text, text_len);
-
- out_int (CODE_message_media_empty);
-
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &send_msgs_methods, E, callback, callback_extra);
-}
-/* }}} */
-
-/* {{{ block user */
-static int block_user_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback)(TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static struct query_methods block_user_methods = {
- .on_answer = block_user_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM (bool)
-};
-
-void tgl_do_block_user (struct tgl_state *TLS, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- if (tgl_get_peer_type (id) != TGL_PEER_USER) {
- tgl_set_query_error (TLS, EINVAL, "id should be user id");
- if (callback) {
- callback (TLS, callback_extra, 0);
- }
- return;
- }
-
- clear_packet ();
-
- out_int (CODE_contacts_block);
- tgl_peer_t *U = tgl_peer_get (TLS, id);
- if (U && U->user.access_hash) {
- out_int (CODE_input_user_foreign);
- out_int (tgl_get_peer_id (id));
- out_long (U->user.access_hash);
- } else {
- out_int (CODE_input_user_contact);
- out_int (tgl_get_peer_id (id));
- }
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &block_user_methods, 0, callback, callback_extra);
-}
-
-void tgl_do_unblock_user (struct tgl_state *TLS, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- if (tgl_get_peer_type (id) != TGL_PEER_USER) {
- tgl_set_query_error (TLS, EINVAL, "id should be user id");
- if (callback) {
- callback (TLS, callback_extra, 0);
- }
- return;
- }
-
- clear_packet ();
-
- out_int (CODE_contacts_unblock);
- tgl_peer_t *U = tgl_peer_get (TLS, id);
- if (U && U->user.access_hash) {
- out_int (CODE_input_user_foreign);
- out_int (tgl_get_peer_id (id));
- out_long (U->user.access_hash);
- } else {
- out_int (CODE_input_user_contact);
- out_int (tgl_get_peer_id (id));
- }
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &block_user_methods, 0, callback, callback_extra);
-}
-/* }}} */
-
-
-
-static void set_flag_4 (struct tgl_state *TLS, void *_D, int success) {
- struct tgl_dc *D = _D;
- assert (success);
- D->flags |= 4;
-
- TLS->timer_methods->insert (D->ev, TLS->temp_key_expire_time * 0.9);
-}
-
-static int send_bind_temp_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- struct tgl_dc *DC = q->extra;
- DC->flags |= 2;
- tgl_do_help_get_config_dc (TLS, DC, set_flag_4, DC);
- vlogprintf (E_DEBUG, "Bind successful in dc %d\n", DC->id);
- return 0;
-}
-
-static int send_bind_on_error (struct tgl_state *TLS, struct query *q, int error_code, int l, const char *error) {
- vlogprintf (E_WARNING, "bind: error %d: %.*s\n", error_code, l, error);
- if (error_code == 400) {
- return -11;
- }
- return 0;
-}
-
-static struct query_methods send_bind_temp_methods = {
- .on_answer = send_bind_temp_on_answer,
- .on_error = send_bind_on_error,
- .type = TYPE_TO_PARAM (bool)
-};
-
-void tgl_do_send_bind_temp_key (struct tgl_state *TLS, struct tgl_dc *D, long long nonce, int expires_at, void *data, int len, long long msg_id) {
- clear_packet ();
- out_int (CODE_auth_bind_temp_auth_key);
- out_long (D->auth_key_id);
- out_long (nonce);
- out_int (expires_at);
- out_cstring (data, len);
- struct query *q = tglq_send_query_ex (TLS, D, packet_ptr - packet_buffer, packet_buffer, &send_bind_temp_methods, D, 0, 0, 2);
- assert (q->msg_id == msg_id);
-}
-
-static int update_status_on_answer (struct tgl_state *TLS, struct query *q, void *D) {
- if (q->callback) {
- ((void (*)(struct tgl_state *, void *, int))q->callback) (TLS, q->callback_extra, 1);
- }
- return 0;
-}
-
-static struct query_methods update_status_methods = {
- .on_answer = update_status_on_answer,
- .on_error = q_void_on_error,
- .type = TYPE_TO_PARAM(bool)
-};
-
-void tgl_do_update_status (struct tgl_state *TLS, int online, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra) {
- clear_packet ();
- out_int (CODE_account_update_status);
- out_int (online ? CODE_bool_false : CODE_bool_true);
- tglq_send_query (TLS, TLS->DC_working, packet_ptr - packet_buffer, packet_buffer, &update_status_methods, 0, callback, callback_extra);
-}
-
-
-void tgl_do_request_exchange (struct tgl_state *TLS, struct tgl_secret_chat *E) {
- /*static unsigned char s[256];
- tglt_secure_random (s, 256);
-
- long long id;
- tglt_secure_random (&id, 8);
-
- //bl_do_encr_chat_exchange_request (TLS, E, id, s);
- int rst = tgl_sce_requested;
- bl_do_encr_chat_exchange_new (TLS, E, &id, NULL, &rst);
-
- BIGNUM *a = BN_bin2bn (s, 256, 0);
- ensure_ptr (a);
- BIGNUM *p = BN_bin2bn (TLS->encr_prime, 256, 0);
- ensure_ptr (p);
-
- BIGNUM *g = BN_new ();
- ensure_ptr (g);
-
- ensure (BN_set_word (g, TLS->encr_root));
-
- BIGNUM *r = BN_new ();
- ensure_ptr (r);
-
- ensure (BN_mod_exp (r, g, a, p, TLS->BN_ctx));
-
- static unsigned char kk[256];
- memset (kk, 0, sizeof (kk));
- BN_bn2bin (r, kk + (256 - BN_num_bytes (r)));
-
- BN_clear_free (a);
- BN_clear_free (g);
- BN_clear_free (p);
- BN_clear_free (r);
-
- static int action[70];
- action[0] = CODE_decrypted_message_action_request_key;
- *(long long *)(action + 1) = E->exchange_id;
- action[3] = 0x100fe;
- memcpy (action + 4, kk, 256);
-
- long long t;
- tglt_secure_random (&t, 8);
-
- bl_do_send_message_action_encr (TLS, t, TLS->our_id, tgl_get_peer_type (E->id), tgl_get_peer_id (E->id), time (0), 68, action);
-
- struct tgl_message *M = tgl_message_get (TLS, t);
- assert (M);
- assert (M->action.type == tgl_message_action_request_key);
- tgl_do_send_msg (TLS, M, 0, 0);*/
-}
-
-void tgl_do_accept_exchange (struct tgl_state *TLS, struct tgl_secret_chat *E, long long exchange_id, unsigned char ga[]) {
- /*static unsigned char s[256];
- tglt_secure_random (s, 256);
-
- BIGNUM *b = BN_bin2bn (s, 256, 0);
- ensure_ptr (b);
- BIGNUM *g_a = BN_bin2bn (ga, 256, 0);
- ensure_ptr (g_a);
-
- assert (tglmp_check_g_a (TLS, TLS->encr_prime_bn, g_a) >= 0);
- //if (!ctx) {
- // ctx = BN_CTX_new ();
- // ensure_ptr (ctx);
- //}
- BIGNUM *p = TLS->encr_prime_bn;
- ensure_ptr (p);
- BIGNUM *r = BN_new ();
- ensure_ptr (r);
- ensure (BN_mod_exp (r, g_a, b, p, TLS->BN_ctx));
-
- static unsigned char kk[256];
- memset (kk, 0, sizeof (kk));
- BN_bn2bin (r, kk + (256 - BN_num_bytes (r)));
-
- bl_do_encr_chat_exchange_accept (TLS, E, exchange_id, kk);
-
- ensure (BN_set_word (g_a, TLS->encr_root));
- ensure (BN_mod_exp (r, g_a, b, p, TLS->BN_ctx));
-
- static unsigned char buf[256];
- memset (buf, 0, sizeof (buf));
- BN_bn2bin (r, buf + (256 - BN_num_bytes (r)));
-
- static int action[70];
- action[0] = CODE_decrypted_message_action_accept_key;
- *(long long *)(action + 1) = E->exchange_id;
- action[3] = 0x100fe;
- memcpy (action + 4, buf, 256);
- *(long long *)(action + 68) = E->exchange_key_fingerprint;
-
- long long t;
- tglt_secure_random (&t, 8);
-
- bl_do_send_message_action_encr (TLS, t, TLS->our_id, tgl_get_peer_type (E->id), tgl_get_peer_id (E->id), time (0), 70, action);
-
- BN_clear_free (b);
- BN_clear_free (g_a);
- BN_clear_free (r);
-
- struct tgl_message *M = tgl_message_get (TLS, t);
- assert (M);
- assert (M->action.type == tgl_message_action_accept_key);
- tgl_do_send_msg (TLS, M, 0, 0);*/
-}
-
-void tgl_do_confirm_exchange (struct tgl_state *TLS, struct tgl_secret_chat *E, int sen_nop) {
- /*bl_do_encr_chat_exchange_confirm (TLS, E);
- if (sen_nop) {
- int action = CODE_decrypted_message_action_noop;
-
- long long t;
- tglt_secure_random (&t, 8);
-
- bl_do_send_message_action_encr (TLS, t, TLS->our_id, tgl_get_peer_type (E->id), tgl_get_peer_id (E->id), time (0), 1, &action);
-
- struct tgl_message *M = tgl_message_get (TLS, t);
- assert (M);
- assert (M->action.type == tgl_message_action_noop);
- tgl_do_send_msg (TLS, M, 0, 0);
- }*/
-}
-
-void tgl_do_commit_exchange (struct tgl_state *TLS, struct tgl_secret_chat *E, unsigned char gb[]) {
- /*assert (TLS->encr_prime);
-
- BIGNUM *g_b = BN_bin2bn (gb, 256, 0);
- ensure_ptr (g_b);
- assert (tglmp_check_g_a (TLS, TLS->encr_prime_bn, g_b) >= 0);
-
- BIGNUM *p = TLS->encr_prime_bn;
- ensure_ptr (p);
- BIGNUM *r = BN_new ();
- ensure_ptr (r);
- BIGNUM *a = BN_bin2bn ((void *)E->exchange_key, 256, 0);
- ensure_ptr (a);
- ensure (BN_mod_exp (r, g_b, a, p, TLS->BN_ctx));
-
- static unsigned char s[256];
- memset (s, 0, 256);
-
- BN_bn2bin (r, s + (256 - BN_num_bytes (r)));
-
- BN_clear_free (g_b);
- BN_clear_free (r);
- BN_clear_free (a);
-
- static unsigned char sh[20];
- SHA1 (s, 256, sh);
-
- int action[4];
- action[0] = CODE_decrypted_message_action_commit_key;
- *(long long *)(action + 1) = E->exchange_id;
- *(long long *)(action + 3) = *(long long *)(sh + 12);
-
- long long t;
- tglt_secure_random (&t, 8);
-
- bl_do_send_message_action_encr (TLS, t, TLS->our_id, tgl_get_peer_type (E->id), tgl_get_peer_id (E->id), time (0), 5, action);
-
- struct tgl_message *M = tgl_message_get (TLS, t);
- assert (M);
- assert (M->action.type == tgl_message_action_commit_key);
- tgl_do_send_msg (TLS, M, 0, 0);
-
- bl_do_encr_chat_exchange_commit (TLS, E, s);*/
-}
-
-void tgl_do_abort_exchange (struct tgl_state *TLS, struct tgl_secret_chat *E) {
- //bl_do_encr_chat_exchange_abort (TLS, E);
-}
-
-void tgl_started_cb (struct tgl_state *TLS, void *arg, int success) {
- assert (success);
- TLS->started = 1;
- if (TLS->callback.started) {
- TLS->callback.started (TLS);
- }
-}
-
-void tgl_export_auth_callback (struct tgl_state *TLS, void *arg, int success) {
- assert (success);
- int i;
- for (i = 0; i <= TLS->max_dc_num; i++) if (TLS->DC_list[i] && !tgl_signed_dc (TLS, TLS->DC_list[i])) {
- return;
- }
- if (TLS->callback.logged_in) {
- TLS->callback.logged_in (TLS);
- }
-
- tglm_send_all_unsent (TLS);
- tgl_do_get_difference (TLS, 0, tgl_started_cb, 0);
-}
-
-void tgl_export_all_auth (struct tgl_state *TLS) {
- int i;
- int ok = 1;
- for (i = 0; i <= TLS->max_dc_num; i++) if (TLS->DC_list[i] && !tgl_signed_dc (TLS, TLS->DC_list[i])) {
- tgl_do_export_auth (TLS, i, tgl_export_auth_callback, TLS->DC_list[i]);
- ok = 0;
- }
- if (ok) {
- if (TLS->callback.logged_in) {
- TLS->callback.logged_in (TLS);
- }
-
- tglm_send_all_unsent (TLS);
- tgl_do_get_difference (TLS, 0, tgl_started_cb, 0);
- }
-}
-
-struct sign_up_extra {
- char *phone;
- char *hash;
- char *first_name;
- char *last_name;
- int phone_len;
- int hash_len;
- int first_name_len;
- int last_name_len;
-};
-
-void tgl_sign_in_code (struct tgl_state *TLS, const char *code[], void *_T);
-void tgl_sign_in_result (struct tgl_state *TLS, void *_T, int success, struct tgl_user *U) {
- struct sign_up_extra *E = _T;
- if (success) {
- tfree (E->phone, E->phone_len);
- tfree (E->hash, E->hash_len);
- tfree (E, sizeof (*E));
- } else {
- vlogprintf (E_ERROR, "incorrect code\n");
- TLS->callback.get_values (TLS, tgl_code, "code ('call' for phone call):", 1, tgl_sign_in_code, E);
- return;
- }
- tgl_export_all_auth (TLS);
-}
-
-void tgl_sign_in_code (struct tgl_state *TLS, const char *code[], void *_T) {
- struct sign_up_extra *E = _T;
- if (!strcmp (code[0], "call")) {
- tgl_do_phone_call (TLS, E->phone, E->phone_len, E->hash, E->hash_len, 0, 0);
- TLS->callback.get_values (TLS, tgl_code, "code ('call' for phone call):", 1, tgl_sign_in_code, E);
- return;
- }
-
- tgl_do_send_code_result (TLS, E->phone, E->phone_len, E->hash, E->hash_len, code[0], strlen (code[0]), tgl_sign_in_result, E);
-}
-
-void tgl_sign_up_code (struct tgl_state *TLS, const char *code[], void *_T);
-void tgl_sign_up_result (struct tgl_state *TLS, void *_T, int success, struct tgl_user *U) {
- struct sign_up_extra *E = _T;
- if (success) {
- tfree (E->phone, E->phone_len);
- tfree (E->hash, E->hash_len);
- tfree (E->first_name, E->first_name_len);
- tfree (E->last_name, E->last_name_len);
- tfree (E, sizeof (*E));
- } else {
- vlogprintf (E_ERROR, "incorrect code\n");
- TLS->callback.get_values (TLS, tgl_code, "code ('call' for phone call):", 1, tgl_sign_up_code, E);
- return;
- }
- tgl_export_all_auth (TLS);
-}
-
-void tgl_sign_up_code (struct tgl_state *TLS, const char *code[], void *_T) {
- struct sign_up_extra *E = _T;
- if (!strcmp (code[0], "call")) {
- tgl_do_phone_call (TLS, E->phone, E->phone_len, E->hash, E->hash_len, 0, 0);
- TLS->callback.get_values (TLS, tgl_code, "code ('call' for phone call):", 1, tgl_sign_up_code, E);
- return;
- }
-
- tgl_do_send_code_result_auth (TLS, E->phone, E->phone_len, E->hash, E->hash_len, code[0], strlen (code[0]), E->first_name, E->first_name_len, E->last_name, E->last_name_len, tgl_sign_up_result, E);
-}
-
-
-void tgl_set_last_name (struct tgl_state *TLS, const char *last_name, struct sign_up_extra *E) {
- E->last_name_len = strlen (last_name);
- E->last_name = tmemdup (last_name, E->last_name_len);
-}
-
-int tgl_set_first_name (struct tgl_state *TLS, const char *first_name, struct sign_up_extra *E) {
- if (strlen (first_name) < 1) {
- return -1;
- }
-
- E->first_name_len = strlen (first_name);
- E->first_name = tmemdup (first_name, E->first_name_len);
- return 0;
-}
-
-void tgl_register_cb (struct tgl_state *TLS, const char *rinfo[], void *_T) {
- struct sign_up_extra *E = _T;
- const char *yn = rinfo[0];
- if (strlen (yn) > 1) {
- TLS->callback.get_values (TLS, tgl_register_info, "registration info:", 3, tgl_register_cb, E);
- } else if (strlen (yn) == 0 || *yn == 'y' || *yn == 'Y') {
- if (!tgl_set_first_name(TLS, rinfo[1], E)) {
- tgl_set_last_name(TLS, rinfo[2], E);
- TLS->callback.get_values (TLS, tgl_code, "code ('call' for phone call):", 1, tgl_sign_up_code, E);
- }
- else {
- TLS->callback.get_values (TLS, tgl_register_info, "registration info:", 3, tgl_register_cb, E);
- }
- } else if (*yn == 'n' || *yn == 'N') {
- vlogprintf (E_ERROR, "stopping registration");
- tfree (E->phone, E->phone_len);
- tfree (E->hash, E->hash_len);
- tfree (E, sizeof (*E));
- tgl_login (TLS);
- } else {
- TLS->callback.get_values (TLS, tgl_register_info, "registration info:", 3, tgl_register_cb, E);
- }
-}
-
-void tgl_sign_in_phone (struct tgl_state *TLS, const char *phone[], void *arg);
-void tgl_sign_in_phone_cb (struct tgl_state *TLS, void *extra, int success, int registered, const char *mhash) {
- struct sign_up_extra *E = extra;
- if (!success) {
- vlogprintf (E_ERROR, "Incorrect phone number\n");
-
- tfree (E->phone, E->phone_len);
- tfree (E, sizeof (*E));
- TLS->callback.get_values (TLS, tgl_phone_number, "phone number:", 1, tgl_sign_in_phone, NULL);
- return;
- }
-
- E->hash_len = strlen (mhash);
- E->hash = tmemdup (mhash, E->hash_len);
-
- if (registered) {
- TLS->callback.get_values (TLS, tgl_code, "code ('call' for phone call):", 1, tgl_sign_in_code, E);
- } else {
- TLS->callback.get_values (TLS, tgl_register_info, "registration info:", 3, tgl_register_cb, E);
- }
-}
-
-void tgl_sign_in_phone (struct tgl_state *TLS, const char *phone[], void *arg) {
- struct sign_up_extra *E = talloc0 (sizeof (*E));
- E->phone_len = strlen (phone[0]);
- E->phone = tmemdup (phone[0], E->phone_len);
-
- tgl_do_send_code (TLS, E->phone, E->phone_len, tgl_sign_in_phone_cb, E);
-}
-
-void tgl_bot_hash_cb (struct tgl_state *TLS, const char *code[], void *arg);
-
-void tgl_sign_in_bot_cb (struct tgl_state *TLS, void *_T, int success, struct tgl_user *U) {
- if (!success) {
- vlogprintf (E_ERROR, "incorrect bot hash\n");
- TLS->callback.get_values (TLS, tgl_bot_hash, "bot hash:", 1, tgl_bot_hash_cb, NULL);
- return;
- }
- tgl_export_all_auth (TLS);
-}
-
-void tgl_bot_hash_cb (struct tgl_state *TLS, const char *code[], void *arg) {
- tgl_do_send_bot_auth (TLS, code[0], strlen (code[0]), tgl_sign_in_bot_cb, NULL);
-}
-
-void tgl_sign_in (struct tgl_state *TLS) {
- if (!tgl_signed_dc (TLS, TLS->DC_working)) {
- if (TLS->is_bot) {
- TLS->callback.get_values (TLS, tgl_bot_hash, "bot hash:", 1, tgl_bot_hash_cb, NULL);
- } else {
- TLS->callback.get_values (TLS, tgl_phone_number, "phone number:", 1, tgl_sign_in_phone, NULL);
- }
- } else {
- tgl_export_all_auth (TLS);
- }
-}
-
-static void check_authorized (struct tgl_state *TLS, void *arg) {
- int i;
- int ok = 1;
- for (i = 0; i <= TLS->max_dc_num; i++) {
- if (TLS->DC_list[i] && !tgl_signed_dc (TLS, TLS->DC_list[i]) && !tgl_authorized_dc (TLS, TLS->DC_list[i])) {
- ok = 0;
- break;
- }
- }
-
- if (ok) {
- TLS->timer_methods->free (TLS->ev_login);
- TLS->ev_login = NULL;
- tgl_sign_in (TLS);
- } else {
- TLS->timer_methods->insert (TLS->ev_login, 0.1);
- }
-}
-
-void tgl_login (struct tgl_state *TLS) {
- int i;
- int ok = 1;
- for (i = 0; i <= TLS->max_dc_num; i++) {
- if (TLS->DC_list[i] && !tgl_signed_dc (TLS, TLS->DC_list[i]) && !tgl_authorized_dc (TLS, TLS->DC_list[i])) {
- ok = 0;
- break;
- }
- }
-
- if (!ok) {
- TLS->ev_login = TLS->timer_methods->alloc (TLS, check_authorized, NULL);
- TLS->timer_methods->insert (TLS->ev_login, 0.1);
- } else {
- tgl_sign_in (TLS);
- }
-}
diff --git a/protocols/Telegram/src/tgl/queries.h b/protocols/Telegram/src/tgl/queries.h
deleted file mode 100644
index 9665667d55..0000000000
--- a/protocols/Telegram/src/tgl/queries.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-//#include "net.h"
-#ifndef __QUERIES_H__
-#define __QUERIES_H__
-#include "tgl-structures.h"
-#include "auto.h"
-#include "tgl-layout.h"
-
-#define QUERY_ACK_RECEIVED 1
-#define QUERY_FORCE_SEND 2
-
-struct query;
-struct query_methods {
- int (*on_answer)(struct tgl_state *TLS, struct query *q, void *DS);
- int (*on_error)(struct tgl_state *TLS, struct query *q, int error_code, int len, const char *error);
- int (*on_timeout)(struct tgl_state *TLS, struct query *q);
- struct paramed_type *type;
-};
-
-struct query {
- long long msg_id;
- int data_len;
- int flags;
- int seq_no;
- long long session_id;
- void *data;
- struct query_methods *methods;
- struct tgl_timer *ev;
- struct tgl_dc *DC;
- struct tgl_session *session;
- struct paramed_type *type;
- void *extra;
- void *callback;
- void *callback_extra;
-};
-
-
-struct query *tglq_send_query (struct tgl_state *TLS, struct tgl_dc *DC, int len, void *data, struct query_methods *methods, void *extra, void *callback, void *callback_extra);
-void tglq_query_ack (struct tgl_state *TLS, long long id);
-int tglq_query_error (struct tgl_state *TLS, long long id);
-int tglq_query_result (struct tgl_state *TLS, long long id);
-void tglq_query_restart (struct tgl_state *TLS, long long id);
-
-//double next_timer_in (void);
-//void work_timers (void);
-
-//extern struct query_methods help_get_config_methods;
-
-double get_double_time (void);
-
-void tgl_do_send_bind_temp_key (struct tgl_state *TLS, struct tgl_dc *D, long long nonce, int expires_at, void *data, int len, long long msg_id);
-
-void tgl_do_request_exchange (struct tgl_state *TLS, struct tgl_secret_chat *E);
-void tgl_do_confirm_exchange (struct tgl_state *TLS, struct tgl_secret_chat *E, int sen_nop);
-void tgl_do_accept_exchange (struct tgl_state *TLS, struct tgl_secret_chat *E, long long exchange_id, unsigned char g_a[]);
-void tgl_do_commit_exchange (struct tgl_state *TLS, struct tgl_secret_chat *E, unsigned char g_a[]);
-void tgl_do_abort_exchange (struct tgl_state *TLS, struct tgl_secret_chat *E);
-
-void tglq_regen_query (struct tgl_state *TLS, long long id);
-void tglq_query_delete (struct tgl_state *TLS, long long id);
-void tglq_query_free_all (struct tgl_state *TLS);
-// For binlog
-
-//int get_dh_config_on_answer (struct query *q);
-//void fetch_dc_option (void);
-#endif
diff --git a/protocols/Telegram/src/tgl/structures.c b/protocols/Telegram/src/tgl/structures.c
deleted file mode 100644
index a680e4c415..0000000000
--- a/protocols/Telegram/src/tgl/structures.c
+++ /dev/null
@@ -1,2311 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <assert.h>
-#include <string.h>
-#ifdef HAVE_STRINGS_H
-#include <strings.h>
-#endif
-#include "tgl-structures.h"
-#include "mtproto-common.h"
-//#include "telegram.h"
-#include "tree.h"
-#include <openssl/aes.h>
-#include <openssl/bn.h>
-#include <openssl/sha.h>
-#include "queries.h"
-#include "tgl-binlog.h"
-#include "tgl-methods-in.h"
-#include "updates.h"
-#include "mtproto-client.h"
-
-#include "tgl.h"
-#include "auto.h"
-#include "auto/auto-types.h"
-#include "auto/auto-skip.h"
-#include "auto/auto-fetch-ds.h"
-#include "auto/auto-free-ds.h"
-
-#define sha1 SHA1
-#if defined(WIN32) || defined(_WIN32)
-#define bzero(b,len) (memset((b), '\0', (len)) )
-#endif
-
-struct random2local {
- long long random_id;
- int local_id;
-};
-
-static int id_cmp (struct tgl_message *M1, struct tgl_message *M2);
-#define peer_cmp(a,b) (tgl_cmp_peer_id (a->id, b->id))
-#define peer_cmp_name(a,b) (strcmp (a->print_name, b->print_name))
-
-static int random_id_cmp (struct random2local *L, struct random2local *R) {
- if (L->random_id < R->random_id) { return -1; }
- if (L->random_id > R->random_id) { return 1; }
- return 0;
-}
-
-static int photo_id_cmp (struct tgl_photo *L, struct tgl_photo *R) {
- if (L->id < R->id) { return -1; }
- if (L->id > R->id) { return 1; }
- return 0;
-}
-
-static int document_id_cmp (struct tgl_document *L, struct tgl_document *R) {
- if (L->id < R->id) { return -1; }
- if (L->id > R->id) { return 1; }
- return 0;
-}
-
-static int webpage_id_cmp (struct tgl_webpage *L, struct tgl_webpage *R) {
- if (L->id < R->id) { return -1; }
- if (L->id > R->id) { return 1; }
- return 0;
-}
-
-DEFINE_TREE(peer,tgl_peer_t *,peer_cmp,0)
-DEFINE_TREE(peer_by_name,tgl_peer_t *,peer_cmp_name,0)
-DEFINE_TREE(message,struct tgl_message *,id_cmp,0)
-DEFINE_TREE(random_id,struct random2local *, random_id_cmp,0)
-DEFINE_TREE(photo,struct tgl_photo *,photo_id_cmp,0)
-DEFINE_TREE(document,struct tgl_document *,document_id_cmp,0)
-DEFINE_TREE(webpage,struct tgl_webpage *,webpage_id_cmp,0)
-
-
-char *tgls_default_create_print_name (struct tgl_state *TLS, tgl_peer_id_t id, const char *a1, const char *a2, const char *a3, const char *a4) {
- const char *d[4];
- d[0] = a1; d[1] = a2; d[2] = a3; d[3] = a4;
- static char buf[10000];
- buf[0] = 0;
- int i;
- int p = 0;
- for (i = 0; i < 4; i++) {
- if (d[i] && strlen (d[i])) {
- p += tsnprintf (buf + p, 9999 - p, "%s%s", p ? "_" : "", d[i]);
- assert (p < 9990);
- }
- }
- char *s = buf;
- while (*s) {
- if (((unsigned char)*s) <= ' ') { *s = '_'; }
- if (*s == '#') { *s = '@'; }
- s++;
- }
- s = buf;
- int fl = strlen (s);
- int cc = 0;
- while (1) {
- tgl_peer_t *P = tgl_peer_get_by_name (TLS, s);
- if (!P || !tgl_cmp_peer_id (P->id, id)) {
- break;
- }
- cc ++;
- assert (cc <= 9999);
- tsnprintf (s + fl, 9999 - fl, "#%d", cc);
- }
- return tstrdup (s);
-}
-
-enum tgl_typing_status tglf_fetch_typing_new (struct tl_ds_send_message_action *DS_SMA) {
- if (!DS_SMA) { return 0; }
- switch (DS_SMA->magic) {
- case CODE_send_message_typing_action:
- return tgl_typing_typing;
- case CODE_send_message_cancel_action:
- return tgl_typing_cancel;
- case CODE_send_message_record_video_action:
- return tgl_typing_record_video;
- case CODE_send_message_upload_video_action:
- return tgl_typing_upload_video;
- case CODE_send_message_record_audio_action:
- return tgl_typing_record_audio;
- case CODE_send_message_upload_audio_action:
- return tgl_typing_upload_audio;
- case CODE_send_message_upload_photo_action:
- return tgl_typing_upload_photo;
- case CODE_send_message_upload_document_action:
- return tgl_typing_upload_document;
- case CODE_send_message_geo_location_action:
- return tgl_typing_geo;
- case CODE_send_message_choose_contact_action:
- return tgl_typing_choose_contact;
- default:
- assert (0);
- return tgl_typing_none;
- }
-}
-
-enum tgl_typing_status tglf_fetch_typing (void) {
- struct tl_ds_send_message_action *DS_SMA = fetch_ds_type_send_message_action (TYPE_TO_PARAM (send_message_action));
- enum tgl_typing_status res = tglf_fetch_typing_new (DS_SMA);
- free_ds_type_send_message_action (DS_SMA, TYPE_TO_PARAM (send_message_action));
- return res;
-}
-
-/* {{{ Fetch */
-
-int tglf_fetch_file_location_new (struct tgl_state *TLS, struct tgl_file_location *loc, struct tl_ds_file_location *DS_FL) {
- if (!DS_FL) { return 0; }
- loc->dc = DS_LVAL (DS_FL->dc_id);
- loc->volume = DS_LVAL (DS_FL->volume_id);
- loc->local_id = DS_LVAL (DS_FL->local_id);
- loc->secret = DS_LVAL (DS_FL->secret);
- return 0;
-}
-
-int tglf_fetch_user_status_new (struct tgl_state *TLS, struct tgl_user_status *S, struct tgl_user *U, struct tl_ds_user_status *DS_US) {
- if (!DS_US) { return 0; }
- switch (DS_US->magic) {
- case CODE_user_status_empty:
- if (S->online) {
- tgl_insert_status_update (TLS, U);
- if (S->online == 1) {
- tgl_remove_status_expire (TLS, U);
- }
- }
- S->online = 0;
- S->when = 0;
- break;
- case CODE_user_status_online:
- {
- if (S->online != 1) {
- S->when = DS_LVAL (DS_US->expires);
- if (S->online) {
- tgl_insert_status_update (TLS, U);
- }
- tgl_insert_status_expire (TLS, U);
- S->online = 1;
- } else {
- if (DS_LVAL (DS_US->expires) != S->when) {
- S->when = DS_LVAL (DS_US->expires);
- tgl_remove_status_expire (TLS, U);
- tgl_insert_status_expire (TLS, U);
- }
- }
- }
- break;
- case CODE_user_status_offline:
- if (S->online != -1) {
- if (S->online) {
- tgl_insert_status_update (TLS, U);
- }
- if (S->online == 1) {
- tgl_remove_status_expire (TLS, U);
- }
- }
- S->online = -1;
- S->when = DS_LVAL (DS_US->was_online);
- break;
- case CODE_user_status_recently:
- if (S->online != -2) {
- if (S->online) {
- tgl_insert_status_update (TLS, U);
- }
- if (S->online == 1) {
- tgl_remove_status_expire (TLS, U);
- }
- }
- S->online = -2;
- break;
- case CODE_user_status_last_week:
- if (S->online != -3) {
- if (S->online) {
- tgl_insert_status_update (TLS, U);
- }
- if (S->online == 1) {
- tgl_remove_status_expire (TLS, U);
- }
- }
- S->online = -3;
- break;
- case CODE_user_status_last_month:
- if (S->online != -4) {
- if (S->online) {
- tgl_insert_status_update (TLS, U);
- }
- if (S->online == 1) {
- tgl_remove_status_expire (TLS, U);
- }
- }
- S->online = -4;
- break;
- default:
- assert (0);
- }
- return 0;
-}
-
-int tglf_fetch_user_new (struct tgl_state *TLS, struct tgl_user *U, struct tl_ds_user *DS_U) {
- if (!DS_U) { return 0; }
- U->id = TGL_MK_USER (DS_LVAL (DS_U->id));
- if (DS_U->magic == CODE_user_empty) {
- return 0;
- }
-
- int flags = U->flags & 0xffff;
-
- if (DS_LVAL (DS_U->flags) & (1 << 10)) {
- bl_do_set_our_id (TLS, tgl_get_peer_id (U->id));
- flags |= TGLUF_SELF;
- }
-
- if (DS_LVAL (DS_U->flags) & (1 << 11)) {
- flags |= TGLUF_CONTACT;
- }
-
- if (DS_LVAL (DS_U->flags) & (1 << 12)) {
- flags |= TGLUF_MUTUAL_CONTACT;
- }
-
-
- if (DS_LVAL (DS_U->flags) & (1 << 14)) {
- flags |= TGLUF_BOT;
- }
- /*
- if (DS_LVAL (DS_U->flags) & (1 << 15)) {
- flags |= TGLUF_BOT_FULL_ACCESS;
- }
-
- if (DS_LVAL (DS_U->flags) & (1 << 16)) {
- flags |= TGLUF_BOT_NO_GROUPS;
- }*/
-
- if (!(flags & TGLUF_CREATED)) {
- flags |= TGLUF_CREATE | TGLUF_CREATED;
- }
-
- bl_do_user_new (TLS, tgl_get_peer_id (U->id),
- DS_U->access_hash,
- DS_STR (DS_U->first_name),
- DS_STR (DS_U->last_name),
- DS_STR (DS_U->phone),
- DS_STR (DS_U->username),
- NULL,
- NULL, 0, NULL, 0,
- DS_U->photo,
- NULL, NULL,
- NULL,
- flags
- );
-
- if (DS_U->status) {
- assert (tglf_fetch_user_status_new (TLS, &U->status, U, DS_U->status) >= 0);
- }
-
- if (DS_LVAL (DS_U->flags) & (1 << 13)) {
- if (!(U->flags & TGLUF_DELETED)) {
- bl_do_user_delete (TLS, U);
- }
- }
-
- return 0;
-}
-
-void tglf_fetch_user_full_new (struct tgl_state *TLS, struct tgl_user *U, struct tl_ds_user_full *DS_UF) {
- if (!DS_UF) { return; }
-
- tglf_fetch_user_new (TLS, U, DS_UF->user);
-
- int flags = U->flags & 0xffff;
-
- if (DS_BVAL (DS_UF->blocked)) {
- flags |= TGLUF_BLOCKED;
- } else {
- flags &= ~TGLUF_BLOCKED;
- }
-
- bl_do_user_new (TLS, tgl_get_peer_id (U->id),
- NULL,
- NULL, 0,
- NULL, 0,
- NULL, 0,
- NULL, 0,
- DS_UF->profile_photo,
- //DS_STR (DS_UF->real_first_name), DS_STR (DS_UF->real_last_name),
- NULL, 0, NULL, 0,
- NULL,
- NULL, NULL,
- DS_UF->bot_info,
- flags
- );
-}
-
-void str_to_256 (unsigned char *dst, char *src, int src_len) {
- if (src_len >= 256) {
- memcpy (dst, src + src_len - 256, 256);
- } else {
- bzero (dst, 256 - src_len);
- memcpy (dst + 256 - src_len, src, src_len);
- }
-}
-
-void str_to_32 (unsigned char *dst, char *src, int src_len) {
- if (src_len >= 32) {
- memcpy (dst, src + src_len - 32, 32);
- } else {
- bzero (dst, 32 - src_len);
- memcpy (dst + 32 - src_len, src, src_len);
- }
-}
-
-void tglf_fetch_encrypted_chat_new (struct tgl_state *TLS, struct tgl_secret_chat *U, struct tl_ds_encrypted_chat *DS_EC) {
- if (!DS_EC) { return; }
- U->id = TGL_MK_ENCR_CHAT (DS_LVAL (DS_EC->id));
- if (DS_EC->magic == CODE_encrypted_chat_empty) {
- return;
- }
- int new = !(U->flags & TGLPF_CREATED);
-
- if (DS_EC->magic == CODE_encrypted_chat_discarded) {
- if (new) {
- vlogprintf (E_WARNING, "Unknown chat in deleted state. May be we forgot something...\n");
- return;
- }
- bl_do_encr_chat_delete (TLS, U);
- //write_secret_chat_file ();
- return;
- }
-
- static unsigned char g_key[256];
- if (new) {
- if (DS_EC->magic != CODE_encrypted_chat_requested) {
- vlogprintf (E_WARNING, "Unknown chat. May be we forgot something...\n");
- return;
- }
-
- str_to_256 (g_key, DS_STR (DS_EC->g_a));
-
- int user_id = DS_LVAL (DS_EC->participant_id) + DS_LVAL (DS_EC->admin_id) - TLS->our_id;
- int r = sc_request;
- bl_do_encr_chat_new (TLS, tgl_get_peer_id (U->id),
- DS_EC->access_hash,
- DS_EC->date,
- DS_EC->admin_id,
- &user_id,
- NULL,
- (void *)g_key,
- NULL,
- &r,
- NULL, NULL, NULL, NULL, NULL,
- NULL,
- TGLECF_CREATE | TGLECF_CREATED
- );
- } else {
- if (DS_EC->magic == CODE_encrypted_chat_waiting) {
- int r = sc_waiting;
- bl_do_encr_chat_new (TLS, tgl_get_peer_id (U->id),
- DS_EC->access_hash,
- DS_EC->date,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- &r,
- NULL, NULL, NULL, NULL, NULL,
- NULL,
- TGL_FLAGS_UNCHANGED
- );
- return; // We needed only access hash from here
- }
-
- str_to_256 (g_key, DS_STR (DS_EC->g_a_or_b));
-
- //write_secret_chat_file ();
- int r = sc_ok;
- bl_do_encr_chat_new (TLS, tgl_get_peer_id (U->id),
- DS_EC->access_hash,
- DS_EC->date,
- NULL,
- NULL,
- NULL,
- g_key,
- NULL,
- &r,
- NULL, NULL, NULL, NULL, NULL,
- DS_EC->key_fingerprint,
- TGL_FLAGS_UNCHANGED
- );
- }
-}
-
-void tglf_fetch_chat_new (struct tgl_state *TLS, struct tgl_chat *C, struct tl_ds_chat *DS_C) {
- if (!DS_C) { return; }
-
- C->id = TGL_MK_CHAT (DS_LVAL (DS_C->id));
- if (DS_C->magic == CODE_chat_empty) {
- return;
- }
-
- int flags = C->flags & 0xffff;
- if (!(flags & TGLCF_CREATED)) {
- flags |= TGLCF_CREATE | TGLCF_CREATED;
- }
-
- bl_do_chat_new (TLS, tgl_get_peer_id (C->id),
- DS_STR (DS_C->title),
- DS_C->participants_count,
- DS_C->date,
- NULL,
- NULL,
- DS_C->photo,
- NULL,
- NULL,
- NULL, NULL,
- flags
- );
-}
-
-void tglf_fetch_chat_full_new (struct tgl_state *TLS, struct tgl_chat *C, struct tl_ds_messages_chat_full *DS_MCF) {
- if (!DS_MCF) { return; }
- struct tl_ds_chat_full *DS_CF = DS_MCF->full_chat;
-
- C->id = TGL_MK_CHAT (DS_LVAL (DS_CF->id));
-
- bl_do_chat_new (TLS, tgl_get_peer_id (C->id),
- NULL, 0,
- NULL,
- NULL,
- DS_CF->participants->version,
- (struct tl_ds_vector *)DS_CF->participants->participants,
- NULL,
- DS_CF->chat_photo,
- DS_CF->participants->admin_id,
- NULL, NULL,
- C->flags & 0xffff
- );
-
- if (DS_MCF->users) {
- int i;
- for (i = 0; i < DS_LVAL (DS_MCF->users->cnt); i++) {
- tglf_fetch_alloc_user_new (TLS, DS_MCF->users->data[i]);
- }
- }
-
- if (DS_MCF->chats) {
- int i;
- for (i = 0; i < DS_LVAL (DS_MCF->chats->cnt); i++) {
- tglf_fetch_alloc_chat_new (TLS, DS_MCF->chats->data[i]);
- }
- }
-
- if (DS_CF->bot_info) {
- int n = DS_LVAL (DS_CF->bot_info->cnt);
- int i;
- for (i = 0; i < n; i++) {
- struct tl_ds_bot_info *DS_BI = DS_CF->bot_info->data[i];
-
- tgl_peer_t *P = tgl_peer_get (TLS, TGL_MK_USER (DS_LVAL (DS_BI->user_id)));
- if (P && (P->flags & TGLCF_CREATED)) {
- bl_do_user_new (TLS, tgl_get_peer_id (P->id),
- NULL,
- NULL, 0,
- NULL, 0,
- NULL, 0,
- NULL, 0,
- NULL,
- NULL, 0, NULL, 0,
- NULL,
- NULL, NULL,
- DS_BI,
- TGL_FLAGS_UNCHANGED
- );
- }
- }
- }
-}
-
-void tglf_fetch_photo_size_new (struct tgl_state *TLS, struct tgl_photo_size *S, struct tl_ds_photo_size *DS_PS) {
- memset (S, 0, sizeof (*S));
-
- S->type = DS_STR_DUP (DS_PS->type);
- S->w = DS_LVAL (DS_PS->w);
- S->h = DS_LVAL (DS_PS->h);
- S->size = DS_LVAL (DS_PS->size);
- if (DS_PS->bytes) {
- S->size = DS_PS->bytes->len;
- }
-
- tglf_fetch_file_location_new (TLS, &S->loc, DS_PS->location);
-}
-
-void tglf_fetch_geo_new (struct tgl_state *TLS, struct tgl_geo *G, struct tl_ds_geo_point *DS_GP) {
- G->longitude = DS_LVAL (DS_GP->longitude);
- G->latitude = DS_LVAL (DS_GP->latitude);
-}
-
-struct tgl_photo *tglf_fetch_alloc_photo_new (struct tgl_state *TLS, struct tl_ds_photo *DS_P) {
- if (!DS_P) { return NULL; }
- if (DS_P->magic == CODE_photo_empty) { return NULL; }
-
- struct tgl_photo *P = tgl_photo_get (TLS, DS_LVAL (DS_P->id));
- if (P) {
- P->refcnt ++;
- return P;
- }
-
-
- P = talloc0 (sizeof (*P));
- P->id = DS_LVAL (DS_P->id);
- P->refcnt = 1;
-
- tgl_photo_insert (TLS, P);
-
- P->access_hash = DS_LVAL (DS_P->access_hash);
- P->user_id = DS_LVAL (DS_P->user_id);
- P->date = DS_LVAL (DS_P->date);
- P->caption = NULL;//DS_STR_DUP (DS_P->caption);
- tglf_fetch_geo_new (TLS, &P->geo, DS_P->geo);
-
- P->sizes_num = DS_LVAL (DS_P->sizes->cnt);
- P->sizes = talloc (sizeof (struct tgl_photo_size) * P->sizes_num);
- int i;
- for (i = 0; i < P->sizes_num; i++) {
- tglf_fetch_photo_size_new (TLS, &P->sizes[i], DS_P->sizes->data[i]);
- }
-
- return P;
-}
-
-struct tgl_document *tglf_fetch_alloc_video_new (struct tgl_state *TLS, struct tl_ds_video *DS_V) {
- if (!DS_V) { return NULL; }
-
- if (DS_V->magic == CODE_video_empty) { return NULL; }
-
- struct tgl_document *D = tgl_document_get (TLS, DS_LVAL (DS_V->id));
- if (D) {
- D->refcnt ++;
- return D;
- }
-
-
- D = talloc0 (sizeof (*D));
- D->id = DS_LVAL (DS_V->id);
- D->refcnt = 1;
-
- tgl_document_insert (TLS, D);
-
- D->flags = TGLDF_VIDEO;
-
- D->access_hash = DS_LVAL (DS_V->access_hash);
- D->user_id = DS_LVAL (DS_V->user_id);
- D->date = DS_LVAL (DS_V->date);
- D->caption = NULL;//DS_STR_DUP (DS_V->caption);
- D->duration = DS_LVAL (DS_V->duration);
- D->mime_type = tstrdup ("video/");//DS_STR_DUP (DS_V->mime_type);
- D->size = DS_LVAL (DS_V->size);
- tglf_fetch_photo_size_new (TLS, &D->thumb, DS_V->thumb);
-
- D->dc_id = DS_LVAL (DS_V->dc_id);
- D->w = DS_LVAL (DS_V->w);
- D->h = DS_LVAL (DS_V->h);
- return D;
-}
-
-struct tgl_document *tglf_fetch_alloc_audio_new (struct tgl_state *TLS, struct tl_ds_audio *DS_A) {
- if (!DS_A) { return NULL; }
-
- if (DS_A->magic == CODE_audio_empty) { return NULL; }
-
- struct tgl_document *D = tgl_document_get (TLS, DS_LVAL (DS_A->id));
- if (D) {
- D->refcnt ++;
- return D;
- }
-
-
- D = talloc0 (sizeof (*D));
- D->id = DS_LVAL (DS_A->id);
- D->refcnt = 1;
-
- tgl_document_insert (TLS, D);
-
- D->flags = TGLDF_AUDIO;
-
- D->access_hash = DS_LVAL (DS_A->access_hash);
- D->user_id = DS_LVAL (DS_A->user_id);
- D->date = DS_LVAL (DS_A->date);
- D->duration = DS_LVAL (DS_A->duration);
- D->mime_type = DS_STR_DUP (DS_A->mime_type);
- D->size = DS_LVAL (DS_A->size);
- D->dc_id = DS_LVAL (DS_A->dc_id);
-
- return D;
-}
-
-void tglf_fetch_document_attribute_new (struct tgl_state *TLS, struct tgl_document *D, struct tl_ds_document_attribute *DS_DA) {
- switch (DS_DA->magic) {
- case CODE_document_attribute_image_size:
- D->flags |= TGLDF_IMAGE;
- D->w = DS_LVAL (DS_DA->w);
- D->h = DS_LVAL (DS_DA->h);
- return;
- case CODE_document_attribute_animated:
- D->flags |= TGLDF_ANIMATED;
- return;
- case CODE_document_attribute_sticker:
- case CODE_document_attribute_sticker_l28:
- D->flags |= TGLDF_STICKER;
- return;
- case CODE_document_attribute_video:
- D->flags |= TGLDF_VIDEO;
- D->duration = DS_LVAL (DS_DA->duration);
- D->w = DS_LVAL (DS_DA->w);
- D->h = DS_LVAL (DS_DA->h);
- return;
- case CODE_document_attribute_audio:
- D->flags |= TGLDF_AUDIO;
- D->duration = DS_LVAL (DS_DA->duration);
- return;
- case CODE_document_attribute_filename:
- D->caption = DS_STR_DUP (DS_DA->file_name);
- return;
- default:
- assert (0);
- }
-}
-
-struct tgl_document *tglf_fetch_alloc_document_new (struct tgl_state *TLS, struct tl_ds_document *DS_D) {
- if (!DS_D) { return NULL; }
-
- if (DS_D->magic == CODE_document_empty) { return NULL; }
-
- struct tgl_document *D = tgl_document_get (TLS, DS_LVAL (DS_D->id));
- if (D) {
- D->refcnt ++;
- return D;
- }
-
-
- D = talloc0 (sizeof (*D));
- D->id = DS_LVAL (DS_D->id);
- D->refcnt = 1;
-
- tgl_document_insert (TLS, D);
-
- D->access_hash = DS_LVAL (DS_D->access_hash);
- D->user_id = DS_LVAL (DS_D->user_id);
- D->date = DS_LVAL (DS_D->date);
- D->caption = DS_STR_DUP (DS_D->file_name);
- D->mime_type = DS_STR_DUP (DS_D->mime_type);
- D->size = DS_LVAL (DS_D->size);
- D->dc_id = DS_LVAL (DS_D->dc_id);
-
- tglf_fetch_photo_size_new (TLS, &D->thumb, DS_D->thumb);
-
- if (DS_D->attributes) {
- int i;
- for (i = 0; i < DS_LVAL (DS_D->attributes->cnt); i++) {
- tglf_fetch_document_attribute_new (TLS, D, DS_D->attributes->data[i]);
- }
- }
- return D;
-}
-
-struct tgl_webpage *tglf_fetch_alloc_webpage_new (struct tgl_state *TLS, struct tl_ds_web_page *DS_W) {
- if (!DS_W) { return NULL; }
-
- struct tgl_webpage *W = tgl_webpage_get (TLS, DS_LVAL (DS_W->id));
- if (W) {
- W->refcnt ++;
- } else {
- W = talloc0 (sizeof (*W));
- W->id = DS_LVAL (DS_W->id);
- W->refcnt = 1;
-
- tgl_webpage_insert (TLS, W);
- }
-
- if (!W->url) {
- W->url = DS_STR_DUP (DS_W->url);
- }
-
- if (!W->display_url) {
- W->display_url = DS_STR_DUP (DS_W->display_url);
- }
-
- if (!W->type) {
- W->type = DS_STR_DUP (DS_W->type);
- }
-
- if (!W->site_name) {
- W->site_name = DS_STR_DUP (DS_W->site_name);
- }
-
- if (!W->title) {
- W->title = DS_STR_DUP (DS_W->title);
- }
-
- if (!W->photo) {
- W->photo = tglf_fetch_alloc_photo_new (TLS, DS_W->photo);
- }
-
- if (!W->description) {
- W->description = DS_STR_DUP (DS_W->description);
- }
-
- if (!W->embed_url) {
- W->embed_url = DS_STR_DUP (DS_W->embed_url);
- }
-
- if (!W->embed_type) {
- W->embed_type = DS_STR_DUP (DS_W->embed_type);
- }
-
- W->embed_width = DS_LVAL (DS_W->embed_width);
-
- W->embed_height = DS_LVAL (DS_W->embed_height);
-
- W->duration = DS_LVAL (DS_W->duration);
-
- if (!W->author) {
- W->author = DS_STR_DUP (DS_W->author);
- }
- return W;
-}
-
-void tglf_fetch_message_action_new (struct tgl_state *TLS, struct tgl_message_action *M, struct tl_ds_message_action *DS_MA) {
- if (!DS_MA) { return; }
- memset (M, 0, sizeof (*M));
-
- switch (DS_MA->magic) {
- case CODE_message_action_empty:
- M->type = tgl_message_action_none;
- break;
- case CODE_message_action_geo_chat_create:
- {
- M->type = tgl_message_action_geo_chat_create;
- assert (0);
- }
- break;
- case CODE_message_action_geo_chat_checkin:
- M->type = tgl_message_action_geo_chat_checkin;
- break;
- case CODE_message_action_chat_create:
- {
- M->type = tgl_message_action_chat_create;
- M->title = DS_STR_DUP (DS_MA->title);
-
- M->user_num = DS_LVAL (DS_MA->users->cnt);
- M->users = talloc (M->user_num * 4);
- int i;
- for (i = 0; i < M->user_num; i++) {
- M->users[i] = DS_LVAL (DS_MA->users->data[i]);
- }
- }
- break;
- case CODE_message_action_chat_edit_title:
- M->type = tgl_message_action_chat_edit_title;
- M->new_title = DS_STR_DUP (DS_MA->title);
- break;
- case CODE_message_action_chat_edit_photo:
- M->type = tgl_message_action_chat_edit_photo;
- M->photo = tglf_fetch_alloc_photo_new (TLS, DS_MA->photo);
- break;
- case CODE_message_action_chat_delete_photo:
- M->type = tgl_message_action_chat_delete_photo;
- break;
- case CODE_message_action_chat_add_user:
- M->type = tgl_message_action_chat_add_user;
- M->user = DS_LVAL (DS_MA->user_id);
- break;
- case CODE_message_action_chat_delete_user:
- M->type = tgl_message_action_chat_delete_user;
- M->user = DS_LVAL (DS_MA->user_id);
- break;
- case CODE_message_action_chat_joined_by_link:
- M->type = tgl_message_action_chat_add_user_by_link;
- M->user = DS_LVAL (DS_MA->inviter_id);
- break;
- default:
- assert (0);
- }
-}
-
-void tglf_fetch_message_short_new (struct tgl_state *TLS, struct tgl_message *M, struct tl_ds_updates *DS_U) {
- tgl_peer_t *P = tgl_peer_get (TLS, TGL_MK_USER (DS_LVAL (DS_U->user_id)));
- if (!P || !(P->flags & TGLPF_CREATED)) {
- tgl_do_get_difference (TLS, 0, 0, 0);
- return;
- }
-
- int flags = M->flags & 0xffff;
-
- if (M->flags & TGLMF_PENDING) {
- M->flags ^= TGLMF_PENDING;
- }
-
- if (!(flags & TGLMF_CREATED)) {
- flags |= TGLMF_CREATE | TGLMF_CREATED;
- }
-
- int f = DS_LVAL (DS_U->flags);
-
- if (f & 1) {
- flags |= TGLMF_UNREAD;
- }
- if (f & 2) {
- flags |= TGLMF_OUT;
- }
- if (f & 16) {
- flags |= TGLMF_MENTION;
- }
-
- struct tl_ds_message_media A;
- A.magic = CODE_message_media_empty;
- int type = TGL_PEER_USER;
-
- bl_do_create_message_new (TLS, DS_LVAL (DS_U->id),
- (f & 2) ? &TLS->our_id : DS_U->user_id,
- &type, (f & 2) ? DS_U->user_id : &TLS->our_id,
- DS_U->fwd_from_id,
- DS_U->fwd_date,
- DS_U->date,
- DS_STR (DS_U->message),
- &A,
- NULL,
- DS_U->reply_to_msg_id,
- NULL,
- flags
- );
-}
-
-void tglf_fetch_message_short_chat_new (struct tgl_state *TLS, struct tgl_message *M, struct tl_ds_updates *DS_U) {
- tgl_peer_t *P = tgl_peer_get (TLS, TGL_MK_USER (DS_LVAL (DS_U->from_id)));
- if (!P || !(P->flags & TGLPF_CREATED)) {
- tgl_do_get_difference (TLS, 0, 0, 0);
- return;
- }
- P = tgl_peer_get (TLS, TGL_MK_CHAT (DS_LVAL (DS_U->chat_id)));
- if (!P || !(P->flags & TGLPF_CREATED)) {
- tgl_do_get_difference (TLS, 0, 0, 0);
- return;
- }
-
- int flags = M->flags & 0xffff;
-
- if (M->flags & TGLMF_PENDING) {
- M->flags ^= TGLMF_PENDING;
- }
-
- if (!(flags & TGLMF_CREATED)) {
- flags |= TGLMF_CREATE | TGLMF_CREATED;
- }
-
- int f = DS_LVAL (DS_U->flags);
-
- if (f & 1) {
- flags |= TGLMF_UNREAD;
- }
- if (f & 2) {
- flags |= TGLMF_OUT;
- }
- if (f & 16) {
- flags |= TGLMF_MENTION;
- }
-
- struct tl_ds_message_media A;
- A.magic = CODE_message_media_empty;
-
- int type = TGL_PEER_CHAT;
- bl_do_create_message_new (TLS, DS_LVAL (DS_U->id),
- DS_U->from_id,
- &type, DS_U->chat_id,
- DS_U->fwd_from_id,
- DS_U->fwd_date,
- DS_U->date,
- DS_STR (DS_U->message),
- &A,
- NULL,
- DS_U->reply_to_msg_id,
- NULL,
- flags
- );
-}
-
-
-void tglf_fetch_message_media_new (struct tgl_state *TLS, struct tgl_message_media *M, struct tl_ds_message_media *DS_MM) {
- if (!DS_MM) { return; }
- memset (M, 0, sizeof (*M));
- switch (DS_MM->magic) {
- case CODE_message_media_empty:
- M->type = tgl_message_media_none;
- break;
- case CODE_message_media_photo:
- case CODE_message_media_photo_l27:
- M->type = tgl_message_media_photo;
- M->photo = tglf_fetch_alloc_photo_new (TLS, DS_MM->photo);
- M->caption = DS_STR_DUP (DS_MM->caption);
- break;
- case CODE_message_media_video:
- case CODE_message_media_video_l27:
- M->type = tgl_message_media_video;
- M->document = tglf_fetch_alloc_video_new (TLS, DS_MM->video);
- M->caption = DS_STR_DUP (DS_MM->caption);
- break;
- case CODE_message_media_audio:
- M->type = tgl_message_media_audio;
- M->document = tglf_fetch_alloc_audio_new (TLS, DS_MM->audio);
- break;
- case CODE_message_media_document:
- M->type = tgl_message_media_document;
- M->document = tglf_fetch_alloc_document_new (TLS, DS_MM->document);
- break;
- case CODE_message_media_geo:
- M->type = tgl_message_media_geo;
- tglf_fetch_geo_new (TLS, &M->geo, DS_MM->geo);
- break;
- case CODE_message_media_contact:
- M->type = tgl_message_media_contact;
- M->phone = DS_STR_DUP (DS_MM->phone_number);
- M->first_name = DS_STR_DUP (DS_MM->first_name);
- M->last_name = DS_STR_DUP (DS_MM->last_name);
- M->user_id = DS_LVAL (DS_MM->user_id);
- break;
- //case CODE_message_media_unsupported:
- //case CODE_message_media_unsupported_l22:
- // M->type = tgl_message_media_unsupported;
- // break;
- case CODE_message_media_web_page:
- M->type = tgl_message_media_webpage;
- M->webpage = tglf_fetch_alloc_webpage_new (TLS, DS_MM->webpage);
- break;
- case CODE_message_media_venue:
- M->type = tgl_message_media_venue;
- tglf_fetch_geo_new (TLS, &M->venue.geo, DS_MM->geo);
- M->venue.title = DS_STR_DUP (DS_MM->title);
- M->venue.address = DS_STR_DUP (DS_MM->address);
- M->venue.provider = DS_STR_DUP (DS_MM->provider);
- M->venue.venue_id = DS_STR_DUP (DS_MM->venue_id);
- break;
- default:
- assert (0);
- }
-}
-
-void tglf_fetch_message_media_encrypted_new (struct tgl_state *TLS, struct tgl_message_media *M, struct tl_ds_decrypted_message_media *DS_DMM) {
- if (!DS_DMM) { return; }
-
- memset (M, 0, sizeof (*M));
- switch (DS_DMM->magic) {
- case CODE_decrypted_message_media_empty:
- M->type = tgl_message_media_none;
- //M->type = CODE_message_media_empty;
- break;
- case CODE_decrypted_message_media_photo:
- case CODE_decrypted_message_media_video:
- case CODE_decrypted_message_media_video_l12:
- case CODE_decrypted_message_media_document:
- case CODE_decrypted_message_media_audio:
- //M->type = CODE_decrypted_message_media_video;
- M->type = tgl_message_media_document_encr;
-
- M->encr_document = talloc0 (sizeof (*M->encr_document));
-
- switch (DS_DMM->magic) {
- case CODE_decrypted_message_media_photo:
- M->encr_document->flags = TGLDF_IMAGE;
- break;
- case CODE_decrypted_message_media_video:
- case CODE_decrypted_message_media_video_l12:
- M->encr_document->flags = TGLDF_VIDEO;
- break;
- case CODE_decrypted_message_media_document:
- //M->encr_document->flags = TGLDF_DOCUMENT;
- break;
- case CODE_decrypted_message_media_audio:
- M->encr_document->flags = TGLDF_AUDIO;
- break;
- }
-
- M->encr_document->w = DS_LVAL (DS_DMM->w);
- M->encr_document->h = DS_LVAL (DS_DMM->h);
- M->encr_document->size = DS_LVAL (DS_DMM->size);
- M->encr_document->duration = DS_LVAL (DS_DMM->duration);
- M->encr_document->mime_type = DS_STR_DUP (DS_DMM->mime_type);
-
- M->encr_document->key = talloc (32);
- str_to_32 (M->encr_document->key, DS_STR (DS_DMM->key));
- M->encr_document->iv = talloc (32);
- str_to_32 (M->encr_document->iv, DS_STR (DS_DMM->iv));
- break;
- case CODE_decrypted_message_media_geo_point:
- M->type = tgl_message_media_geo;
- M->geo.latitude = DS_LVAL (DS_DMM->latitude);
- M->geo.longitude = DS_LVAL (DS_DMM->longitude);
- break;
- case CODE_decrypted_message_media_contact:
- M->type = tgl_message_media_contact;
- M->phone = DS_STR_DUP (DS_DMM->phone_number);
- M->first_name = DS_STR_DUP (DS_DMM->first_name);
- M->last_name = DS_STR_DUP (DS_DMM->last_name);
- M->user_id = DS_LVAL (DS_DMM->user_id);
- break;
- default:
- assert (0);
- }
-}
-
-void tglf_fetch_message_action_encrypted_new (struct tgl_state *TLS, struct tgl_message_action *M, struct tl_ds_decrypted_message_action *DS_DMA) {
- if (!DS_DMA) { return; }
-
- switch (DS_DMA->magic) {
- case CODE_decrypted_message_action_set_message_t_t_l:
- M->type = tgl_message_action_set_message_ttl;
- M->ttl = DS_LVAL (DS_DMA->ttl_seconds);
- break;
- case CODE_decrypted_message_action_read_messages:
- M->type = tgl_message_action_read_messages;
- {
- M->read_cnt = DS_LVAL (DS_DMA->random_ids->cnt);
-
- int i;
- for (i = 0; i < M->read_cnt; i++) {
- struct tgl_message *N = tgl_message_get (TLS, DS_LVAL (DS_DMA->random_ids->data[i]));
- if (N) {
- N->flags &= ~TGLMF_UNREAD;
- }
- }
- }
- break;
- case CODE_decrypted_message_action_delete_messages:
- M->type = tgl_message_action_delete_messages;
- break;
- case CODE_decrypted_message_action_screenshot_messages:
- M->type = tgl_message_action_screenshot_messages;
- {
- M->screenshot_cnt = DS_LVAL (DS_DMA->random_ids->cnt);
- }
- break;
- case CODE_decrypted_message_action_notify_layer:
- M->type = tgl_message_action_notify_layer;
- M->layer = DS_LVAL (DS_DMA->layer);
- break;
- case CODE_decrypted_message_action_flush_history:
- M->type = tgl_message_action_flush_history;
- break;
- case CODE_decrypted_message_action_typing:
- M->type = tgl_message_action_typing;
- M->typing = tglf_fetch_typing_new (DS_DMA->action);
- break;
- case CODE_decrypted_message_action_resend:
- M->type = tgl_message_action_resend;
- M->start_seq_no = DS_LVAL (DS_DMA->start_seq_no);
- M->end_seq_no = DS_LVAL (DS_DMA->end_seq_no);
- break;
- case CODE_decrypted_message_action_noop:
- M->type = tgl_message_action_noop;
- break;
- case CODE_decrypted_message_action_request_key:
- M->type = tgl_message_action_request_key;
-
- M->exchange_id = DS_LVAL (DS_DMA->exchange_id);
- M->g_a = talloc (256);
- str_to_256 (M->g_a, DS_STR (DS_DMA->g_a));
- break;
- case CODE_decrypted_message_action_accept_key:
- M->type = tgl_message_action_accept_key;
-
- M->exchange_id = DS_LVAL (DS_DMA->exchange_id);
- M->g_a = talloc (256);
- str_to_256 (M->g_a, DS_STR (DS_DMA->g_b));
- M->key_fingerprint = DS_LVAL (DS_DMA->key_fingerprint);
- break;
- case CODE_decrypted_message_action_commit_key:
- M->type = tgl_message_action_commit_key;
-
- M->exchange_id = DS_LVAL (DS_DMA->exchange_id);
- M->key_fingerprint = DS_LVAL (DS_DMA->key_fingerprint);
- break;
- case CODE_decrypted_message_action_abort_key:
- M->type = tgl_message_action_abort_key;
-
- M->exchange_id = DS_LVAL (DS_DMA->exchange_id);
- break;
- default:
- assert (0);
- }
-}
-
-tgl_peer_id_t tglf_fetch_peer_id_new (struct tgl_state *TLS, struct tl_ds_peer *DS_P) {
- if (DS_P->magic == CODE_peer_user) {
- return TGL_MK_USER (DS_LVAL (DS_P->user_id));
- } else {
- return TGL_MK_CHAT (DS_LVAL (DS_P->chat_id));
- }
-}
-
-void tglf_fetch_message_new (struct tgl_state *TLS, struct tgl_message *M, struct tl_ds_message *DS_M) {
- if (!DS_M || DS_M->magic == CODE_message_empty) { return; }
-
- assert (M->id == DS_LVAL (DS_M->id));
-
- tgl_peer_id_t to_id = tglf_fetch_peer_id_new (TLS, DS_M->to_id);
- {
- tgl_peer_t *P = tgl_peer_get (TLS, to_id);
- if (!P || !(P->flags & TGLPF_CREATED)) {
- tgl_do_get_difference (TLS, 0, 0, 0);
- return;
- }
- P = tgl_peer_get (TLS, TGL_MK_USER (DS_LVAL (DS_M->from_id)));
- if (!P || !(P->flags & TGLPF_CREATED)) {
- tgl_do_get_difference (TLS, 0, 0, 0);
- return;
- }
- }
-
- int new = !(M->flags & TGLMF_CREATED);
-
- if (new) {
- int peer_id = tgl_get_peer_id (to_id);
- int peer_type = tgl_get_peer_type (to_id);
-
- int flags = 0;
- if (DS_LVAL (DS_M->flags) & 1) {
- flags |= TGLMF_UNREAD;
- }
- if (DS_LVAL (DS_M->flags) & 2) {
- flags |= TGLMF_OUT;
- }
- if (DS_LVAL (DS_M->flags) & 16) {
- flags |= TGLMF_MENTION;
- }
-
- bl_do_create_message_new (TLS, DS_LVAL (DS_M->id),
- DS_M->from_id,
- &peer_type, &peer_id,
- DS_M->fwd_from_id, DS_M->fwd_date,
- DS_M->date,
- DS_STR (DS_M->message),
- DS_M->media,
- DS_M->action,
- DS_M->reply_to_msg_id,
- DS_M->reply_markup,
- flags | TGLMF_CREATE | TGLMF_CREATED
- );
- }
-}
-
-static int *decr_ptr;
-static int *decr_end;
-
-static int decrypt_encrypted_message (struct tgl_secret_chat *E) {
- int *msg_key = decr_ptr;
- decr_ptr += 4;
- assert (decr_ptr < decr_end);
- static unsigned char sha1a_buffer[20];
- static unsigned char sha1b_buffer[20];
- static unsigned char sha1c_buffer[20];
- static unsigned char sha1d_buffer[20];
-
- static unsigned char buf[64];
-
- int *e_key = E->exchange_state != tgl_sce_committed ? E->key : E->exchange_key;
-
- memcpy (buf, msg_key, 16);
- memcpy (buf + 16, e_key, 32);
- sha1 (buf, 48, sha1a_buffer);
-
- memcpy (buf, e_key + 8, 16);
- memcpy (buf + 16, msg_key, 16);
- memcpy (buf + 32, e_key + 12, 16);
- sha1 (buf, 48, sha1b_buffer);
-
- memcpy (buf, e_key + 16, 32);
- memcpy (buf + 32, msg_key, 16);
- sha1 (buf, 48, sha1c_buffer);
-
- memcpy (buf, msg_key, 16);
- memcpy (buf + 16, e_key + 24, 32);
- sha1 (buf, 48, sha1d_buffer);
-
- static unsigned char key[32];
- memcpy (key, sha1a_buffer + 0, 8);
- memcpy (key + 8, sha1b_buffer + 8, 12);
- memcpy (key + 20, sha1c_buffer + 4, 12);
-
- static unsigned char iv[32];
- memcpy (iv, sha1a_buffer + 8, 12);
- memcpy (iv + 12, sha1b_buffer + 0, 8);
- memcpy (iv + 20, sha1c_buffer + 16, 4);
- memcpy (iv + 24, sha1d_buffer + 0, 8);
-
- AES_KEY aes_key;
- AES_set_decrypt_key (key, 256, &aes_key);
- AES_ige_encrypt ((void *)decr_ptr, (void *)decr_ptr, 4 * (decr_end - decr_ptr), &aes_key, iv, 0);
- memset (&aes_key, 0, sizeof (aes_key));
-
- int x = *(decr_ptr);
- if (x < 0 || (x & 3)) {
- return -1;
- }
- assert (x >= 0 && !(x & 3));
- sha1 ((void *)decr_ptr, 4 + x, sha1a_buffer);
-
- if (memcmp (sha1a_buffer + 4, msg_key, 16)) {
- return -1;
- }
- return 0;
-}
-
-void tglf_fetch_encrypted_message_new (struct tgl_state *TLS, struct tgl_message *M, struct tl_ds_encrypted_message *DS_EM) {
- if (!DS_EM) { return; }
-
- int new = !(M->flags & TGLMF_CREATED);
- if (!new) {
- return;
- }
-
- tgl_peer_t *P = tgl_peer_get (TLS, TGL_MK_ENCR_CHAT (DS_LVAL (DS_EM->chat_id)));
- if (!P || P->encr_chat.state != sc_ok) {
- vlogprintf (E_WARNING, "Encrypted message to unknown chat. Dropping\n");
- return;
- }
-
- decr_ptr = (void *)DS_EM->bytes->data;
- decr_end = decr_ptr + (DS_EM->bytes->len / 4);
-
- if (P->encr_chat.exchange_state == tgl_sce_committed && P->encr_chat.key_fingerprint == *(long long *)decr_ptr) {
- tgl_do_confirm_exchange (TLS, (void *)P, 0);
- assert (P->encr_chat.exchange_state == tgl_sce_none);
- }
-
- long long key_fingerprint = P->encr_chat.exchange_state != tgl_sce_committed ? P->encr_chat.key_fingerprint : P->encr_chat.exchange_key_fingerprint;
- if (*(long long *)decr_ptr != key_fingerprint) {
- vlogprintf (E_WARNING, "Encrypted message with bad fingerprint to chat %s\n", P->print_name);
- return;
- }
-
- decr_ptr += 2;
-
- if (decrypt_encrypted_message (&P->encr_chat) < 0) {
- vlogprintf (E_WARNING, "can not decrypt message\n");
- return;
- }
-
- int *save_in_ptr = in_ptr;
- int *save_in_end = in_end;
-
- in_ptr = decr_ptr;
- int ll = *in_ptr;
- in_end = in_ptr + ll / 4 + 1;
- assert (fetch_int () == ll);
-
- if (skip_type_decrypted_message_layer (TYPE_TO_PARAM (decrypted_message_layer)) < 0 || in_ptr != in_end) {
- vlogprintf (E_WARNING, "can not fetch message\n");
- in_ptr = save_in_ptr;
- in_end = save_in_end;
- return;
- }
-
- in_ptr = decr_ptr;
- assert (fetch_int () == ll);
-
- struct tl_ds_decrypted_message_layer *DS_DML = fetch_ds_type_decrypted_message_layer (TYPE_TO_PARAM (decrypted_message_layer));
- assert (DS_DML);
-
- in_ptr = save_in_ptr;
- in_end = save_in_end;
-
- //bl_do_encr_chat_set_layer (TLS, (void *)P, DS_LVAL (DS_DML->layer));
- bl_do_encr_chat_new (TLS, tgl_get_peer_id (P->id),
- NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL,
- NULL, DS_DML->layer, NULL, NULL, NULL, NULL,
- TGL_FLAGS_UNCHANGED
- );
-
- int in_seq_no = DS_LVAL (DS_DML->out_seq_no);
- int out_seq_no = DS_LVAL (DS_DML->in_seq_no);
-
- if (in_seq_no / 2 != P->encr_chat.in_seq_no) {
- vlogprintf (E_WARNING, "Hole in seq in secret chat. in_seq_no = %d, expect_seq_no = %d\n", in_seq_no / 2, P->encr_chat.in_seq_no);
- free_ds_type_decrypted_message_layer (DS_DML, TYPE_TO_PARAM(decrypted_message_layer));
- return;
- }
-
- if ((in_seq_no & 1) != 1 - (P->encr_chat.admin_id == TLS->our_id) ||
- (out_seq_no & 1) != (P->encr_chat.admin_id == TLS->our_id)) {
- vlogprintf (E_WARNING, "Bad msg admin\n");
- free_ds_type_decrypted_message_layer (DS_DML, TYPE_TO_PARAM(decrypted_message_layer));
- return;
- }
- if (out_seq_no / 2 > P->encr_chat.out_seq_no) {
- vlogprintf (E_WARNING, "In seq no is bigger than our's out seq no (out_seq_no = %d, our_out_seq_no = %d). Drop\n", out_seq_no / 2, P->encr_chat.out_seq_no);
- free_ds_type_decrypted_message_layer (DS_DML, TYPE_TO_PARAM(decrypted_message_layer));
- return;
- }
- if (out_seq_no / 2 < P->encr_chat.last_in_seq_no) {
- vlogprintf (E_WARNING, "Clients in_seq_no decreased (out_seq_no = %d, last_out_seq_no = %d). Drop\n", out_seq_no / 2, P->encr_chat.last_in_seq_no);
- free_ds_type_decrypted_message_layer (DS_DML, TYPE_TO_PARAM(decrypted_message_layer));
- return;
- }
-
- struct tl_ds_decrypted_message *DS_DM = DS_DML->message;
- if (M->id != DS_LVAL (DS_DM->random_id)) {
- vlogprintf (E_ERROR, "Incorrect message: id = %"_PRINTF_INT64_"d, new_id = %"_PRINTF_INT64_"d\n", M->id, DS_LVAL (DS_DM->random_id));
- free_ds_type_decrypted_message_layer (DS_DML, TYPE_TO_PARAM(decrypted_message_layer));
- return;
- }
-
- int peer_type = TGL_PEER_ENCR_CHAT;
- int peer_id = tgl_get_peer_id (P->id);
-
- bl_do_create_message_encr_new (TLS, M->id, &P->encr_chat.user_id, &peer_type, &peer_id, DS_EM->date, DS_STR (DS_DM->message), DS_DM->media, DS_DM->action, DS_EM->file, TGLMF_CREATE | TGLMF_CREATED | TGLMF_ENCRYPTED);
-
- if (in_seq_no >= 0 && out_seq_no >= 0) {
- //bl_do_encr_chat_update_seq (TLS, (void *)P, in_seq_no / 2 + 1, out_seq_no / 2);
- in_seq_no = in_seq_no / 2 + 1;
- out_seq_no = out_seq_no / 2;
- bl_do_encr_chat_new (TLS, tgl_get_peer_id (P->id),
- NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL,
- NULL, NULL, &in_seq_no, &out_seq_no, NULL, NULL,
- TGL_FLAGS_UNCHANGED
- );
- assert (P->encr_chat.in_seq_no == in_seq_no);
- }
-
- free_ds_type_decrypted_message_layer (DS_DML, TYPE_TO_PARAM(decrypted_message_layer));
-}
-
-void tglf_fetch_encrypted_message_file_new (struct tgl_state *TLS, struct tgl_message_media *M, struct tl_ds_encrypted_file *DS_EF) {
- if (DS_EF->magic == CODE_encrypted_file_empty) {
- assert (M->type != tgl_message_media_document_encr);
- } else {
- assert (M->type == tgl_message_media_document_encr);
- assert (M->encr_document);
-
- M->encr_document->id = DS_LVAL (DS_EF->id);
- M->encr_document->access_hash = DS_LVAL (DS_EF->access_hash);
- if (!M->encr_document->size) {
- M->encr_document->size = DS_LVAL (DS_EF->size);
- }
- M->encr_document->dc_id = DS_LVAL (DS_EF->dc_id);
- M->encr_document->key_fingerprint = DS_LVAL (DS_EF->key_fingerprint);
- }
-}
-
-static int id_cmp (struct tgl_message *M1, struct tgl_message *M2) {
- if (M1->id < M2->id) { return -1; }
- else if (M1->id > M2->id) { return 1; }
- else { return 0; }
-}
-
-static void increase_peer_size (struct tgl_state *TLS) {
- if (TLS->peer_num == TLS->peer_size) {
- int new_size = TLS->peer_size ? 2 * TLS->peer_size : 10;
- int old_size = TLS->peer_size;
- if (old_size) {
- TLS->Peers = trealloc (TLS->Peers, old_size * sizeof (void *), new_size * sizeof (void *));
- } else {
- TLS->Peers = talloc (new_size * sizeof (void *));
- }
- TLS->peer_size = new_size;
- }
-}
-
-struct tgl_user *tglf_fetch_alloc_user_new (struct tgl_state *TLS, struct tl_ds_user *DS_U) {
- tgl_peer_t *U = tgl_peer_get (TLS, TGL_MK_USER (DS_LVAL (DS_U->id)));
- if (!U) {
- TLS->users_allocated ++;
- U = talloc0 (sizeof (*U));
- U->id = TGL_MK_USER (DS_LVAL (DS_U->id));
- TLS->peer_tree = tree_insert_peer (TLS->peer_tree, U, lrand48 ());
- increase_peer_size (TLS);
- TLS->Peers[TLS->peer_num ++] = U;
- }
- tglf_fetch_user_new (TLS, &U->user, DS_U);
- return &U->user;
-}
-
-struct tgl_secret_chat *tglf_fetch_alloc_encrypted_chat_new (struct tgl_state *TLS, struct tl_ds_encrypted_chat *DS_EC) {
- tgl_peer_t *U = tgl_peer_get (TLS, TGL_MK_ENCR_CHAT (DS_LVAL (DS_EC->id)));
- if (!U) {
- U = talloc0 (sizeof (*U));
- U->id = TGL_MK_ENCR_CHAT (DS_LVAL (DS_EC->id));
- TLS->encr_chats_allocated ++;
- TLS->peer_tree = tree_insert_peer (TLS->peer_tree, U, lrand48 ());
- increase_peer_size (TLS);
- TLS->Peers[TLS->peer_num ++] = U;
- }
- tglf_fetch_encrypted_chat_new (TLS, &U->encr_chat, DS_EC);
- return &U->encr_chat;
-}
-
-struct tgl_user *tglf_fetch_alloc_user_full_new (struct tgl_state *TLS, struct tl_ds_user_full *DS_U) {
- tgl_peer_t *U = tgl_peer_get (TLS, TGL_MK_USER (DS_LVAL (DS_U->user->id)));
- if (U) {
- tglf_fetch_user_full_new (TLS, &U->user, DS_U);
- return &U->user;
- } else {
- TLS->users_allocated ++;
- U = talloc0 (sizeof (*U));
- U->id = TGL_MK_USER (DS_LVAL (DS_U->user->id));
- TLS->peer_tree = tree_insert_peer (TLS->peer_tree, U, lrand48 ());
- tglf_fetch_user_full_new (TLS, &U->user, DS_U);
- increase_peer_size (TLS);
- TLS->Peers[TLS->peer_num ++] = U;
- return &U->user;
- }
-}
-
-struct tgl_message *tglf_fetch_alloc_message_new (struct tgl_state *TLS, struct tl_ds_message *DS_M) {
- struct tgl_message *M = tgl_message_get (TLS, DS_LVAL (DS_M->id));
-
- if (!M) {
- M = tglm_message_alloc (TLS, DS_LVAL (DS_M->id));
- }
- tglf_fetch_message_new (TLS, M, DS_M);
- return M;
-}
-
-struct tgl_message *tglf_fetch_alloc_encrypted_message_new (struct tgl_state *TLS, struct tl_ds_encrypted_message *DS_EM) {
- struct tgl_message *M = tgl_message_get (TLS, DS_LVAL (DS_EM->random_id));
-
- if (!M) {
- M = talloc0 (sizeof (*M));
- M->id = DS_LVAL (DS_EM->random_id);
- tglm_message_insert_tree (TLS, M);
- TLS->messages_allocated ++;
- assert (tgl_message_get (TLS, M->id) == M);
- }
- tglf_fetch_encrypted_message_new (TLS, M, DS_EM);
-
- if (M->flags & TGLMF_CREATED) {
- tgl_peer_t *_E = tgl_peer_get (TLS, M->to_id);
- assert (_E);
- struct tgl_secret_chat *E = &_E->encr_chat;
- if (M->action.type == tgl_message_action_request_key) {
- if (E->exchange_state == tgl_sce_none || (E->exchange_state == tgl_sce_requested && E->exchange_id > M->action.exchange_id )) {
- tgl_do_accept_exchange (TLS, E, M->action.exchange_id, M->action.g_a);
- } else {
- vlogprintf (E_WARNING, "Exchange: Incorrect state (received request, state = %d)\n", E->exchange_state);
- }
- }
- if (M->action.type == tgl_message_action_accept_key) {
- if (E->exchange_state == tgl_sce_requested && E->exchange_id == M->action.exchange_id) {
- tgl_do_commit_exchange (TLS, E, M->action.g_a);
- } else {
- vlogprintf (E_WARNING, "Exchange: Incorrect state (received accept, state = %d)\n", E->exchange_state);
- }
- }
- if (M->action.type == tgl_message_action_commit_key) {
- if (E->exchange_state == tgl_sce_accepted && E->exchange_id == M->action.exchange_id) {
- tgl_do_confirm_exchange (TLS, E, 1);
- } else {
- vlogprintf (E_WARNING, "Exchange: Incorrect state (received commit, state = %d)\n", E->exchange_state);
- }
- }
- if (M->action.type == tgl_message_action_abort_key) {
- if (E->exchange_state != tgl_sce_none && E->exchange_id == M->action.exchange_id) {
- tgl_do_abort_exchange (TLS, E);
- } else {
- vlogprintf (E_WARNING, "Exchange: Incorrect state (received abort, state = %d)\n", E->exchange_state);
- }
- }
- if (M->action.type == tgl_message_action_notify_layer) {
- bl_do_encr_chat_new (TLS, tgl_get_peer_id (E->id),
- NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL,
- NULL, &M->action.layer, NULL, NULL, NULL, NULL,
- TGL_FLAGS_UNCHANGED
- );
- }
- if (M->action.type == tgl_message_action_set_message_ttl) {
- //bl_do_encr_chat_set_ttl (TLS, E, M->action.ttl);
- bl_do_encr_chat_new (TLS, tgl_get_peer_id (E->id),
- NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL,
- &M->action.ttl, NULL, NULL, NULL, NULL, NULL,
- TGL_FLAGS_UNCHANGED
- );
- }
- }
- return M;
-}
-
-struct tgl_message *tglf_fetch_alloc_message_short_new (struct tgl_state *TLS, struct tl_ds_updates *DS_U) {
- int id = DS_LVAL (DS_U->id);
- struct tgl_message *M = tgl_message_get (TLS, id);
-
- if (!M) {
- M = talloc0 (sizeof (*M));
- M->id = id;
- tglm_message_insert_tree (TLS, M);
- TLS->messages_allocated ++;
- }
- tglf_fetch_message_short_new (TLS, M, DS_U);
- return M;
-}
-
-struct tgl_message *tglf_fetch_alloc_message_short_chat_new (struct tgl_state *TLS, struct tl_ds_updates *DS_U) {
- int id = DS_LVAL (DS_U->id);
- struct tgl_message *M = tgl_message_get (TLS, id);
-
- if (!M) {
- M = talloc0 (sizeof (*M));
- M->id = id;
- tglm_message_insert_tree (TLS, M);
- TLS->messages_allocated ++;
- }
- tglf_fetch_message_short_chat_new (TLS, M, DS_U);
- return M;
-}
-
-struct tgl_chat *tglf_fetch_alloc_chat_new (struct tgl_state *TLS, struct tl_ds_chat *DS_C) {
- tgl_peer_t *U = tgl_peer_get (TLS, TGL_MK_CHAT (DS_LVAL (DS_C->id)));
- if (!U) {
- TLS->chats_allocated ++;
- U = talloc0 (sizeof (*U));
- U->id = TGL_MK_CHAT (DS_LVAL (DS_C->id));
- TLS->peer_tree = tree_insert_peer (TLS->peer_tree, U, lrand48 ());
- increase_peer_size (TLS);
- TLS->Peers[TLS->peer_num ++] = U;
- }
- tglf_fetch_chat_new (TLS, &U->chat, DS_C);
- return &U->chat;
-}
-
-struct tgl_chat *tglf_fetch_alloc_chat_full_new (struct tgl_state *TLS, struct tl_ds_messages_chat_full *DS_MCF) {
- tgl_peer_t *U = tgl_peer_get (TLS, TGL_MK_CHAT (DS_LVAL (DS_MCF->full_chat->id)));
- if (U) {
- tglf_fetch_chat_full_new (TLS, &U->chat, DS_MCF);
- return &U->chat;
- } else {
- TLS->chats_allocated ++;
- U = talloc0 (sizeof (*U));
- U->id = TGL_MK_CHAT (DS_LVAL (DS_MCF->full_chat->id));
- TLS->peer_tree = tree_insert_peer (TLS->peer_tree, U, lrand48 ());
- tglf_fetch_chat_full_new (TLS, &U->chat, DS_MCF);
- increase_peer_size (TLS);
- TLS->Peers[TLS->peer_num ++] = U;
- return &U->chat;
- }
-}
-
-struct tgl_bot_info *tglf_fetch_alloc_bot_info (struct tgl_state *TLS, struct tl_ds_bot_info *DS_BI) {
- if (!DS_BI || DS_BI->magic == CODE_bot_info_empty) { return NULL; }
- struct tgl_bot_info *B = talloc (sizeof (*B));
- B->version = DS_LVAL (DS_BI->version);
- B->share_text = DS_STR_DUP (DS_BI->share_text);
- B->description = DS_STR_DUP (DS_BI->description);
-
- B->commands_num = DS_LVAL (DS_BI->commands->cnt);
- B->commands = talloc (sizeof (struct tgl_bot_command) * B->commands_num);
- int i;
- for (i = 0; i < B->commands_num; i++) {
- struct tl_ds_bot_command *BC = DS_BI->commands->data[i];
- B->commands[i].command = DS_STR_DUP (BC->command);
- B->commands[i].description = DS_STR_DUP (BC->description);
- }
- return B;
-}
-
-struct tgl_message_reply_markup *tglf_fetch_alloc_reply_markup (struct tgl_state *TLS, struct tgl_message *M, struct tl_ds_reply_markup *DS_RM) {
- if (!DS_RM) { return NULL; }
-
- struct tgl_message_reply_markup *R = talloc0 (sizeof (*R));
- R->flags = DS_LVAL (DS_RM->flags);
- R->refcnt = 1;
-
- R->rows = DS_RM->rows ? DS_LVAL (DS_RM->rows->cnt) : 0;
-
- int total = 0;
- R->row_start = talloc ((R->rows + 1) * 4);
- R->row_start[0] = 0;
- int i;
- for (i = 0; i < R->rows; i++) {
- struct tl_ds_keyboard_button_row *DS_K = DS_RM->rows->data[i];
- total += DS_LVAL (DS_K->buttons->cnt);
- R->row_start[i + 1] = total;
- }
- R->buttons = talloc (sizeof (void *) * total);
- int r = 0;
- for (i = 0; i < R->rows; i++) {
- struct tl_ds_keyboard_button_row *DS_K = DS_RM->rows->data[i];
- int j;
- for (j = 0; j < DS_LVAL (DS_K->buttons->cnt); j++) {
- struct tl_ds_keyboard_button *DS_KB = DS_K->buttons->data[j];
- R->buttons[r ++] = DS_STR_DUP (DS_KB->text);
- }
- }
- assert (r == total);
- return R;
-}
-/* }}} */
-
-void tglp_insert_encrypted_chat (struct tgl_state *TLS, tgl_peer_t *P) {
- TLS->encr_chats_allocated ++;
- TLS->peer_tree = tree_insert_peer (TLS->peer_tree, P, lrand48 ());
- increase_peer_size (TLS);
- TLS->Peers[TLS->peer_num ++] = P;
-}
-
-void tglp_insert_user (struct tgl_state *TLS, tgl_peer_t *P) {
- TLS->users_allocated ++;
- TLS->peer_tree = tree_insert_peer (TLS->peer_tree, P, lrand48 ());
- increase_peer_size (TLS);
- TLS->Peers[TLS->peer_num ++] = P;
-}
-
-void tglp_insert_chat (struct tgl_state *TLS, tgl_peer_t *P) {
- TLS->chats_allocated ++;
- TLS->peer_tree = tree_insert_peer (TLS->peer_tree, P, lrand48 ());
- increase_peer_size (TLS);
- TLS->Peers[TLS->peer_num ++] = P;
-}
-
-void tgl_insert_empty_user (struct tgl_state *TLS, int uid) {
- tgl_peer_id_t id = TGL_MK_USER (uid);
- if (tgl_peer_get (TLS, id)) { return; }
- tgl_peer_t *P = talloc0 (sizeof (*P));
- P->id = id;
- tglp_insert_user (TLS, P);
-}
-
-void tgl_insert_empty_chat (struct tgl_state *TLS, int cid) {
- tgl_peer_id_t id = TGL_MK_CHAT (cid);
- if (tgl_peer_get (TLS, id)) { return; }
- tgl_peer_t *P = talloc0 (sizeof (*P));
- P->id = id;
- tglp_insert_chat (TLS, P);
-}
-
-/* {{{ Free */
-
-void tgls_free_photo_size (struct tgl_state *TLS, struct tgl_photo_size *S) {
- tfree_str (S->type);
- if (S->data) {
- tfree (S->data, S->size);
- }
-}
-
-void tgls_free_photo (struct tgl_state *TLS, struct tgl_photo *P) {
- if (--P->refcnt) {
- assert (P->refcnt > 0);
- return;
- }
- if (P->caption) { tfree_str (P->caption); }
- if (P->sizes) {
- int i;
- for (i = 0; i < P->sizes_num; i++) {
- tgls_free_photo_size (TLS, &P->sizes[i]);
- }
- tfree (P->sizes, sizeof (struct tgl_photo_size) * P->sizes_num);
- }
- TLS->photo_tree = tree_delete_photo (TLS->photo_tree, P);
- tfree (P, sizeof (*P));
-}
-
-void tgls_free_document (struct tgl_state *TLS, struct tgl_document *D) {
- if (--D->refcnt) {
- assert (D->refcnt);
- return;
- }
- if (D->mime_type) { tfree_str (D->mime_type);}
- if (D->caption) {tfree_str (D->caption);}
- tgls_free_photo_size (TLS, &D->thumb);
-
- TLS->document_tree = tree_delete_document (TLS->document_tree, D);
- tfree (D, sizeof (*D));
-}
-
-void tgls_free_webpage (struct tgl_state *TLS, struct tgl_webpage *W) {
- if (--W->refcnt) {
- assert (W->refcnt);
- return;
- }
- if (W->url) { tfree_str (W->url); }
- if (W->display_url) { tfree_str (W->display_url); }
- if (W->title) { tfree_str (W->title); }
- if (W->site_name) { tfree_str (W->site_name); }
- if (W->type) { tfree_str (W->type); }
- if (W->description) { tfree_str (W->description); }
- if (W->photo) { tgls_free_photo (TLS, W->photo); }
- if (W->embed_url) { tfree_str (W->embed_url); }
- if (W->embed_type) { tfree_str (W->embed_type); }
- if (W->author) { tfree_str (W->author); }
-
- TLS->webpage_tree = tree_delete_webpage (TLS->webpage_tree, W);
- tfree (W, sizeof (*W));
-}
-
-void tgls_free_message_media (struct tgl_state *TLS, struct tgl_message_media *M) {
- switch (M->type) {
- case tgl_message_media_none:
- case tgl_message_media_geo:
- return;
- case tgl_message_media_photo:
- tgls_free_photo (TLS, M->photo);
- M->photo = NULL;
- return;
- case tgl_message_media_contact:
- tfree_str (M->phone);
- tfree_str (M->first_name);
- tfree_str (M->last_name);
- return;
- case tgl_message_media_document:
- case tgl_message_media_video:
- case tgl_message_media_audio:
- tgls_free_document (TLS, M->document);
- return;
- case tgl_message_media_unsupported:
- tfree (M->data, M->data_size);
- return;
- case tgl_message_media_document_encr:
- tfree_secure (M->encr_document->key, 32);
- tfree_secure (M->encr_document->iv, 32);
- tfree (M->encr_document, sizeof (*M->encr_document));
- return;
- case tgl_message_media_webpage:
- tgls_free_webpage (TLS, M->webpage);
- return;
- case tgl_message_media_venue:
- if (M->venue.title) { tfree_str (M->venue.title); }
- if (M->venue.address) { tfree_str (M->venue.address); }
- if (M->venue.provider) { tfree_str (M->venue.provider); }
- if (M->venue.venue_id) { tfree_str (M->venue.venue_id); }
- return;
- default:
- vlogprintf (E_ERROR, "type = 0x%08x\n", M->type);
- assert (0);
- }
-}
-
-void tgls_free_message_action (struct tgl_state *TLS, struct tgl_message_action *M) {
- switch (M->type) {
- case tgl_message_action_none:
- return;
- case tgl_message_action_chat_create:
- tfree_str (M->title);
- tfree (M->users, M->user_num * 4);
- return;
- case tgl_message_action_chat_edit_title:
- tfree_str (M->new_title);
- return;
- case tgl_message_action_chat_edit_photo:
- tgls_free_photo (TLS, M->photo);
- M->photo = NULL;
- return;
- case tgl_message_action_chat_delete_photo:
- case tgl_message_action_chat_add_user:
- case tgl_message_action_chat_add_user_by_link:
- case tgl_message_action_chat_delete_user:
- case tgl_message_action_geo_chat_create:
- case tgl_message_action_geo_chat_checkin:
- case tgl_message_action_set_message_ttl:
- case tgl_message_action_read_messages:
- case tgl_message_action_delete_messages:
- case tgl_message_action_screenshot_messages:
- case tgl_message_action_flush_history:
- case tgl_message_action_typing:
- case tgl_message_action_resend:
- case tgl_message_action_notify_layer:
- case tgl_message_action_commit_key:
- case tgl_message_action_abort_key:
- case tgl_message_action_noop:
- return;
- case tgl_message_action_request_key:
- case tgl_message_action_accept_key:
- tfree (M->g_a, 256);
- return;
-/* default:
- vlogprintf (E_ERROR, "type = 0x%08x\n", M->type);
- assert (0);*/
- }
- vlogprintf (E_ERROR, "type = 0x%08x\n", M->type);
- assert (0);
-}
-
-void tgls_clear_message (struct tgl_state *TLS, struct tgl_message *M) {
- if (!(M->flags & TGLMF_SERVICE)) {
- if (M->message) { tfree (M->message, M->message_len + 1); }
- tgls_free_message_media (TLS, &M->media);
- } else {
- tgls_free_message_action (TLS, &M->action);
- }
-}
-
-void tgls_free_reply_markup (struct tgl_state *TLS, struct tgl_message_reply_markup *R) {
- if (!--R->refcnt) {
- tfree (R->buttons, R->row_start[R->rows] * sizeof (void *));
- tfree (R->row_start, 4 * (R->rows + 1));
- tfree (R, sizeof (*R));
- } else {
- assert (R->refcnt > 0);
- }
-}
-
-void tgls_free_message (struct tgl_state *TLS, struct tgl_message *M) {
- tgls_clear_message (TLS, M);
- if (M->reply_markup) {
- tgls_free_reply_markup (TLS, M->reply_markup);
- }
- tfree (M, sizeof (*M));
-}
-
-void tgls_free_chat (struct tgl_state *TLS, struct tgl_chat *U) {
- if (U->title) { tfree_str (U->title); }
- if (U->print_title) { tfree_str (U->print_title); }
- if (U->user_list) {
- tfree (U->user_list, U->user_list_size * 12);
- }
- if (U->photo) { tgls_free_photo (TLS, U->photo); }
- tfree (U, sizeof (*U));
-}
-
-void tgls_free_user (struct tgl_state *TLS, struct tgl_user *U) {
- if (U->first_name) { tfree_str (U->first_name); }
- if (U->last_name) { tfree_str (U->last_name); }
- if (U->print_name) { tfree_str (U->print_name); }
- if (U->phone) { tfree_str (U->phone); }
- if (U->real_first_name) { tfree_str (U->real_first_name); }
- if (U->real_last_name) { tfree_str (U->real_last_name); }
- if (U->status.ev) { tgl_remove_status_expire (TLS, U); }
- if (U->photo) { tgls_free_photo (TLS, U->photo); }
- tfree (U, sizeof (*U));
-}
-
-void tgls_free_encr_chat (struct tgl_state *TLS, struct tgl_secret_chat *U) {
- if (U->print_name) { tfree_str (U->print_name); }
- if (U->g_key) { tfree (U->g_key, 256); }
- tfree (U, sizeof (*U));
-}
-
-void tgls_free_peer (struct tgl_state *TLS, tgl_peer_t *P) {
- if (tgl_get_peer_type (P->id) == TGL_PEER_USER) {
- tgls_free_user (TLS, (void *)P);
- } else if (tgl_get_peer_type (P->id) == TGL_PEER_CHAT) {
- tgls_free_chat (TLS, (void *)P);
- } else if (tgl_get_peer_type (P->id) == TGL_PEER_ENCR_CHAT) {
- tgls_free_encr_chat (TLS, (void *)P);
- } else {
- assert (0);
- }
-}
-
-void tgls_free_bot_info (struct tgl_state *TLS, struct tgl_bot_info *B) {
- if (!B) { return; }
- int i;
- for (i = 0; i < B->commands_num; i++) {
- tfree_str (B->commands[i].command);
- tfree_str (B->commands[i].description);
- }
- tfree (B->commands, sizeof (struct tgl_bot_command) * B->commands_num);
- tfree_str (B->share_text);
- tfree_str (B->description);
- tfree (B, sizeof (*B));
-}
-/* }}} */
-
-/* Messages {{{ */
-
-void tglm_message_del_use (struct tgl_state *TLS, struct tgl_message *M) {
- M->next_use->prev_use = M->prev_use;
- M->prev_use->next_use = M->next_use;
-}
-
-void tglm_message_add_use (struct tgl_state *TLS, struct tgl_message *M) {
- M->next_use = TLS->message_list.next_use;
- M->prev_use = &TLS->message_list;
- M->next_use->prev_use = M;
- M->prev_use->next_use = M;
-}
-
-void tglm_message_add_peer (struct tgl_state *TLS, struct tgl_message *M) {
- tgl_peer_id_t id;
- if (!tgl_cmp_peer_id (M->to_id, TGL_MK_USER (TLS->our_id))) {
- id = M->from_id;
- } else {
- id = M->to_id;
- }
- tgl_peer_t *P = tgl_peer_get (TLS, id);
- if (!P) {
- P = talloc0 (sizeof (*P));
- P->id = id;
- switch (tgl_get_peer_type (id)) {
- case TGL_PEER_USER:
- TLS->users_allocated ++;
- break;
- case TGL_PEER_CHAT:
- TLS->chats_allocated ++;
- break;
- case TGL_PEER_GEO_CHAT:
- TLS->geo_chats_allocated ++;
- break;
- case TGL_PEER_ENCR_CHAT:
- TLS->encr_chats_allocated ++;
- break;
- }
- TLS->peer_tree = tree_insert_peer (TLS->peer_tree, P, lrand48 ());
- increase_peer_size (TLS);
- TLS->Peers[TLS->peer_num ++] = P;
- }
- if (!P->last) {
- P->last = M;
- M->prev = M->next = 0;
- } else {
- if (tgl_get_peer_type (P->id) != TGL_PEER_ENCR_CHAT) {
- struct tgl_message *N = P->last;
- struct tgl_message *NP = 0;
- while (N && N->id > M->id) {
- NP = N;
- N = N->next;
- }
- if (N) {
- assert (N->id < M->id);
- }
- M->next = N;
- M->prev = NP;
- if (N) { N->prev = M; }
- if (NP) { NP->next = M; }
- else { P->last = M; }
- } else {
- struct tgl_message *N = P->last;
- struct tgl_message *NP = 0;
- M->next = N;
- M->prev = NP;
- if (N) { N->prev = M; }
- if (NP) { NP->next = M; }
- else { P->last = M; }
- }
- }
-}
-
-void tglm_message_del_peer (struct tgl_state *TLS, struct tgl_message *M) {
- tgl_peer_id_t id;
- if (!tgl_cmp_peer_id (M->to_id, TGL_MK_USER (TLS->our_id))) {
- id = M->from_id;
- } else {
- id = M->to_id;
- }
- tgl_peer_t *P = tgl_peer_get (TLS, id);
- if (M->prev) {
- M->prev->next = M->next;
- }
- if (M->next) {
- M->next->prev = M->prev;
- }
- if (P && P->last == M) {
- P->last = M->next;
- }
-}
-
-struct tgl_message *tglm_message_alloc (struct tgl_state *TLS, long long id) {
- struct tgl_message *M = talloc0 (sizeof (*M));
- M->id = id;
- tglm_message_insert_tree (TLS, M);
- TLS->messages_allocated ++;
- return M;
-}
-
-void tglm_message_insert_tree (struct tgl_state *TLS, struct tgl_message *M) {
- assert (M->id);
- TLS->message_tree = tree_insert_message (TLS->message_tree, M, lrand48 ());
-}
-
-void tglm_message_remove_tree (struct tgl_state *TLS, struct tgl_message *M) {
- assert (M->id);
- TLS->message_tree = tree_delete_message (TLS->message_tree, M);
-}
-
-void tglm_message_insert (struct tgl_state *TLS, struct tgl_message *M) {
- tglm_message_add_use (TLS, M);
- tglm_message_add_peer (TLS, M);
-}
-
-void tglm_message_insert_unsent (struct tgl_state *TLS, struct tgl_message *M) {
- TLS->message_unsent_tree = tree_insert_message (TLS->message_unsent_tree, M, lrand48 ());
-}
-
-void tglm_message_remove_unsent (struct tgl_state *TLS, struct tgl_message *M) {
- TLS->message_unsent_tree = tree_delete_message (TLS->message_unsent_tree, M);
-}
-
-static void __send_msg (struct tgl_message *M, void *_TLS) {
- struct tgl_state *TLS = _TLS;
- vlogprintf (E_NOTICE, "Resending message...\n");
- //print_message (M);
-
- if (M->media.type != tgl_message_media_none) {
- assert (M->flags & TGLMF_ENCRYPTED);
- bl_do_message_delete (TLS, M);
- } else {
- tgl_do_send_msg (TLS, M, 0, 0);
- }
-}
-
-void tglm_send_all_unsent (struct tgl_state *TLS) {
- tree_act_ex_message (TLS->message_unsent_tree, __send_msg, TLS);
-}
-/* }}} */
-
-struct tgl_photo *tgl_photo_get (struct tgl_state *TLS, long long id) {
- struct tgl_photo P;
- P.id = id;
- return tree_lookup_photo (TLS->photo_tree, &P);
-}
-
-void tgl_photo_insert (struct tgl_state *TLS, struct tgl_photo *P) {
- TLS->photo_tree = tree_insert_photo (TLS->photo_tree, P, lrand48 ());
-}
-
-struct tgl_document *tgl_document_get (struct tgl_state *TLS, long long id) {
- struct tgl_document P;
- P.id = id;
- return tree_lookup_document (TLS->document_tree, &P);
-}
-
-void tgl_document_insert (struct tgl_state *TLS, struct tgl_document *P) {
- TLS->document_tree = tree_insert_document (TLS->document_tree, P, lrand48 ());
-}
-
-struct tgl_webpage *tgl_webpage_get (struct tgl_state *TLS, long long id) {
- struct tgl_webpage P;
- P.id = id;
- return tree_lookup_webpage (TLS->webpage_tree, &P);
-}
-
-void tgl_webpage_insert (struct tgl_state *TLS, struct tgl_webpage *P) {
- TLS->webpage_tree = tree_insert_webpage (TLS->webpage_tree, P, lrand48 ());
-}
-
-void tglp_peer_insert_name (struct tgl_state *TLS, tgl_peer_t *P) {
- TLS->peer_by_name_tree = tree_insert_peer_by_name (TLS->peer_by_name_tree, P, lrand48 ());
-}
-
-void tglp_peer_delete_name (struct tgl_state *TLS, tgl_peer_t *P) {
- TLS->peer_by_name_tree = tree_delete_peer_by_name (TLS->peer_by_name_tree, P);
-}
-
-tgl_peer_t *tgl_peer_get (struct tgl_state *TLS, tgl_peer_id_t id) {
- static tgl_peer_t U;
- U.id = id;
- return tree_lookup_peer (TLS->peer_tree, &U);
-}
-
-struct tgl_message *tgl_message_get (struct tgl_state *TLS, long long id) {
- struct tgl_message M;
- M.id = id;
- return tree_lookup_message (TLS->message_tree, &M);
-}
-
-tgl_peer_t *tgl_peer_get_by_name (struct tgl_state *TLS, const char *s) {
- static tgl_peer_t P;
- P.print_name = (void *)s;
- tgl_peer_t *R = tree_lookup_peer_by_name (TLS->peer_by_name_tree, &P);
- return R;
-}
-
-void tgl_peer_iterator_ex (struct tgl_state *TLS, void (*it)(tgl_peer_t *P, void *extra), void *extra) {
- tree_act_ex_peer (TLS->peer_tree, it, extra);
-}
-
-int tgl_complete_user_list (struct tgl_state *TLS, int index, const char *text, int len, char **R) {
- index ++;
- while (index < TLS->peer_num && (!TLS->Peers[index]->print_name || strncmp (TLS->Peers[index]->print_name, text, len) || tgl_get_peer_type (TLS->Peers[index]->id) != TGL_PEER_USER)) {
- index ++;
- }
- if (index < TLS->peer_num) {
- *R = strdup (TLS->Peers[index]->print_name);
- assert (*R);
- return index;
- } else {
- return -1;
- }
-}
-
-int tgl_complete_chat_list (struct tgl_state *TLS, int index, const char *text, int len, char **R) {
- index ++;
- while (index < TLS->peer_num && (!TLS->Peers[index]->print_name || strncmp (TLS->Peers[index]->print_name, text, len) || tgl_get_peer_type (TLS->Peers[index]->id) != TGL_PEER_CHAT)) {
- index ++;
- }
- if (index < TLS->peer_num) {
- *R = strdup (TLS->Peers[index]->print_name);
- assert (*R);
- return index;
- } else {
- return -1;
- }
-}
-
-int tgl_complete_encr_chat_list (struct tgl_state *TLS, int index, const char *text, int len, char **R) {
- index ++;
- while (index < TLS->peer_num && (!TLS->Peers[index]->print_name || strncmp (TLS->Peers[index]->print_name, text, len) || tgl_get_peer_type (TLS->Peers[index]->id) != TGL_PEER_ENCR_CHAT)) {
- index ++;
- }
- if (index < TLS->peer_num) {
- *R = strdup (TLS->Peers[index]->print_name);
- assert (*R);
- return index;
- } else {
- return -1;
- }
-}
-
-int tgl_complete_peer_list (struct tgl_state *TLS, int index, const char *text, int len, char **R) {
- index ++;
- while (index < TLS->peer_num && (!TLS->Peers[index]->print_name || strncmp (TLS->Peers[index]->print_name, text, len))) {
- index ++;
- }
- if (index < TLS->peer_num) {
- *R = strdup (TLS->Peers[index]->print_name);
- assert (*R);
- return index;
- } else {
- return -1;
- }
-}
-
-int tgl_secret_chat_for_user (struct tgl_state *TLS, tgl_peer_id_t user_id) {
- int index = 0;
- while (index < TLS->peer_num && (tgl_get_peer_type (TLS->Peers[index]->id) != TGL_PEER_ENCR_CHAT || TLS->Peers[index]->encr_chat.user_id != tgl_get_peer_id (user_id) || TLS->Peers[index]->encr_chat.state != sc_ok)) {
- index ++;
- }
- if (index < TLS->peer_num) {
- return tgl_get_peer_id (TLS->Peers[index]->encr_chat.id);
- } else {
- return -1;
- }
-}
-
-void tgls_free_peer_gw (tgl_peer_t *P, void *TLS) {
- tgls_free_peer (TLS, P);
-}
-
-void tgls_free_message_gw (struct tgl_message *M, void *TLS) {
- tgls_free_message (TLS, M);
-}
-
-void tgl_free_all (struct tgl_state *TLS) {
- tree_act_ex_peer (TLS->peer_tree, tgls_free_peer_gw, TLS);
- TLS->peer_tree = tree_clear_peer (TLS->peer_tree);
- TLS->peer_by_name_tree = tree_clear_peer_by_name (TLS->peer_by_name_tree);
- tree_act_ex_message (TLS->message_tree, tgls_free_message_gw, TLS);
- TLS->message_tree = tree_clear_message (TLS->message_tree);
- tree_act_ex_message (TLS->message_unsent_tree, tgls_free_message_gw, TLS);
- TLS->message_unsent_tree = tree_clear_message (TLS->message_unsent_tree);
- tglq_query_free_all (TLS);
-
- if (TLS->encr_prime) { tfree (TLS->encr_prime, 256); }
-
-
- if (TLS->binlog_name) { tfree_str (TLS->binlog_name); }
- if (TLS->auth_file) { tfree_str (TLS->auth_file); }
- if (TLS->downloads_directory) { tfree_str (TLS->downloads_directory); }
-
- int i;
- for (i = 0; i < TLS->rsa_key_num; i++) {
- tfree_str (TLS->rsa_key_list[i]);
- }
-
- for (i = 0; i <= TLS->max_dc_num; i++) if (TLS->DC_list[i]) {
- tgls_free_dc (TLS, TLS->DC_list[i]);
- }
- BN_CTX_free (TLS->BN_ctx);
- tgls_free_pubkey (TLS);
-
- if (TLS->ev_login) { TLS->timer_methods->free (TLS->ev_login); }
- if (TLS->online_updates_timer) { TLS->timer_methods->free (TLS->online_updates_timer); }
-}
-
-int tgl_print_stat (struct tgl_state *TLS, char *s, int len) {
- return tsnprintf (s, len,
- "users_allocated\t%d\n"
- "chats_allocated\t%d\n"
- "encr_chats_allocated\t%d\n"
- "peer_num\t%d\n"
- "messages_allocated\t%d\n",
- TLS->users_allocated,
- TLS->chats_allocated,
- TLS->encr_chats_allocated,
- TLS->peer_num,
- TLS->messages_allocated
- );
-}
-
-void tglf_fetch_int_array (int *dst, struct tl_ds_vector *src, int len) {
- int i;
- assert (len <= *src->f1);
- for (i = 0; i < len; i++) {
- dst[i] = *(int *)src->f2[i];
- }
-}
-
-void tglf_fetch_int_tuple (int *dst, int **src, int len) {
- int i;
- for (i = 0; i < len; i++) {
- dst[i] = *src[i];
- }
-}
-
-
-void tgls_messages_mark_read (struct tgl_state *TLS, struct tgl_message *M, int out, int seq) {
- while (M && M->id > seq) {
- if ((M->flags & TGLMF_OUT) == out) {
- if (!(M->flags & TGLMF_UNREAD)) {
- return;
- }
- }
- M = M->next;
- }
- while (M) {
- if ((M->flags & TGLMF_OUT) == out) {
- if (M->flags & TGLMF_UNREAD) {
- M->flags &= ~TGLMF_UNREAD;
- TLS->callback.marked_read (TLS, 1, &M);
- } else {
- return;
- }
- }
- M = M->next;
- }
-}
-
-void tgls_insert_random2local (struct tgl_state *TLS, long long random_id, int local_id) {
- struct random2local *X = talloc (sizeof (*X));
- X->random_id = random_id;
- X->local_id = local_id;
-
- struct random2local *R = tree_lookup_random_id (TLS->random_id_tree, X);
- assert (!R);
-
- TLS->random_id_tree = tree_insert_random_id (TLS->random_id_tree, X, lrand48 ());
-}
-
-int tgls_get_local_by_random (struct tgl_state *TLS, long long random_id) {
- struct random2local X;
- X.random_id = random_id;
- struct random2local *Y = tree_lookup_random_id (TLS->random_id_tree, &X);
- if (Y) {
- TLS->random_id_tree = tree_delete_random_id (TLS->random_id_tree, Y);
- int y = Y->local_id;
- tfree (Y, sizeof (*Y));
- return y;
- } else {
- return 0;
- }
-}
diff --git a/protocols/Telegram/src/tgl/tg-mime-types.c b/protocols/Telegram/src/tgl/tg-mime-types.c
deleted file mode 100644
index 578d8da780..0000000000
--- a/protocols/Telegram/src/tgl/tg-mime-types.c
+++ /dev/null
@@ -1,112 +0,0 @@
-#include <string.h>
-#include <assert.h>
-#define MAX_MIME_TYPES_NUM 10000
-
-#include "mime-types.c"
-
-static int mime_initialized;
-static int mime_type_number;
-static char *mime_type_names[MAX_MIME_TYPES_NUM];
-static char *mime_type_extensions[MAX_MIME_TYPES_NUM];
-
-static void mime_init (void) {
- char *start = (char *)mime_types;
- char *end = start + mime_types_len;
- mime_initialized = 1;
- char *c = start;
- while (c < end) {
- if (*c == '#') {
- while (c < end && *c != '\n') {
- c ++;
- }
- if (c < end) {
- c ++;
- }
- } else {
- while (*c <= ' ' && *c != '\n' && c < end) {
- c ++;
- }
- assert (*c > ' ' && *c != '\n' && c < end);
- char *name = c;
- while (*c > ' ' && *c != '\n' && c < end) {
- c ++;
- }
- assert (*c <= ' ' && *c != '\n' && c < end);
- *c = 0;
- c ++;
- while (1) {
- while (*c <= ' ' && *c != '\n' && c < end) {
- c ++;
- }
- if (*c == '\n' || c == end) {
- if (*c == '\n') { c ++; }
- break;
- }
- char *ext = c;
- while (*c > ' ' && *c != '\n' && c < end) {
- c ++;
- }
- assert (c != end);
- int br = (*c == '\n');
- *c = 0;
- c ++;
- assert (mime_type_number < MAX_MIME_TYPES_NUM);
- mime_type_names[mime_type_number] = name;
- mime_type_extensions[mime_type_number] = ext;
- mime_type_number ++;
- if (br) { break; }
- }
- }
- }
-}
-
-char *tg_extension_by_mime (const char *mime_type) {
- if (!mime_initialized) {
- mime_init ();
- }
- int i;
- for (i = 0; i < mime_type_number; i++) {
- if (!strcmp (mime_type_names[i], mime_type)) {
- return mime_type_extensions[i];
- }
- }
- return NULL;
-}
-
-char *tg_mime_by_filename (const char *filename) {
- int l = strlen (filename);
- const char *p = filename - 1 + l;
- while (p >= filename && *p != '.') {
- p --;
- }
- p ++;
-
- if (!mime_initialized) {
- mime_init ();
- }
-
- static char *def = "application/octet-stream";
- if (strlen (p) > 10) {
- return def;
- }
- static char s[11];
-#if defined(_MSC_VER) && _MSC_VER >= 1400
- strcpy_s(s, 11, p);
-#else
- strcpy (s, p);
-#endif
- char *q = s;
- while (*q) {
- if (*q >= 'A' && *p <= 'Z') {
- *q = *q + 'z' - 'Z';
- }
- q ++;
- }
- int i;
- for (i = 0; i < mime_type_number; i++) {
- if (!strcmp (mime_type_extensions[i], s)) {
- return mime_type_names[i];
- }
- }
- return def;
-}
diff --git a/protocols/Telegram/src/tgl/tg-mime-types.h b/protocols/Telegram/src/tgl/tg-mime-types.h
deleted file mode 100644
index 3a3539e56a..0000000000
--- a/protocols/Telegram/src/tgl/tg-mime-types.h
+++ /dev/null
@@ -1,3 +0,0 @@
-char *tg_mime_by_filename (const char *filename);
-char *tg_extension_by_mime (const char *mime_type);
-
diff --git a/protocols/Telegram/src/tgl/tgl-binlog.h b/protocols/Telegram/src/tgl/tgl-binlog.h
deleted file mode 100644
index fdd838f70c..0000000000
--- a/protocols/Telegram/src/tgl/tgl-binlog.h
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-#ifndef __BINLOG_H__
-#define __BINLOG_H__
-
-//#include "structures.h"
-#include "tgl.h"
-#include "auto/auto-types.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-void bl_do_dc_option (struct tgl_state *TLS, int id, const char *name, int l1, const char *ip, int l2, int port);
-void bl_do_dc_option_new (struct tgl_state *TLS, int flags, int id, const char *name, int l1, const char *ip, int l2, int port);
-void bl_do_set_working_dc (struct tgl_state *TLS, int num);
-void bl_do_dc_signed (struct tgl_state *TLS, int id);
-void bl_do_set_our_id (struct tgl_state *TLS, int id);
-void bl_do_set_dh_params (struct tgl_state *TLS, int root, unsigned char prime[], int version);
-
-void bl_do_set_pts (struct tgl_state *TLS, int pts);
-void bl_do_set_qts (struct tgl_state *TLS, int qts);
-void bl_do_set_date (struct tgl_state *TLS, int date);
-void bl_do_set_seq (struct tgl_state *TLS, int seq);
-
-void bl_do_set_msg_id (struct tgl_state *TLS, struct tgl_message *M, int id);
-
-void bl_do_user_delete (struct tgl_state *TLS, struct tgl_user *U);
-void bl_do_encr_chat_delete (struct tgl_state *TLS, struct tgl_secret_chat *U);
-
-void bl_do_chat_add_user (struct tgl_state *TLS, struct tgl_chat *C, int version, int user, int inviter, int date);
-void bl_do_chat_del_user (struct tgl_state *TLS, struct tgl_chat *C, int version, int user);
-
-void bl_do_create_message_new (struct tgl_state *TLS, long long id, int *from_id, int *to_type, int *to_id, int *fwd_from_id, int *fwd_date, int *date, const char *message, int message_len, struct tl_ds_message_media *media, struct tl_ds_message_action *action, int *reply_id, struct tl_ds_reply_markup *reply_markup, int flags);
-
-void bl_do_create_message_encr_new (struct tgl_state *TLS, long long id, int *from_id, int *to_type, int *to_id, int *date, const char *message, int message_len, struct tl_ds_decrypted_message_media *media, struct tl_ds_decrypted_message_action *action, struct tl_ds_encrypted_file *file, int flags);
-void bl_do_message_delete (struct tgl_state *TLS, struct tgl_message *M);
-
-void bl_do_encr_chat_exchange_new (struct tgl_state *TLS, struct tgl_secret_chat *E, long long *exchange_id, const void *key, int *state);
-
-void bl_do_msg_update (struct tgl_state *TLS, long long id);
-void bl_do_reset_authorization (struct tgl_state *TLS);
-
-void bl_do_user_new (struct tgl_state *TLS, int id, long long *access_hash, const char *first_name, int first_name_len, const char *last_name, int last_name_len, const char *phone, int phone_len, const char *username, int username_len, struct tl_ds_photo *photo, const char *real_first_name, int real_first_name_len, const char *real_last_name, int real_last_name_len, struct tl_ds_user_profile_photo *profile_photo, int *last_read_in, int *last_read_out, struct tl_ds_bot_info *bot_info, int flags);
-
-void bl_do_set_auth_key (struct tgl_state *TLS, int num, unsigned char *buf);
-
-void bl_do_chat_new (struct tgl_state *TLS, int id, const char *title, int title_len, int *user_num, int *date, int *version, struct tl_ds_vector *participants, struct tl_ds_chat_photo *chat_photo, struct tl_ds_photo *photo, int *admin, int *last_read_in, int *last_read_out, int flags);
-
-void bl_do_encr_chat_new (struct tgl_state *TLS, int id, long long *access_hash, int *date, int *admin, int *user_id, void *key, void *g_key, void *first_key_id, int *state, int *ttl, int *layer, int *in_seq_no, int *last_in_seq_no, int *out_seq_no, long long *key_fingerprint, int flags);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/protocols/Telegram/src/tgl/tgl-fetch.h b/protocols/Telegram/src/tgl/tgl-fetch.h
deleted file mode 100644
index 37b2ac5d1d..0000000000
--- a/protocols/Telegram/src/tgl/tgl-fetch.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2014-2015
-*/
-#ifndef __TGL_FETCH_H__
-#define __TGL_FETCH_H__
-#include "tgl.h"
-#include "auto/auto-types.h"
-
-struct tgl_user *tglf_fetch_alloc_user_new (struct tgl_state *TLS, struct tl_ds_user *DS_U);
-struct tgl_user *tglf_fetch_alloc_user_full_new (struct tgl_state *TLS, struct tl_ds_user_full *DS_U);
-struct tgl_chat *tglf_fetch_alloc_chat_new (struct tgl_state *TLS, struct tl_ds_chat *DS_C);
-struct tgl_chat *tglf_fetch_alloc_chat_full_new (struct tgl_state *TLS, struct tl_ds_messages_chat_full *DS_MCF);
-struct tgl_secret_chat *tglf_fetch_alloc_encrypted_chat_new (struct tgl_state *TLS, struct tl_ds_encrypted_chat *DS_EC);
-struct tgl_message *tglf_fetch_alloc_message_new (struct tgl_state *TLS, struct tl_ds_message *DS_M);
-struct tgl_message *tglf_fetch_alloc_message_short (struct tgl_state *TLS);
-struct tgl_message *tglf_fetch_alloc_message_short_chat (struct tgl_state *TLS);
-struct tgl_message *tglf_fetch_alloc_encrypted_message_new (struct tgl_state *TLS, struct tl_ds_encrypted_message *DS_EM);
-tgl_peer_id_t tglf_fetch_peer_id_new (struct tgl_state *TLS, struct tl_ds_peer *DS_P);
-long long tglf_fetch_user_photo_new (struct tgl_state *TLS, struct tgl_user *U, struct tl_ds_user_profile_photo *DS_UPP);
-
-void tglf_fetch_message_media_new (struct tgl_state *TLS, struct tgl_message_media *M, struct tl_ds_message_media *DS_MM);
-void tglf_fetch_message_action_new (struct tgl_state *TLS, struct tgl_message_action *M, struct tl_ds_message_action *DS_MA);
-void tglf_fetch_chat_full (struct tgl_state *TLS, struct tgl_chat *C);
-
-void tglf_fetch_encrypted_message_file_new (struct tgl_state *TLS, struct tgl_message_media *M, struct tl_ds_encrypted_file *DS_EF);
-void tglf_fetch_message_media_encrypted_new (struct tgl_state *TLS, struct tgl_message_media *M, struct tl_ds_decrypted_message_media *DS_DMM);
-void tglf_fetch_message_action_encrypted_new (struct tgl_state *TLS, struct tgl_message_action *M, struct tl_ds_decrypted_message_action *DS_DMA);
-int tglf_fetch_user_status_new (struct tgl_state *TLS, struct tgl_user_status *S, struct tgl_user *U, struct tl_ds_user_status *DS_US);
-enum tgl_typing_status tglf_fetch_typing_new (struct tl_ds_send_message_action *DS_SMA);
-void tglf_fetch_chat_participants_new (struct tgl_state *TLS, struct tgl_chat *C, struct tl_ds_chat_participants *DS_CP);
-void tglf_fetch_int_array (int *dst, struct tl_ds_vector *src, int len);
-void tglf_fetch_int_tuple (int *dst, int **src, int len);
-int tglf_fetch_file_location_new (struct tgl_state *TLS, struct tgl_file_location *loc, struct tl_ds_file_location *DS_FL);
-
-void tglf_fetch_message_short_new (struct tgl_state *TLS, struct tgl_message *M, struct tl_ds_updates *DS_U);
-void tglf_fetch_message_short_chat_new (struct tgl_state *TLS, struct tgl_message *M, struct tl_ds_updates *DS_U);
-
-struct tgl_message *tglf_fetch_alloc_message_short_new (struct tgl_state *TLS, struct tl_ds_updates *DS_U);
-struct tgl_message *tglf_fetch_alloc_message_short_chat_new (struct tgl_state *TLS, struct tl_ds_updates *DS_U);
-struct tgl_photo *tglf_fetch_alloc_photo_new (struct tgl_state *TLS, struct tl_ds_photo *DS_P);
-struct tgl_bot_info *tglf_fetch_alloc_bot_info (struct tgl_state *TLS, struct tl_ds_bot_info *DS_BI);
-struct tgl_message_reply_markup *tglf_fetch_alloc_reply_markup (struct tgl_state *TLS, struct tgl_message *M, struct tl_ds_reply_markup *DS_RM);
-#endif
diff --git a/protocols/Telegram/src/tgl/tgl-inner.h b/protocols/Telegram/src/tgl/tgl-inner.h
deleted file mode 100644
index 2ffa932762..0000000000
--- a/protocols/Telegram/src/tgl/tgl-inner.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2014-2015
-*/
-
-#ifndef __TGL_INNER_H__
-#define __TGL_INNER_H__
-
-#ifndef vlogprintf
-#define vlogprintf(verbosity_level,...) \
- do { \
- if (TLS->verbosity >= verbosity_level) { \
- TLS->callback.logprintf (__VA_ARGS__); \
- } \
- } while (0)
-#endif
-
-#endif
diff --git a/protocols/Telegram/src/tgl/tgl-layout.h b/protocols/Telegram/src/tgl/tgl-layout.h
deleted file mode 100644
index fee5b2c3d6..0000000000
--- a/protocols/Telegram/src/tgl/tgl-layout.h
+++ /dev/null
@@ -1,539 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2014-2015
-*/
-#ifndef __TGL_LAYOUT_H__
-#define __TGL_LAYOUT_H__
-
-#define TGLDF_IMAGE 1
-#define TGLDF_STICKER 2
-#define TGLDF_ANIMATED 4
-#define TGLDF_AUDIO 8
-#define TGLDF_VIDEO 16
-
-#define TGLMF_UNREAD 1
-#define TGLMF_OUT 2
-#define TGLMF_DISABLE_PREVIEW 4
-#define TGLMF_MENTION 16
-#define TGLMF_CREATED (1 << 8)
-#define TGLMF_PENDING (1 << 9)
-#define TGLMF_DELETED (1 << 10)
-#define TGLMF_ENCRYPTED (1 << 11)
-#define TGLMF_EMPTY (1 << 12)
-#define TGLMF_SERVICE (1 << 13)
-#define TGLMF_SESSION_OUTBOUND (1 << 14)
-
-#define TGLMF_CREATE 0x10000
-
-#define TGLPF_CREATED (1 << 8)
-#define TGLPF_CREATE (1 << 16)
-#define TGLPF_HAS_PHOTO (1 << 11)
-#define TGLPF_DELETED (1 << 10)
-
-#define TGLUF_CONTACT 1
-#define TGLUF_MUTUAL_CONTACT 2
-#define TGLUF_BLOCKED 4
-#define TGLUF_SELF 8
-#define TGLUF_CREATED TGLPF_CREATED
-#define TGLUF_DELETED TGLPF_DELETED
-#define TGLUF_HAS_PHOTO TGLPF_HAS_PHOTO
-#define TGLUF_CREATE TGLPF_CREATE
-#define TGLUF_BOT (1 << 12)
-
-#define TGLCF_CREATED TGLPF_CREATED
-#define TGLCF_CREATE TGLPF_CREATE
-#define TGLCF_HAS_PHOTO TGLPF_HAS_PHOTO
-
-#define TGLECF_CREATED TGLPF_CREATED
-#define TGLECF_CREATE TGLPF_CREATE
-#define TGLECF_HAS_PHOTO TGLPF_HAS_PHOTO
-#define TGLECF_DELETED TGLPF_DELETED
-
-#define TGL_FLAGS_UNCHANGED 0xffff
-
-#define TGLDCF_AUTHORIZED 1
-#define TGLDCF_LOGGED_IN 8
-
-#pragma pack(push,4)
-
-typedef struct { int type; int id; } tgl_peer_id_t;
-
-enum tgl_dc_state {
- st_init,
- st_reqpq_sent,
- st_reqdh_sent,
- st_client_dh_sent,
- st_init_temp,
- st_reqpq_sent_temp,
- st_reqdh_sent_temp,
- st_client_dh_sent_temp,
- st_authorized,
- st_error
-};
-
-#define MAX_DC_SESSIONS 3
-
-struct tgl_session {
- struct tgl_dc *dc;
- long long session_id;
- long long last_msg_id;
- int seq_no;
- int received_messages;
- struct connection *c;
- struct tree_long *ack_tree;
- struct tgl_timer *ev;
-};
-
-struct tgl_dc_option {
- struct tgl_dc_option *next;
- char *ip;
- int port;
-};
-
-struct tgl_dc {
- int id;
- //int port;
- int flags;
- int rsa_key_idx;
- enum tgl_dc_state state;
- //char *ip;
- //char *user;
- struct tgl_session *sessions[MAX_DC_SESSIONS];
- char auth_key[256];
- char temp_auth_key[256];
- char nonce[256];
- char new_nonce[256];
- char server_nonce[256];
- long long auth_key_id;
- long long temp_auth_key_id;
- long long temp_auth_key_bind_query_id;
-
- long long server_salt;
- struct tgl_timer *ev;
-
- int server_time_delta;
- double server_time_udelta;
-
- // ipv4, ipv6, ipv4_media, ipv6_media
- struct tgl_dc_option *options[4];
-};
-
-enum tgl_message_media_type {
- tgl_message_media_none,
- tgl_message_media_photo,
- tgl_message_media_document,
- tgl_message_media_geo,
- tgl_message_media_contact,
- tgl_message_media_unsupported,
- //tgl_message_media_photo_encr,
- //tgl_message_media_video_encr,
- //tgl_message_media_audio_encr,
- tgl_message_media_document_encr,
- tgl_message_media_webpage,
- tgl_message_media_venue,
- tgl_message_media_video,
- tgl_message_media_audio
-};
-
-enum tgl_message_action_type {
- tgl_message_action_none,
- tgl_message_action_geo_chat_create,
- tgl_message_action_geo_chat_checkin,
- tgl_message_action_chat_create,
- tgl_message_action_chat_edit_title,
- tgl_message_action_chat_edit_photo,
- tgl_message_action_chat_delete_photo,
- tgl_message_action_chat_add_user,
- tgl_message_action_chat_add_user_by_link,
- tgl_message_action_chat_delete_user,
- tgl_message_action_set_message_ttl,
- tgl_message_action_read_messages,
- tgl_message_action_delete_messages,
- tgl_message_action_screenshot_messages,
- tgl_message_action_flush_history,
- tgl_message_action_resend,
- tgl_message_action_notify_layer,
- tgl_message_action_typing,
- tgl_message_action_noop,
- tgl_message_action_commit_key,
- tgl_message_action_abort_key,
- tgl_message_action_request_key,
- tgl_message_action_accept_key
-};
-
-enum tgl_typing_status {
- tgl_typing_none,
- tgl_typing_typing,
- tgl_typing_cancel,
- tgl_typing_record_video,
- tgl_typing_upload_video,
- tgl_typing_record_audio,
- tgl_typing_upload_audio,
- tgl_typing_upload_photo,
- tgl_typing_upload_document,
- tgl_typing_geo,
- tgl_typing_choose_contact
-};
-
-struct tgl_file_location {
- int dc;
- long long volume;
- int local_id;
- long long secret;
-};
-
-struct tgl_photo_size {
- char *type;
- struct tgl_file_location loc;
- int w;
- int h;
- int size;
- char *data;
-};
-
-struct tgl_geo {
- double longitude;
- double latitude;
-};
-
-struct tgl_photo {
- long long id;
- long long access_hash;
- int refcnt;
- int user_id;
- int date;
- char *caption;
- struct tgl_geo geo;
- int sizes_num;
- struct tgl_photo_size *sizes;
-};
-
-struct tgl_encr_document {
- long long id;
- long long access_hash;
- int refcnt;
-
- int dc_id;
- int size;
- int key_fingerprint;
- int flags;
-
- unsigned char *key;
- unsigned char *iv;
- int w;
- int h;
- char *caption;
- char *mime_type;
- int duration;
-};
-
-
-struct tgl_user_status {
- int online;
- int when;
- struct tgl_timer *ev;
-};
-
-struct tgl_bot_command {
- char *command;
- char *description;
-};
-
-struct tgl_bot_info {
- int version;
- char *share_text;
- char *description;
- int commands_num;
- struct tgl_bot_command *commands;
-};
-
-struct tgl_user {
- tgl_peer_id_t id;
- int flags;
- struct tgl_message *last;
- char *print_name;
- int structure_version;
- struct tgl_file_location photo_big;
- struct tgl_file_location photo_small;
- int last_read_in;
- int last_read_out;
- long long photo_id;
- struct tgl_photo *photo;
- char *first_name;
- char *last_name;
- char *phone;
- long long access_hash;
- struct tgl_user_status status;
- int blocked;
- char *real_first_name;
- char *real_last_name;
- char *username;
-
- struct tgl_bot_info *bot_info;
-};
-
-struct tgl_chat_user {
- int user_id;
- int inviter_id;
- int date;
-};
-
-struct tgl_chat {
- tgl_peer_id_t id;
- int flags;
- struct tgl_message *last;
- char *print_title;
- int structure_version;
- struct tgl_file_location photo_big;
- struct tgl_file_location photo_small;
- int last_read_in;
- int last_read_out;
- struct tgl_photo *photo;
- char *title;
- int users_num;
- int user_list_size;
- int user_list_version;
- struct tgl_chat_user *user_list;
- int date;
- int version;
- int admin_id;
-};
-
-enum tgl_secret_chat_state {
- sc_none,
- sc_waiting,
- sc_request,
- sc_ok,
- sc_deleted
-};
-
-enum tgl_secret_chat_exchange_state {
- tgl_sce_none,
- tgl_sce_requested,
- tgl_sce_accepted,
- tgl_sce_committed,
- tgl_sce_confirmed,
- tgl_sce_aborted
-};
-
-struct tgl_secret_chat {
- tgl_peer_id_t id;
- int flags;
- struct tgl_message *last;
- char *print_name;
- int structure_version;
- struct tgl_file_location photo_big;
- struct tgl_file_location photo_small;
- struct tgl_photo *photo;
- int user_id;
- int admin_id;
- int date;
- int ttl;
- int layer;
- int in_seq_no;
- int out_seq_no;
- int last_in_seq_no;
- long long access_hash;
- unsigned char *g_key;
-
- enum tgl_secret_chat_state state;
- int key[64];
- long long key_fingerprint;
- unsigned char first_key_sha[20];
-
- long long exchange_id;
- enum tgl_secret_chat_exchange_state exchange_state;
- int exchange_key[64];
- long long exchange_key_fingerprint;
-};
-
-typedef union tgl_peer {
- struct {
- tgl_peer_id_t id;
- int flags;
- struct tgl_message *last;
- char *print_name;
- int structure_version;
- struct tgl_file_location photo_big;
- struct tgl_file_location photo_small;
- struct tgl_photo *photo;
- };
- struct tgl_user user;
- struct tgl_chat chat;
- struct tgl_secret_chat encr_chat;
-} tgl_peer_t;
-/*
-struct tgl_video {
- long long id;
- long long access_hash;
- int user_id;
- int date;
- int size;
- int dc_id;
- struct tgl_photo_size thumb;
- char *caption;
- int duration;
- int w;
- int h;
- char *mime_type;
-};
-
-struct tgl_audio {
- long long id;
- long long access_hash;
- int user_id;
- int date;
- int size;
- int dc_id;
- int duration;
- char *mime_type;
-};*/
-
-struct tgl_document {
- long long id;
- long long access_hash;
- int refcnt;
- int user_id;
- int date;
- int size;
- int dc_id;
- struct tgl_photo_size thumb;
- char *caption;
- char *mime_type;
-
- int w;
- int h;
- int flags;
- int duration;
-};
-
-struct tgl_message_action {
- enum tgl_message_action_type type;
- union {
- struct {
- char *title;
- int user_num;
- int *users;
- };
- char *new_title;
- struct tgl_photo *photo;
- int user;
- int ttl;
- int layer;
- int read_cnt;
- int delete_cnt;
- int screenshot_cnt;
- enum tgl_typing_status typing;
- struct {
- int start_seq_no;
- int end_seq_no;
- };
- struct {
- unsigned char *g_a;
- long long exchange_id;
- long long key_fingerprint;
- };
- };
-};
-
-
-struct tgl_webpage {
- long long id;
- int refcnt;
- char *url;
- char *display_url;
- char *type;
- char *site_name;
- char *title;
- char *description;
- struct tgl_photo *photo;
- char *embed_url;
- char *embed_type;
- int embed_width;
- int embed_height;
- int duration;
- char *author;
-};
-
-struct tgl_message_media {
- enum tgl_message_media_type type;
- union {
- struct {
- union {
- struct tgl_photo *photo;
- struct tgl_document *document;
- };
- char *caption;
- };
-
- struct tgl_encr_document *encr_document;
- struct tgl_webpage *webpage;
-
- struct tgl_geo geo;
- struct {
- char *phone;
- char *first_name;
- char *last_name;
- int user_id;
- };
-
- struct {
- void *data;
- int data_size;
- };
- struct {
- struct tgl_geo geo;
- char *title;
- char *address;
- char *provider;
- char *venue_id;
- } venue;
- };
-};
-
-struct tgl_message_reply_markup {
- int refcnt;
- int flags;
- int rows;
- int *row_start;
- char **buttons;
-};
-
-struct tgl_message {
- struct tgl_message *next_use, *prev_use;
- struct tgl_message *next, *prev;
- long long id;
- int flags;
- tgl_peer_id_t fwd_from_id;
- int fwd_date;
- int reply_id;
- tgl_peer_id_t from_id;
- tgl_peer_id_t to_id;
- int date;
- struct tgl_message_reply_markup *reply_markup;
- union {
- struct tgl_message_action action;
- struct {
- char *message;
- int message_len;
- struct tgl_message_media media;
- };
- };
-};
-#pragma pack(pop)
-#endif
diff --git a/protocols/Telegram/src/tgl/tgl-methods-in.h b/protocols/Telegram/src/tgl/tgl-methods-in.h
deleted file mode 100644
index 0d149db7d6..0000000000
--- a/protocols/Telegram/src/tgl/tgl-methods-in.h
+++ /dev/null
@@ -1,50 +0,0 @@
-// normally you should not use these methods
-// use them with caution
-
-
-#ifndef __TGL_METHODS_IN_H__
-#define __TGL_METHODS_IN_H__
-
-/* {{{ AUTHORIZATION METHODS. NORMALLY YOU DON'T NEED THEM */
-
-// send query to updated DCs' ips
-// automatically renews data on update
-void tgl_do_help_get_config (struct tgl_state *TLS, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// requests server to send code to specified phone number
-// if user is logged in elsewhere message will first appear as telegram message
-// and SMS will be sent some time after
-void tgl_do_send_code (struct tgl_state *TLS, const char *phone, int phone_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int registered, const char *hash), void *callback_extra);
-
-// request server to send code via phone call
-void tgl_do_phone_call (struct tgl_state *TLS, const char *phone, int phone_len, const char *hash, int hash_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// sends code from SMS to server. This step should end authorization, unless user have password
-int tgl_do_send_code_result (struct tgl_state *TLS, const char *phone, int phone_len, const char *hash, int hash_len, const char *code, int code_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *Self), void *callback_extra);
-
-
-// sends code from SMS, username and lastname to server. This step should end new user registration
-int tgl_do_send_code_result_auth (struct tgl_state *TLS, const char *phone, int phone_len, const char *hash, int hash_len, const char *code, int code_len, const char *first_name, int first_name_len, const char *last_name, int last_name_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *Self), void *callback_extra);
-
-/* }}} */
-
-void tgl_do_send_msg (struct tgl_state *TLS, struct tgl_message *M, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-void tgl_do_check_password (struct tgl_state *TLS, void (*callback)(struct tgl_state *TLS, void *extra, int success), void *callback_extra);
-
-void tgl_do_export_auth (struct tgl_state *TLS, int num, void (*callback) (struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-void tgl_do_create_secret_chat (struct tgl_state *TLS, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_secret_chat *E), void *callback_extra);
-
-void tgl_do_get_difference (struct tgl_state *TLS, int sync_from_start, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-void tgl_do_lookup_state (struct tgl_state *TLS);
-
-void tgl_do_help_get_config_dc (struct tgl_state *TLS, struct tgl_dc *D, void (*callback)(struct tgl_state *TLS, void *, int), void *callback_extra);
-
-void tgl_do_request_exchange (struct tgl_state *TLS, struct tgl_secret_chat *E);
-
-void tgl_do_create_keys_end (struct tgl_state *TLS, struct tgl_secret_chat *U);
-
-void tgl_do_send_encr_chat_layer (struct tgl_state *TLS, struct tgl_secret_chat *E);
-#endif
diff --git a/protocols/Telegram/src/tgl/tgl-net-inner.h b/protocols/Telegram/src/tgl/tgl-net-inner.h
deleted file mode 100644
index 53b9c10dfe..0000000000
--- a/protocols/Telegram/src/tgl/tgl-net-inner.h
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-#ifndef __NET_H__
-#define __NET_H__
-#if !defined(WIN32) || !defined(_WIN32)
-typedef int SOCKET
-#ifndef SOCKET_ERROR
-#define SOCKET_ERROR -1
-#endif
-#endif
-
-struct connection_buffer {
- unsigned char *start;
- unsigned char *end;
- unsigned char *rptr;
- unsigned char *wptr;
- struct connection_buffer *next;
-};
-
-enum conn_state {
- conn_none,
- conn_connecting,
- conn_ready,
- conn_failed,
- conn_stopped
-};
-
-struct connection {
- SOCKET fd;
- char *ip;
- int port;
- int flags;
- enum conn_state state;
- int ipv6[4];
- struct connection_buffer *in_head;
- struct connection_buffer *in_tail;
- struct connection_buffer *out_head;
- struct connection_buffer *out_tail;
- int in_bytes;
- int out_bytes;
- int packet_num;
- int out_packet_num;
- int last_connect_time;
- int in_fail_timer;
- struct mtproto_methods *methods;
- struct tgl_state *TLS;
- struct tgl_session *session;
- struct tgl_dc *dc;
- void *extra;
- struct event *ping_ev;
- struct event *fail_ev;
- struct event *read_ev;
- struct event *write_ev;
- double last_receive_time;
-};
-
-//extern struct connection *Connections[];
-
-int tgln_write_out (struct connection *c, const void *data, int len);
-void tgln_flush_out (struct connection *c);
-int tgln_read_in (struct connection *c, void *data, int len);
-int tgln_read_in_lookup (struct connection *c, void *data, int len);
-
-//void tgln_insert_msg_id (struct tgl_session *S, long long id);
-
-extern struct tgl_net_methods tgl_conn_methods;
-
-//void create_all_outbound_connections (void);
-
-//struct connection *create_connection (const char *host, int port, struct tgl_session *session, struct connection_methods *methods);
-//struct tgl_dc *tgln_alloc_dc (int id, char *ip, int port);
-//void tgln_dc_create_session (struct tgl_dc *DC, struct mtproto_methods *methods);
-struct connection *tgln_create_connection (struct tgl_state *TLS, const char *host, int port, struct tgl_session *session, struct tgl_dc *dc, struct mtproto_methods *methods);
-
-#define GET_DC(c) (c->session->dc)
-#endif
diff --git a/protocols/Telegram/src/tgl/tgl-net.c b/protocols/Telegram/src/tgl/tgl-net.c
deleted file mode 100644
index abba34dac8..0000000000
--- a/protocols/Telegram/src/tgl/tgl-net.c
+++ /dev/null
@@ -1,674 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#define _GNU_SOURCE
-#include <string.h>
-#include <stdlib.h>
-#include <assert.h>
-#include <sys/types.h>
-#include <errno.h>
-#include <stdio.h>
-#if defined(WIN32) || defined(_WIN32)
-#include <io.h>
-#include <fcntl.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <stdint.h>
-#include <string.h>
-#include <winsock2.h>
-#include <ws2tcpip.h>
-#define WIN32_LEAN_AND_MEAN
-#include <windows.h>
-#undef WIN32_LEAN_AND_MEAN
-#else
-#include <unistd.h>
-#include <sys/socket.h>
-#include <netdb.h>
-#include <netinet/in.h>
-#include <netinet/tcp.h>
-#include <sys/fcntl.h>
-#include <poll.h>
-#include <arpa/inet.h>
-#include <sys/time.h>
-#endif
-
-#include <openssl/rand.h>
-
-#ifdef EVENT_V2
-#include <event2/event.h>
-#else
-#include <event.h>
-#include "event-old.h"
-#endif
-#include <time.h>
-
-#include "tgl-net-inner.h"
-#include "tgl-net.h"
-#include "tgl.h"
-#include "tgl-inner.h"
-//#include "mtproto-client.h"
-//#include "mtproto-common.h"
-#include "tree.h"
-#include "tools.h"
-#include "mtproto-client.h"
-
-#ifndef POLLRDHUP
-#define POLLRDHUP 0
-#endif
-
-//double get_utime (int clock_id);
-
-//extern struct mtproto_methods auth_methods;
-
-static void fail_connection (struct connection *c);
-
-#define PING_TIMEOUT 10
-
-static void start_ping_timer (struct connection *c);
-static void ping_alarm (evutil_socket_t fd, short what, void *arg) {
- struct connection *c = arg;
- struct tgl_state *TLS = c->TLS;
- vlogprintf (E_DEBUG + 2,"ping alarm\n");
- assert (c->state == conn_ready || c->state == conn_connecting);
- if (tglt_get_double_time () - c->last_receive_time > 6 * PING_TIMEOUT) {
- vlogprintf (E_WARNING, "fail connection: reason: ping timeout\n");
- c->state = conn_failed;
- fail_connection (c);
- } else if (tglt_get_double_time () - c->last_receive_time > 3 * PING_TIMEOUT && c->state == conn_ready) {
- tgl_do_send_ping (c->TLS, c);
- start_ping_timer (c);
- } else {
- start_ping_timer (c);
- }
-}
-
-static void stop_ping_timer (struct connection *c) {
- event_del (c->ping_ev);
-}
-
-static void start_ping_timer (struct connection *c) {
- static struct timeval ptimeout = { PING_TIMEOUT, 0};
- event_add (c->ping_ev, &ptimeout);
-}
-
-static void restart_connection (struct connection *c);
-
-static void fail_alarm (evutil_socket_t fd, short what, void *arg) {
- struct connection *c = arg;
- c->in_fail_timer = 0;
- restart_connection (c);
-}
-
-static void start_fail_timer (struct connection *c) {
- if (c->in_fail_timer) { return; }
- c->in_fail_timer = 1;
-
- static struct timeval ptimeout = { 10, 0};
- event_add (c->fail_ev, &ptimeout);
-}
-
-static struct connection_buffer *new_connection_buffer (int size) {
- struct connection_buffer *b = talloc0 (sizeof (*b));
- b->start = talloc (size);
- b->end = b->start + size;
- b->rptr = b->wptr = b->start;
- return b;
-}
-
-static void delete_connection_buffer (struct connection_buffer *b) {
- tfree (b->start, b->end - b->start);
- tfree (b, sizeof (*b));
-}
-
-int tgln_write_out (struct connection *c, const void *_data, int len) {
- struct tgl_state *TLS = c->TLS;
- vlogprintf (E_DEBUG, "write_out: %d bytes\n", len);
- const unsigned char *data = _data;
- if (!len) { return 0; }
- assert (len > 0);
- int x = 0;
- if (!c->out_bytes) {
- event_add (c->write_ev, 0);
- }
- if (!c->out_head) {
- struct connection_buffer *b = new_connection_buffer (1 << 20);
- c->out_head = c->out_tail = b;
- }
- while (len) {
- if (c->out_tail->end - c->out_tail->wptr >= len) {
- memcpy (c->out_tail->wptr, data, len);
- c->out_tail->wptr += len;
- c->out_bytes += len;
- return x + len;
- } else {
- int y = c->out_tail->end - c->out_tail->wptr;
- assert (y < len);
- memcpy (c->out_tail->wptr, data, y);
- x += y;
- len -= y;
- data += y;
- struct connection_buffer *b = new_connection_buffer (1 << 20);
- c->out_tail->next = b;
- b->next = 0;
- c->out_tail = b;
- c->out_bytes += y;
- }
- }
- return x;
-}
-
-int tgln_read_in (struct connection *c, void *_data, int len) {
- unsigned char *data = _data;
- if (!len) { return 0; }
- assert (len > 0);
- if (len > c->in_bytes) {
- len = c->in_bytes;
- }
- int x = 0;
- while (len) {
- int y = c->in_head->wptr - c->in_head->rptr;
- if (y > len) {
- memcpy (data, c->in_head->rptr, len);
- c->in_head->rptr += len;
- c->in_bytes -= len;
- return x + len;
- } else {
- memcpy (data, c->in_head->rptr, y);
- c->in_bytes -= y;
- x += y;
- data += y;
- len -= y;
- void *old = c->in_head;
- c->in_head = c->in_head->next;
- if (!c->in_head) {
- c->in_tail = 0;
- }
- delete_connection_buffer (old);
- }
- }
- return x;
-}
-
-int tgln_read_in_lookup (struct connection *c, void *_data, int len) {
- unsigned char *data = _data;
- if (!len || !c->in_bytes) { return 0; }
- assert (len > 0);
- if (len > c->in_bytes) {
- len = c->in_bytes;
- }
- int x = 0;
- struct connection_buffer *b = c->in_head;
- while (len) {
- int y = b->wptr - b->rptr;
- if (y >= len) {
- memcpy (data, b->rptr, len);
- return x + len;
- } else {
- memcpy (data, b->rptr, y);
- x += y;
- data += y;
- len -= y;
- b = b->next;
- }
- }
- return x;
-}
-
-void tgln_flush_out (struct connection *c) {
-}
-
-#define MAX_CONNECTIONS 100
-static struct connection *Connections[MAX_CONNECTIONS];
-static int max_connection_fd;
-
-static void rotate_port (struct connection *c) {
- switch (c->port) {
- case 443:
- c->port = 80;
- break;
- case 80:
- c->port = 25;
- break;
- case 25:
- c->port = 443;
- break;
- }
-}
-
-static void try_read (struct connection *c);
-static void try_write (struct connection *c);
-
-static void conn_try_read (evutil_socket_t fd, short what, void *arg) {
- struct connection *c = arg;
- struct tgl_state *TLS = c->TLS;
- vlogprintf (E_DEBUG + 1, "Try read. Fd = %d\n", c->fd);
- try_read (c);
-}
-static void conn_try_write (evutil_socket_t fd, short what, void *arg) {
- struct connection *c = arg;
- struct tgl_state *TLS = c->TLS;
- if (c->state == conn_connecting) {
- c->state = conn_ready;
- c->methods->ready (TLS, c);
- }
- try_write (c);
- if (c->out_bytes) {
- event_add (c->write_ev, 0);
- }
-}
-
-static SOCKET my_connect (struct connection *c, const char *host) {
- struct tgl_state *TLS = c->TLS;
- int v6 = TLS->ipv6_enabled;
- SOCKET fd = socket (v6 ? AF_INET6 : AF_INET, SOCK_STREAM, 0);
-#if defined(WIN32) || defined(_WIN32)
- if (fd == INVALID_SOCKET) {
- vlogprintf(E_ERROR, "Can not create socket: %s\n", GetLastErrorStr(WSAGetLastError()));
-#else
- if (fd < 0) {
- vlogprintf (E_ERROR, "Can not create socket: %m\n");
-#endif
- start_fail_timer (c);
- return SOCKET_ERROR;
- }
-
-#if defined(WIN32) || defined(_WIN32)
- assert(++max_connection_fd < MAX_CONNECTIONS);
-#else
- assert (fd >= 0 && fd < MAX_CONNECTIONS);
- if (fd > max_connection_fd) {
- max_connection_fd = fd;
- }
-#endif
-
- int flags = -1;
- setsockopt (fd, SOL_SOCKET, SO_REUSEADDR, (const char *)&flags, sizeof (flags));
- setsockopt (fd, SOL_SOCKET, SO_KEEPALIVE, (const char *)&flags, sizeof (flags));
- setsockopt (fd, IPPROTO_TCP, TCP_NODELAY, (const char *)&flags, sizeof (flags));
-
- struct sockaddr_in addr;
- struct sockaddr_in6 addr6;
- memset (&addr, 0, sizeof (addr));
- memset (&addr6, 0, sizeof (addr6));
- if (v6) {
- addr6.sin6_family = AF_INET6;
- addr6.sin6_port = htons (c->port);
- if (inet_pton (AF_INET6, host, &addr6.sin6_addr.s6_addr) != 1) {
- vlogprintf (E_ERROR, "Bad ipv6 %s\n", host);
-#if defined(WIN32) || defined(_WIN32)
- closesocket (fd);
- max_connection_fd--;
-#else
- close (fd);
-#endif
- return SOCKET_ERROR;
- }
- } else {
- addr.sin_family = AF_INET;
- addr.sin_port = htons (c->port);
- if (inet_pton (AF_INET, host, &addr.sin_addr.s_addr) != 1) {
- vlogprintf (E_ERROR, "Bad ipv4 %s\n", host);
-#if defined(WIN32) || defined(_WIN32)
- closesocket (fd);
- max_connection_fd--;
-#else
- close (fd);
-#endif
- return SOCKET_ERROR;
- }
- }
-
-#if defined(WIN32) || defined(_WIN32)
- unsigned long nonblocking = 1;
- assert (ioctlsocket (fd, FIONBIO, &nonblocking) != SOCKET_ERROR);
-#else
- fcntl (fd, F_SETFL, O_NONBLOCK);
-#endif
-
-#if defined(WIN32) || defined(_WIN32)
- if (connect (fd, (struct sockaddr *) (v6 ? (void *)&addr6 : (void *)&addr), v6 ? sizeof (addr6) : sizeof (addr)) != 0) {
- if (WSAGetLastError () != WSAEWOULDBLOCK) {
- closesocket (fd);
- max_connection_fd--;
-#else
- if (connect (fd, (struct sockaddr *) (v6 ? (void *)&addr6 : (void *)&addr), v6 ? sizeof (addr6) : sizeof (addr)) == -1) {
- if (errno != EINPROGRESS) {
- close (fd);
-#endif
- return SOCKET_ERROR;
- }
- }
- return fd;
-}
-
-struct connection *tgln_create_connection (struct tgl_state *TLS, const char *host, int port, struct tgl_session *session, struct tgl_dc *dc, struct mtproto_methods *methods) {
- struct connection *c = talloc0 (sizeof (*c));
- c->TLS = TLS;
- c->ip = tstrdup (host);
- c->port = port;
-
- SOCKET fd = my_connect (c, c->ip);
- if (fd == SOCKET_ERROR) {
-#if defined(WIN32) || defined(_WIN32)
- vlogprintf(E_ERROR, "Can not connect to %s:%d %s\n", host, port, GetLastErrorStr (WSAGetLastError ()));
-#else
- vlogprintf (E_ERROR, "Can not connect to %s:%d %m\n", host, port);
-#endif
- tfree (c, sizeof (*c));
- return 0;
- }
-
- c->fd = fd;
- c->state = conn_connecting;
- c->last_receive_time = tglt_get_double_time ();
- c->flags = 0;
- assert (!Connections[fd]);
- Connections[fd] = c;
-
- c->ping_ev = evtimer_new (TLS->ev_base, ping_alarm, c);
- c->fail_ev = evtimer_new (TLS->ev_base, fail_alarm, c);
- c->write_ev = event_new (TLS->ev_base, c->fd, EV_WRITE, conn_try_write, c);
-
- struct timeval tv = {5, 0};
- c->read_ev = event_new (TLS->ev_base, c->fd, EV_READ | EV_PERSIST, conn_try_read, c);
- event_add (c->read_ev, &tv);
-
- start_ping_timer (c);
-
- c->dc = dc;
- c->session = session;
- c->methods = methods;
-
- char byte = 0xef;
- assert (tgln_write_out (c, &byte, 1) == 1);
- tgln_flush_out (c);
-
- return c;
-}
-
-static void restart_connection (struct connection *c) {
- struct tgl_state *TLS = c->TLS;
- if (c->last_connect_time == time (0)) {
- start_fail_timer (c);
- return;
- }
-
- /*if (strcmp (c->ip, c->dc->ip)) {
- tfree_str (c->ip);
- c->ip = tstrdup (c->dc->ip);
- }*/
- c->last_connect_time = (int)time (0);
- SOCKET fd = my_connect (c, c->ip);
- if (fd == SOCKET_ERROR) {
-#if defined(WIN32) || defined(_WIN32)
- vlogprintf(E_ERROR, "Can not connect to %s:%d %s\n", c->ip, c->port, GetLastErrorStr (WSAGetLastError ()));
-#else
- vlogprintf (E_WARNING, "Can not connect to %s:%d %m\n", c->ip, c->port);
-#endif
- start_fail_timer (c);
- return;
- }
-
- c->fd = fd;
- c->state = conn_connecting;
- c->last_receive_time = tglt_get_double_time ();
- start_ping_timer (c);
- Connections[fd] = c;
-
- c->write_ev = event_new (TLS->ev_base, c->fd, EV_WRITE, conn_try_write, c);
-
- struct timeval tv = {5, 0};
- c->read_ev = event_new (TLS->ev_base, c->fd, EV_READ | EV_PERSIST, conn_try_read, c);
- event_add (c->read_ev, &tv);
-
- char byte = 0xef;
- assert (tgln_write_out (c, &byte, 1) == 1);
- tgln_flush_out (c);
-}
-
-static void fail_connection (struct connection *c) {
- struct tgl_state *TLS = c->TLS;
- if (c->state == conn_ready || c->state == conn_connecting) {
- stop_ping_timer (c);
- }
- event_free (c->write_ev);
- event_free (c->read_ev);
-
- rotate_port (c);
- struct connection_buffer *b = c->out_head;
- while (b) {
- struct connection_buffer *d = b;
- b = b->next;
- delete_connection_buffer (d);
- }
- b = c->in_head;
- while (b) {
- struct connection_buffer *d = b;
- b = b->next;
- delete_connection_buffer (d);
- }
- c->out_head = c->out_tail = c->in_head = c->in_tail = 0;
- c->state = conn_failed;
- c->out_bytes = c->in_bytes = 0;
-#if defined(WIN32) || defined(_WIN32)
- closesocket (c->fd);
- max_connection_fd--;
-#else
- close (c->fd);
-#endif
- Connections[c->fd] = 0;
- vlogprintf (E_NOTICE, "Lost connection to server... %s:%d\n", c->ip, c->port);
- restart_connection (c);
-}
-
-//extern FILE *log_net_f;
-static void try_write (struct connection *c) {
- struct tgl_state *TLS = c->TLS;
- vlogprintf (E_DEBUG, "try write: fd = %d\n", c->fd);
- int x = 0;
- while (c->out_head) {
-#if defined(WIN32) || defined(_WIN32)
- int r = send(c->fd, c->out_head->rptr, c->out_head->wptr - c->out_head->rptr, 0);
- if (r != SOCKET_ERROR) {
-#else
- int r = write (c->fd, c->out_head->rptr, c->out_head->wptr - c->out_head->rptr);
- if (r >= 0) {
-#endif
- x += r;
- c->out_head->rptr += r;
- if (c->out_head->rptr != c->out_head->wptr) {
- break;
- }
- struct connection_buffer *b = c->out_head;
- c->out_head = b->next;
- if (!c->out_head) {
- c->out_tail = 0;
- }
- delete_connection_buffer (b);
- } else {
-#if defined(WIN32) || defined(_WIN32)
- if (/*WSAGetLastError() != EAGAIN && */WSAGetLastError() != WSAEWOULDBLOCK) {
- vlogprintf(E_NOTICE, "fail_connection: write_error %s\n", GetLastErrorStr(WSAGetLastError()));
-#else
- if (errno != EAGAIN && errno != EWOULDBLOCK) {
- vlogprintf (E_NOTICE, "fail_connection: write_error %m\n");
-#endif
- fail_connection (c);
- return;
- } else {
- break;
- }
- }
- }
- vlogprintf (E_DEBUG, "Sent %d bytes to %d\n", x, c->fd);
- c->out_bytes -= x;
-}
-
-static void try_rpc_read (struct connection *c) {
- assert (c->in_head);
- struct tgl_state *TLS = c->TLS;
-
- while (1) {
- if (c->in_bytes < 1) { return; }
- unsigned len = 0;
- unsigned t = 0;
- assert (tgln_read_in_lookup (c, &len, 1) == 1);
- if (len >= 1 && len <= 0x7e) {
- if (c->in_bytes < (int)(1 + 4 * len)) { return; }
- } else {
- if (c->in_bytes < 4) { return; }
- assert (tgln_read_in_lookup (c, &len, 4) == 4);
- len = (len >> 8);
- if (c->in_bytes < (int)(4 + 4 * len)) { return; }
- len = 0x7f;
- }
-
- if (len >= 1 && len <= 0x7e) {
- assert (tgln_read_in (c, &t, 1) == 1);
- assert (t == len);
- assert (len >= 1);
- } else {
- assert (len == 0x7f);
- assert (tgln_read_in (c, &len, 4) == 4);
- len = (len >> 8);
- assert (len >= 1);
- }
- len *= 4;
- int op;
- assert (tgln_read_in_lookup (c, &op, 4) == 4);
- if (c->methods->execute (TLS, c, op, len) < 0) {
- return;
- }
- }
-}
-
-static void try_read (struct connection *c) {
- struct tgl_state *TLS = c->TLS;
- vlogprintf (E_DEBUG, "try read: fd = %d\n", c->fd);
- if (!c->in_tail) {
- c->in_head = c->in_tail = new_connection_buffer (1 << 20);
- }
- #ifdef EVENT_V1
- struct timeval tv = {5, 0};
- event_add (c->read_ev, &tv);
- #endif
- int x = 0;
- while (1) {
-#if defined(WIN32) || defined(_WIN32)
- int r = recv(c->fd, c->in_tail->wptr, c->in_tail->end - c->in_tail->wptr, 0);
- if (r != SOCKET_ERROR) {
-#else
- int r = read (c->fd, c->in_tail->wptr, c->in_tail->end - c->in_tail->wptr);
- if (r > 0) {
-#endif
- c->last_receive_time = tglt_get_double_time ();
- stop_ping_timer (c);
- start_ping_timer (c);
- }
- if (r >= 0) {
- c->in_tail->wptr += r;
- x += r;
- if (c->in_tail->wptr != c->in_tail->end) {
- break;
- }
- struct connection_buffer *b = new_connection_buffer (1 << 20);
- c->in_tail->next = b;
- c->in_tail = b;
- } else {
-#if defined(WIN32) || defined(_WIN32)
- if (/*WSAGetLastError() != EAGAIN &&*/ WSAGetLastError() != WSAEWOULDBLOCK) {
- vlogprintf(E_NOTICE, "fail_connection: read_error %s\n", GetLastErrorStr(WSAGetLastError()));
-#else
- if (errno != EAGAIN && errno != EWOULDBLOCK) {
- vlogprintf (E_NOTICE, "fail_connection: read_error %m\n");
-#endif
- fail_connection (c);
- return;
- } else {
- break;
- }
- }
- }
- vlogprintf (E_DEBUG, "Received %d bytes from %d\n", x, c->fd);
- c->in_bytes += x;
- if (x) {
- try_rpc_read (c);
- }
-}
-
-static void incr_out_packet_num (struct connection *c) {
- c->out_packet_num ++;
-}
-
-static struct tgl_dc *get_dc (struct connection *c) {
- return c->dc;
-}
-
-static struct tgl_session *get_session (struct connection *c) {
- return c->session;
-}
-
-static void tgln_free (struct connection *c) {
- if (c->ip) { tfree_str (c->ip); }
- if (c->ping_ev) { event_free (c->ping_ev); }
- if (c->fail_ev) { event_free (c->fail_ev); }
- if (c->read_ev) { event_free (c->read_ev); }
- if (c->write_ev) { event_free (c->write_ev); }
-
- struct connection_buffer *b = c->out_head;
- while (b) {
- struct connection_buffer *d = b;
- b = b->next;
- delete_connection_buffer (d);
- }
- b = c->in_head;
- while (b) {
- struct connection_buffer *d = b;
- b = b->next;
- delete_connection_buffer (d);
- }
-
- if (c->fd >= 0) {
- Connections[c->fd] = 0;
-#if defined(WIN32) || defined(_WIN32)
- closesocket (c->fd);
- max_connection_fd--;
-#else
- close (c->fd);
-#endif
- }
- tfree (c, sizeof (*c));
-}
-
-struct tgl_net_methods tgl_conn_methods = {
- .write_out = tgln_write_out,
- .read_in = tgln_read_in,
- .read_in_lookup = tgln_read_in_lookup,
- .flush_out = tgln_flush_out,
- .incr_out_packet_num = incr_out_packet_num,
- .get_dc = get_dc,
- .get_session = get_session,
- .create_connection = tgln_create_connection,
- .free = tgln_free
-};
diff --git a/protocols/Telegram/src/tgl/tgl-net.h b/protocols/Telegram/src/tgl/tgl-net.h
deleted file mode 100644
index 6c589a4a38..0000000000
--- a/protocols/Telegram/src/tgl/tgl-net.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-#ifndef __NET_H__
-#define __NET_H__
-
-extern struct tgl_net_methods tgl_conn_methods;
-#endif
diff --git a/protocols/Telegram/src/tgl/tgl-structures.h b/protocols/Telegram/src/tgl/tgl-structures.h
deleted file mode 100644
index 4e3fd9ec32..0000000000
--- a/protocols/Telegram/src/tgl/tgl-structures.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-#ifndef __STRUCTURES_H__
-#define __STRUCTURES_H__
-
-#include <assert.h>
-#include "tgl-layout.h"
-#include "tgl-fetch.h"
-#include "tgl.h"
-
-char *tgls_default_create_print_name (struct tgl_state *TLS, tgl_peer_id_t id, const char *a1, const char *a2, const char *a3, const char *a4);
-
-
-void tgls_free_user (struct tgl_state *TLS, struct tgl_user *U);
-void tgls_free_chat (struct tgl_state *TLS, struct tgl_chat *U);
-void tgls_free_photo (struct tgl_state *TLS, struct tgl_photo *P);
-void tgls_free_message (struct tgl_state *TLS, struct tgl_message *M);
-void tgls_free_bot_info (struct tgl_state *TLS, struct tgl_bot_info *B);
-void tgls_clear_message (struct tgl_state *TLS, struct tgl_message *M);
-
-struct tgl_message *tglm_message_alloc (struct tgl_state *TLS, long long id);
-void tglm_message_insert_tree (struct tgl_state *TLS, struct tgl_message *M);
-void tglm_update_message_id (struct tgl_state *TLS, struct tgl_message *M, long long id);
-void tglm_message_insert (struct tgl_state *TLS, struct tgl_message *M);
-void tglm_message_insert_unsent (struct tgl_state *TLS, struct tgl_message *M);
-void tglm_message_remove_unsent (struct tgl_state *TLS, struct tgl_message *M);
-void tglm_send_all_unsent (struct tgl_state *TLS);
-void tglm_message_remove_tree (struct tgl_state *TLS, struct tgl_message *M);
-void tglm_message_add_peer (struct tgl_state *TLS, struct tgl_message *M);
-void tglm_message_del_peer (struct tgl_state *TLS, struct tgl_message *M);
-void tglm_message_del_use (struct tgl_state *TLS, struct tgl_message *M);
-void tglm_message_add_use (struct tgl_state *TLS, struct tgl_message *M);
-
-void tglp_peer_insert_name (struct tgl_state *TLS, tgl_peer_t *P);
-void tglp_peer_delete_name (struct tgl_state *TLS, tgl_peer_t *P);
-void tglp_insert_encrypted_chat (struct tgl_state *TLS, tgl_peer_t *P);
-void tglp_insert_user (struct tgl_state *TLS, tgl_peer_t *P);
-void tglp_insert_chat (struct tgl_state *TLS, tgl_peer_t *P);
-enum tgl_typing_status tglf_fetch_typing (void);
-void tgls_messages_mark_read (struct tgl_state *TLS, struct tgl_message *M, int out, int seq);
-
-void tgls_insert_random2local (struct tgl_state *TLS, long long random_id, int local_id);
-int tgls_get_local_by_random (struct tgl_state *TLS, long long random_id);
-
-
-void tgl_photo_insert (struct tgl_state *TLS, struct tgl_photo *P);
-struct tgl_photo *tgl_photo_get (struct tgl_state *TLS, long long id);
-struct tgl_document *tgl_document_get (struct tgl_state *TLS, long long id);
-void tgl_document_insert (struct tgl_state *TLS, struct tgl_document *P);
-struct tgl_webpage *tgl_webpage_get (struct tgl_state *TLS, long long id);
-void tgl_webpage_insert (struct tgl_state *TLS, struct tgl_webpage *P);
-#endif
diff --git a/protocols/Telegram/src/tgl/tgl-timers.c b/protocols/Telegram/src/tgl/tgl-timers.c
deleted file mode 100644
index d68f9ac0ec..0000000000
--- a/protocols/Telegram/src/tgl/tgl-timers.c
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-#include "config.h"
-#ifdef EVENT_V2
-#include <event2/event.h>
-#include <event2/bufferevent.h>
-#include <event2/buffer.h>
-#else
-#include <event.h>
-#include "event-old.h"
-#endif
-
-#include "tgl.h"
-#include <stdlib.h>
-
-static void timer_alarm (evutil_socket_t fd, short what, void *arg) {
- void **p = arg;
- ((void (*)(struct tgl_state *, void *))p[1]) (p[0], p[2]);
-}
-
-struct tgl_timer *tgl_timer_alloc (struct tgl_state *TLS, void (*cb)(struct tgl_state *TLS, void *arg), void *arg) {
- void **p = malloc (sizeof (void *) * 3);
- p[0] = TLS;
- p[1] = cb;
- p[2] = arg;
- return (void *)evtimer_new (TLS->ev_base, timer_alarm, p);
-}
-
-void tgl_timer_insert (struct tgl_timer *t, double p) {
- if (p < 0) { p = 0; }
- double e = p - (int)p;
- if (e < 0) { e = 0; }
- struct timeval pv = { (int)p, (int)(e * 1e6)};
- event_add ((void *)t, &pv);
-}
-
-void tgl_timer_delete (struct tgl_timer *t) {
- event_del ((void *)t);
-}
-
-void tgl_timer_free (struct tgl_timer *t) {
- void *arg = event_get_callback_arg ((void *)t);
- free (arg);
- event_free ((void *)t);
-}
-
-struct tgl_timer_methods tgl_libevent_timers = {
- .alloc = tgl_timer_alloc,
- .insert = tgl_timer_insert,
- .remove = tgl_timer_delete,
- .free = tgl_timer_free
-};
diff --git a/protocols/Telegram/src/tgl/tgl-timers.h b/protocols/Telegram/src/tgl/tgl-timers.h
deleted file mode 100644
index 7f52f3bd15..0000000000
--- a/protocols/Telegram/src/tgl/tgl-timers.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-
-#ifndef __TGL_TIMERS_H__
-#define __TGL_TIMERS_H__
-
-#include "tgl.h"
-extern struct tgl_timer_methods tgl_libevent_timers;
-
-#endif
diff --git a/protocols/Telegram/src/tgl/tgl.c b/protocols/Telegram/src/tgl/tgl.c
deleted file mode 100644
index dd4f2713c9..0000000000
--- a/protocols/Telegram/src/tgl/tgl.c
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2014-2015
-*/
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "tgl.h"
-#include "tools.h"
-#include "mtproto-client.h"
-#include "tgl-structures.h"
-//#include "net.h"
-
-#include <assert.h>
-
-struct tgl_state tgl_state;
-
-
-void tgl_set_binlog_mode (struct tgl_state *TLS, int mode) {
- TLS->binlog_enabled = mode;
-}
-
-void tgl_set_binlog_path (struct tgl_state *TLS, const char *path) {
- TLS->binlog_name = tstrdup (path);
-}
-
-void tgl_set_auth_file_path (struct tgl_state *TLS, const char *path) {
- TLS->auth_file = tstrdup (path);
-}
-
-void tgl_set_download_directory (struct tgl_state *TLS, const char *path) {
- TLS->downloads_directory = tstrdup (path);
-}
-
-void tgl_set_callback (struct tgl_state *TLS, struct tgl_update_callback *cb) {
- TLS->callback = *cb;
-}
-
-void tgl_set_rsa_key (struct tgl_state *TLS, const char *key) {
- assert (TLS->rsa_key_num < TGL_MAX_RSA_KEYS_NUM);
- TLS->rsa_key_list[TLS->rsa_key_num ++] = tstrdup (key);
-}
-
-void tgl_init (struct tgl_state *TLS) {
- assert (TLS->timer_methods);
- assert (TLS->net_methods);
- if (!TLS->callback.create_print_name) {
- TLS->callback.create_print_name = tgls_default_create_print_name;
- }
- if (!TLS->temp_key_expire_time) {
- TLS->temp_key_expire_time = 100000;
- }
-
- TLS->message_list.next_use = &TLS->message_list;
- TLS->message_list.prev_use = &TLS->message_list;
-
- tglmp_on_start (TLS);
-
- if (!TLS->app_id) {
- TLS->app_id = TG_APP_ID;
- TLS->app_hash = tstrdup (TG_APP_HASH);
- }
-}
-
-int tgl_authorized_dc (struct tgl_state *TLS, struct tgl_dc *DC) {
- assert (DC);
- return (DC->flags & 4) != 0;//DC->auth_key_id;
-}
-
-int tgl_signed_dc (struct tgl_state *TLS, struct tgl_dc *DC) {
- assert (DC);
- return (DC->flags & TGLDCF_LOGGED_IN) != 0;
-}
-
-void tgl_register_app_id (struct tgl_state *TLS, int app_id, const char *app_hash) {
- TLS->app_id = app_id;
- TLS->app_hash = tstrdup (app_hash);
-}
-
-struct tgl_state *tgl_state_alloc (void) {
- struct tgl_state *TLS = (struct tgl_state *)malloc (sizeof (*TLS));
- if (!TLS) { return NULL; }
- memset (TLS, 0, sizeof (*TLS));
- return TLS;
-}
-
-void tgl_incr_verbosity (struct tgl_state *TLS) {
- TLS->verbosity ++;
-}
-
-void tgl_set_verbosity (struct tgl_state *TLS, int val) {
- TLS->verbosity = val;
-}
-
-void tgl_enable_pfs (struct tgl_state *TLS) {
- TLS->enable_pfs = 1;
-}
-
-void tgl_set_test_mode (struct tgl_state *TLS) {
- TLS->test_mode ++;
-}
-
-void tgl_set_net_methods (struct tgl_state *TLS, struct tgl_net_methods *methods) {
- TLS->net_methods = methods;
-}
-
-void tgl_set_timer_methods (struct tgl_state *TLS, struct tgl_timer_methods *methods) {
- TLS->timer_methods = methods;
-}
-
-void tgl_set_ev_base (struct tgl_state *TLS, void *ev_base) {
- TLS->ev_base = ev_base;
-}
-
-void tgl_set_app_version (struct tgl_state *TLS, const char *app_version) {
- if (TLS->app_version) {
- tfree_str (TLS->app_version);
- }
- TLS->app_version = tstrdup (app_version);
-}
-
-void tgl_enable_ipv6 (struct tgl_state *TLS) {
- TLS->ipv6_enabled = 1;
-}
-
-void tgl_disable_link_preview (struct tgl_state *TLS) {
- TLS->disable_link_preview = 1;
-}
-
-void tgl_enable_bot (struct tgl_state *TLS) {
- TLS->is_bot = 1;
-}
diff --git a/protocols/Telegram/src/tgl/tgl.h b/protocols/Telegram/src/tgl/tgl.h
deleted file mode 100644
index 2da8c7a254..0000000000
--- a/protocols/Telegram/src/tgl/tgl.h
+++ /dev/null
@@ -1,659 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2014-2015
-*/
-#ifndef __TGL_H__
-#define __TGL_H__
-
-#include "tgl-layout.h"
-#include <string.h>
-#include <stdlib.h>
-#ifdef _WIN32
-#include "config.h"
-#define WIN32_LEAN_AND_MEAN
-#include <windows.h>
-#undef WIN32_LEAN_AND_MEAN
-#endif
-
-#define TGL_MAX_DC_NUM 100
-#define TG_SERVER_1 "149.154.175.50"
-#define TG_SERVER_2 "149.154.167.51"
-#define TG_SERVER_3 "149.154.175.100"
-#define TG_SERVER_4 "149.154.167.91"
-#define TG_SERVER_5 "149.154.171.5"
-#define TG_SERVER_IPV6_1 "2001:b28:f23d:f001::a"
-#define TG_SERVER_IPV6_2 "2001:67c:4e8:f002::a"
-#define TG_SERVER_IPV6_3 "2001:b28:f23d:f003::a"
-#define TG_SERVER_IPV6_4 "2001:67c:4e8:f004::a"
-#define TG_SERVER_IPV6_5 "2001:b28:f23f:f005::a"
-#define TG_SERVER_DEFAULT 2
-
-#define TG_SERVER_TEST_1 "149.154.175.10"
-#define TG_SERVER_TEST_2 "149.154.167.40"
-#define TG_SERVER_TEST_3 "149.154.175.117"
-#define TG_SERVER_TEST_IPV6_1 "2001:b28:f23d:f001::e"
-#define TG_SERVER_TEST_IPV6_2 "2001:67c:4e8:f002::e"
-#define TG_SERVER_TEST_IPV6_3 "2001:b28:f23d:f003::e"
-#define TG_SERVER_TEST_DEFAULT 2
-
-// JUST RANDOM STRING
-#define TGL_VERSION "2.0.3"
-
-#define TGL_ENCRYPTED_LAYER 17
-#define TGL_SCHEME_LAYER 31
-
-struct connection;
-struct mtproto_methods;
-struct tgl_session;
-struct tgl_dc;
-
-#define TGL_UPDATE_CREATED 1
-#define TGL_UPDATE_DELETED 2
-#define TGL_UPDATE_PHONE 4
-#define TGL_UPDATE_CONTACT 8
-#define TGL_UPDATE_PHOTO 16
-#define TGL_UPDATE_BLOCKED 32
-#define TGL_UPDATE_REAL_NAME 64
-#define TGL_UPDATE_NAME 128
-#define TGL_UPDATE_REQUESTED 256
-#define TGL_UPDATE_WORKING 512
-#define TGL_UPDATE_FLAGS 1024
-#define TGL_UPDATE_TITLE 2048
-#define TGL_UPDATE_ADMIN 4096
-#define TGL_UPDATE_MEMBERS 8192
-#define TGL_UPDATE_ACCESS_HASH 16384
-#define TGL_UPDATE_USERNAME (1 << 15)
-
-#if defined(WIN32) || defined(_WIN32)
-# if !defined(__cplusplus) && ( !defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901L )
-# if __GNUC__ >= 2 || (defined(_MSC_VER) && _MSC_VER >= 1300)
-# define __func__ __FUNCTION__
-# else
-# define __func__ "<unknown>"
-# endif
-# endif
-# ifdef _MSC_VER
-# define __attribute__(x)
-# endif
-# define _PRINTF_INT64_ "I64"
-# define lrand48() rand()
-# define srand48(x) srand(x)
- inline const char* GetLastErrorStr(int err)
- {
- static char errorText[256] = { 0 };
- FormatMessageA(
- FORMAT_MESSAGE_FROM_SYSTEM,
- NULL,
- err,
- MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
- (LPSTR)&errorText,
- 256,
- NULL);
- return (const char*)errorText;
- }
-
- inline const char* GetErrnoStr(int err)
- {
- static char errnoStr[256] = { 0 };
- strerror_s(errnoStr, 256, err);
- return (const char*)errnoStr;
- }
-#else
-# define _PRINTF_INT64_ "ll"
-#endif
-
-struct tgl_allocator {
- void *(*alloc)(size_t size);
- void *(*realloc)(void *ptr, size_t old_size, size_t size);
- void (*free)(void *ptr, int size);
- void (*check)(void);
- void (*exists)(void *ptr, int size);
-};
-extern struct tgl_allocator tgl_allocator_release;
-extern struct tgl_allocator tgl_allocator_debug;
-struct tgl_state;
-
-enum tgl_value_type {
- tgl_phone_number, // user phone number
- tgl_code, // telegram login code, or 'call' for phone call request
- tgl_register_info, // "Y/n" register?, first name, last name
- tgl_new_password, // new pass, confirm new pass
- tgl_cur_and_new_password, // curr pass, new pass, confirm new pass
- tgl_cur_password, // current pass
- tgl_bot_hash
-};
-
-struct tgl_update_callback {
- void (*new_msg)(struct tgl_state *TLS, struct tgl_message *M);
- void (*marked_read)(struct tgl_state *TLS, int num, struct tgl_message *list[]);
- void (*logprintf)(const char *format, ...) __attribute__ ((format (printf, 1, 2)));
- void (*get_values)(struct tgl_state *TLS, enum tgl_value_type type, const char *prompt, int num_values,
- void (*callback)(struct tgl_state *TLS, const char *string[], void *arg), void *arg);
- void (*logged_in)(struct tgl_state *TLS);
- void (*started)(struct tgl_state *TLS);
- void (*type_notification)(struct tgl_state *TLS, struct tgl_user *U, enum tgl_typing_status status);
- void (*type_in_chat_notification)(struct tgl_state *TLS, struct tgl_user *U, struct tgl_chat *C, enum tgl_typing_status status);
- void (*type_in_secret_chat_notification)(struct tgl_state *TLS, struct tgl_secret_chat *E);
- void (*status_notification)(struct tgl_state *TLS, struct tgl_user *U);
- void (*user_registered)(struct tgl_state *TLS, struct tgl_user *U);
- void (*user_activated)(struct tgl_state *TLS, struct tgl_user *U);
- void (*new_authorization)(struct tgl_state *TLS, const char *device, const char *location);
- void (*chat_update)(struct tgl_state *TLS, struct tgl_chat *C, unsigned flags);
- void (*user_update)(struct tgl_state *TLS, struct tgl_user *C, unsigned flags);
- void (*secret_chat_update)(struct tgl_state *TLS, struct tgl_secret_chat *C, unsigned flags);
- void (*msg_receive)(struct tgl_state *TLS, struct tgl_message *M);
- void (*our_id)(struct tgl_state *TLS, int id);
- void (*notification)(struct tgl_state *TLS, const char *type, const char *message);
- void (*user_status_update)(struct tgl_state *TLS, struct tgl_user *U);
- char *(*create_print_name) (struct tgl_state *TLS, tgl_peer_id_t id, const char *a1, const char *a2, const char *a3, const char *a4);
-};
-
-struct tgl_net_methods {
- int (*write_out) (struct connection *c, const void *data, int len);
- int (*read_in) (struct connection *c, void *data, int len);
- int (*read_in_lookup) (struct connection *c, void *data, int len);
- void (*flush_out) (struct connection *c);
- void (*incr_out_packet_num) (struct connection *c);
- void (*free) (struct connection *c);
- struct tgl_dc *(*get_dc) (struct connection *c);
- struct tgl_session *(*get_session) (struct connection *c);
-
- struct connection *(*create_connection) (struct tgl_state *TLS, const char *host, int port, struct tgl_session *session, struct tgl_dc *dc, struct mtproto_methods *methods);
-};
-
-struct mtproto_methods {
- int (*ready) (struct tgl_state *TLS, struct connection *c);
- int (*close) (struct tgl_state *TLS, struct connection *c);
- int (*execute) (struct tgl_state *TLS, struct connection *c, int op, int len);
-};
-
-struct tgl_timer;
-struct tree_random_id;
-
-struct tgl_timer_methods {
- struct tgl_timer *(*alloc) (struct tgl_state *TLS, void (*cb)(struct tgl_state *TLS, void *arg), void *arg);
- void (*insert) (struct tgl_timer *t, double timeout);
- void (*remove) (struct tgl_timer *t);
- void (*free) (struct tgl_timer *t);
-};
-
-#define E_ERROR 0
-#define E_WARNING 1
-#define E_NOTICE 2
-#define E_DEBUG 6
-
-#define TGL_LOCK_DIFF 1
-#define TGL_LOCK_PASSWORD 2
-
-#define TGL_MAX_RSA_KEYS_NUM 10
-// Do not modify this structure, unless you know what you do
-
-#pragma pack(push,4)
-struct tgl_state {
- int our_id; // ID of logged in user
- int encr_root;
- unsigned char *encr_prime;
- void *encr_prime_bn;
- int encr_param_version;
- int pts;
- int qts;
- int date;
- int seq;
- int binlog_enabled;
- int test_mode;
- int verbosity;
- int unread_messages;
- int active_queries;
- int max_msg_id;
- int started;
- int disable_link_preview;
-
- long long locks;
- struct tgl_dc *DC_list[TGL_MAX_DC_NUM];
- struct tgl_dc *DC_working;
- int max_dc_num;
- int dc_working_num;
- int enable_pfs;
- int temp_key_expire_time;
-
- long long cur_uploading_bytes;
- long long cur_uploaded_bytes;
- long long cur_downloading_bytes;
- long long cur_downloaded_bytes;
-
- char *binlog_name;
- char *auth_file;
- char *downloads_directory;
-
- struct tgl_update_callback callback;
- struct tgl_net_methods *net_methods;
- void *ev_base;
-
- char *rsa_key_list[TGL_MAX_RSA_KEYS_NUM];
- void *rsa_key_loaded[TGL_MAX_RSA_KEYS_NUM];
- long long rsa_key_fingerprint[TGL_MAX_RSA_KEYS_NUM];
- int rsa_key_num;
-
- struct bignum_ctx *BN_ctx;
-
- struct tgl_allocator allocator;
-
- struct tree_peer *peer_tree;
- struct tree_peer_by_name *peer_by_name_tree;
- struct tree_message *message_tree;
- struct tree_message *message_unsent_tree;
- struct tree_photo *photo_tree;
- struct tree_document *document_tree;
- struct tree_webpage *webpage_tree;
- struct tree_encr_document *encr_document_tree;
-
- int users_allocated;
- int chats_allocated;
- int messages_allocated;
- int peer_num;
- int peer_size;
- int encr_chats_allocated;
- int geo_chats_allocated;
-
- tgl_peer_t **Peers;
- struct tgl_message message_list;
-
- int binlog_fd;
-
- struct tgl_timer_methods *timer_methods;
-
- struct tree_query *queries_tree;
-
- char *base_path;
-
- struct tree_user *online_updates;
-
- struct tgl_timer *online_updates_timer;
-
- int app_id;
- char *app_hash;
-
- void *ev_login;
-
- char *app_version;
- int ipv6_enabled;
-
- struct tree_random_id *random_id_tree;
-
- char *error;
- int error_code;
-
- int is_bot;
-};
-#pragma pack(pop)
-//extern struct tgl_state tgl_state;
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-void tgl_reopen_binlog_for_writing (struct tgl_state *TLS);
-void tgl_replay_log (struct tgl_state *TLS);
-
-int tgl_print_stat (struct tgl_state *TLS, char *s, int len);
-tgl_peer_t *tgl_peer_get (struct tgl_state *TLS, tgl_peer_id_t id);
-tgl_peer_t *tgl_peer_get_by_name (struct tgl_state *TLS, const char *s);
-
-struct tgl_message *tgl_message_get (struct tgl_state *TLS, long long id);
-void tgl_peer_iterator_ex (struct tgl_state *TLS, void (*it)(tgl_peer_t *P, void *extra), void *extra);
-
-int tgl_complete_user_list (struct tgl_state *TLS, int index, const char *text, int len, char **R);
-int tgl_complete_chat_list (struct tgl_state *TLS, int index, const char *text, int len, char **R);
-int tgl_complete_encr_chat_list (struct tgl_state *TLS, int index, const char *text, int len, char **R);
-int tgl_complete_peer_list (struct tgl_state *TLS, int index, const char *text, int len, char **R);
-int tgl_secret_chat_for_user (struct tgl_state *TLS, tgl_peer_id_t user_id);
-int tgl_do_send_bot_auth (struct tgl_state *TLS, const char *code, int code_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *Self), void *callback_extra);
-
-#define TGL_PEER_USER 1
-#define TGL_PEER_CHAT 2
-#define TGL_PEER_GEO_CHAT 3
-#define TGL_PEER_ENCR_CHAT 4
-#define TGL_PEER_UNKNOWN 0
-
-#define TGL_MK_USER(id) tgl_set_peer_id (TGL_PEER_USER,id)
-#define TGL_MK_CHAT(id) tgl_set_peer_id (TGL_PEER_CHAT,id)
-#define TGL_MK_GEO_CHAT(id) tgl_set_peer_id (TGL_PEER_GEO_CHAT,id)
-#define TGL_MK_ENCR_CHAT(id) tgl_set_peer_id (TGL_PEER_ENCR_CHAT,id)
-
-void tgl_set_binlog_mode (struct tgl_state *TLS, int mode);
-void tgl_set_binlog_path (struct tgl_state *TLS, const char *path);
-void tgl_set_auth_file_path (struct tgl_state *TLS, const char *path);
-void tgl_set_download_directory (struct tgl_state *TLS, const char *path);
-void tgl_set_callback (struct tgl_state *TLS, struct tgl_update_callback *cb);
-void tgl_set_rsa_key (struct tgl_state *TLS, const char *key);
-void tgl_set_app_version (struct tgl_state *TLS, const char *app_version);
-
-static inline int tgl_get_peer_type (tgl_peer_id_t id) {
- return id.type;
-}
-
-static inline int tgl_get_peer_id (tgl_peer_id_t id) {
- return id.id;
-}
-
-static inline tgl_peer_id_t tgl_set_peer_id (int type, int id) {
- tgl_peer_id_t ID;
- ID.id = id;
- ID.type = type;
- return ID;
-}
-
-static inline int tgl_cmp_peer_id (tgl_peer_id_t a, tgl_peer_id_t b) {
- return memcmp (&a, &b, sizeof (a));
-}
-
-void tgl_incr_verbosity (struct tgl_state *TLS);
-void tgl_set_verbosity (struct tgl_state *TLS, int val);
-void tgl_enable_pfs (struct tgl_state *TLS);
-void tgl_set_test_mode (struct tgl_state *TLS);
-void tgl_set_net_methods (struct tgl_state *TLS, struct tgl_net_methods *methods);
-void tgl_set_timer_methods (struct tgl_state *TLS, struct tgl_timer_methods *methods);
-void tgl_set_ev_base (struct tgl_state *TLS, void *ev_base);
-
-int tgl_authorized_dc (struct tgl_state *TLS, struct tgl_dc *DC);
-int tgl_signed_dc (struct tgl_state *TLS, struct tgl_dc *DC);
-
-void tgl_init (struct tgl_state *TLS);
-void tgl_dc_authorize (struct tgl_state *TLS, struct tgl_dc *DC);
-
-void tgl_dc_iterator (struct tgl_state *TLS, void (*iterator)(struct tgl_dc *DC));
-void tgl_dc_iterator_ex (struct tgl_state *TLS, void (*iterator)(struct tgl_dc *DC, void *extra), void *extra);
-
-#define TGL_SEND_MSG_FLAG_DISABLE_PREVIEW 1
-#define TGL_SEND_MSG_FLAG_ENABLE_PREVIEW 2
-
-#define TGL_SEND_MSG_FLAG_DOCUMENT_IMAGE TGLDF_IMAGE
-#define TGL_SEND_MSG_FLAG_DOCUMENT_STICKER TGLDF_STICKER
-#define TGL_SEND_MSG_FLAG_DOCUMENT_ANIMATED TGLDF_ANIMATED
-#define TGL_SEND_MSG_FLAG_DOCUMENT_AUDIO TGLDF_AUDIO
-#define TGL_SEND_MSG_FLAG_DOCUMENT_VIDEO TGLDF_VIDEO
-#define TGL_SEND_MSG_FLAG_DOCUMENT_AUTO 32
-#define TGL_SEND_MSG_FLAG_DOCUMENT_PHOTO 64
-
-#define TGL_SEND_MSG_FLAG_REPLY(x) (((unsigned long long)x) << 32)
-
-typedef tgl_peer_id_t tgl_user_id_t;
-typedef tgl_peer_id_t tgl_chat_id_t;
-typedef tgl_peer_id_t tgl_secret_chat_id_t;
-typedef tgl_peer_id_t tgl_user_or_chat_id_t;
-
-void tgl_insert_empty_user (struct tgl_state *TLS, int id);
-void tgl_insert_empty_chat (struct tgl_state *TLS, int id);
-
-
-void tgl_free_all (struct tgl_state *TLS);
-void tgl_register_app_id (struct tgl_state *TLS, int app_id, const char *app_hash);
-
-void tgl_login (struct tgl_state *TLS);
-void tgl_enable_ipv6 (struct tgl_state *TLS);
-void tgl_enable_bot (struct tgl_state *TLS);
-
-struct tgl_state *tgl_state_alloc (void);
-
-void tgl_disable_link_preview (struct tgl_state *TLS);
-void tgl_do_lookup_state (struct tgl_state *TLS);
-
-/* {{{ WORK WITH ACCOUNT */
-// sets account password
-// user will be requested to type his current password and new password (twice)
-void tgl_do_set_password (struct tgl_state *TLS, const char *hint, int hint_len, void (*callback)(struct tgl_state *TLS, void *extra, int success), void *extra);
-/* }}} */
-
-/* {{{ SENDING MESSAGES */
-
-struct tl_ds_reply_markup;
-
-// send plain text message to peer id
-// flags is combination of TGL_SEND_MSG_FLAG_*
-// reply markup can be NULL
-void tgl_do_send_message (struct tgl_state *TLS, tgl_peer_id_t id, const char *text, int text_len, unsigned long long flags, struct tl_ds_reply_markup *reply_markup, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-// sends plain text reply on message *reply_id*
-// message *reply_id* should be cached
-void tgl_do_reply_message (struct tgl_state *TLS, int reply_id, const char *text, int text_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-// sends contents of text file *file_name* as plain text message
-void tgl_do_send_text (struct tgl_state *TLS, tgl_peer_id_t id, const char *file_name, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-void tgl_do_reply_text (struct tgl_state *TLS, int reply_id, const char *file_name, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-// send media from file *file_name* to peer *to_id*
-// if reply > 0 this message is sent as reply to message *reply*
-// *caption* is used only for photos
-void tgl_do_send_document (struct tgl_state *TLS, tgl_peer_id_t to_id, const char *file_name, const char *caption, int caption_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-void tgl_do_reply_document (struct tgl_state *TLS, int reply_id, const char *file_name, const char *caption, int caption_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-// forward message *msg_id* to peer *id*
-// message can not be encrypted and peer can not be secret chat
-void tgl_do_forward_message (struct tgl_state *TLS, tgl_user_or_chat_id_t id, int msg_id, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-// forward messages *ids* to peer *id*
-// messages can not be encrypted and peer can not be secret chat
-void tgl_do_forward_messages (struct tgl_state *TLS, tgl_user_or_chat_id_t id, int size, const int ids[], unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int count, struct tgl_message *ML[]), void *callback_extra);
-
-// sends contact to another user.
-// This contact may be or may not be telegram user
-void tgl_do_send_contact (struct tgl_state *TLS, tgl_peer_id_t id, const char *phone, int phone_len, const char *first_name, int first_name_len, const char *last_name, int last_name_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-// reply on message *reply_id* with contact
-void tgl_do_reply_contact (struct tgl_state *TLS, int reply_id, const char *phone, int phone_len, const char *first_name, int first_name_len, const char *last_name, int last_name_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-// sends media from message *msg_id* to another dialog
-// a bit different from forwarding message with media
-// secret message media can be forwarded to secret chats
-// and non-secret - to non-secret chats and users
-void tgl_do_forward_media (struct tgl_state *TLS, tgl_peer_id_t id, int msg_id, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-// sends location to chat *id*
-void tgl_do_send_location (struct tgl_state *TLS, tgl_peer_id_t id, double latitude, double longitude, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-// replies on message *reply_id* with location
-void tgl_do_reply_location (struct tgl_state *TLS, int reply_id, double latitude, double longitude, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-// sends broadcast (i.e. message to several users at once)
-// flags are same as in tgl_do_send_message
-void tgl_do_send_broadcast (struct tgl_state *TLS, int num, tgl_user_id_t id[], const char *text, int text_len, unsigned long long flags, void (*callback)(struct tgl_state *TLS, void *extra, int success, int num, struct tgl_message *ML[]), void *callback_extra);
-
-/* }}} */
-
-/* {{{ EDITING SELF PROFILE */
-// sets self profile photo
-// server will cut central square from this photo
-void tgl_do_set_profile_photo (struct tgl_state *TLS, const char *file_name, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// rename self account
-void tgl_do_set_profile_name (struct tgl_state *TLS, const char *first_name, int first_name_len, const char *last_name, int last_name_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *U), void *callback_extra);
-
-// sets self username
-void tgl_do_set_username (struct tgl_state *TLS, const char *username, int username_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *U), void *callback_extra);
-
-// updates online/offline status
-void tgl_do_update_status (struct tgl_state *TLS, int online, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// exports card. This card can be later be used by another user to add you to dialog list.
-void tgl_do_export_card (struct tgl_state *TLS, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, int *card), void *callback_extra);
-/* }}} */
-
-/* {{{ WORKING WITH GROUP CHATS */
-
-// sets chat photo
-// server will cut central square from this photo
-void tgl_do_set_chat_photo (struct tgl_state *TLS, tgl_chat_id_t chat_id, const char *file_name, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// sets chat title
-void tgl_do_rename_chat (struct tgl_state *TLS, tgl_chat_id_t id, const char *new_title, int new_title_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// requests full info about chat *id*.
-// if *offline_mode* is set no actual query is sent
-void tgl_do_get_chat_info (struct tgl_state *TLS, tgl_chat_id_t id, int offline_mode, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_chat *C), void *callback_extra);
-
-// adds user *id* to chat *chat_id*
-// sends *limit* last messages from this chat to user
-void tgl_do_add_user_to_chat (struct tgl_state *TLS, tgl_chat_id_t chat_id, tgl_user_id_t id, int limit, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// deleted user *id* from chat *chat_id*
-// you can do it if you are admin (=creator) of chat or if you invited this user or if it is yourself
-void tgl_do_del_user_from_chat (struct tgl_state *TLS, tgl_chat_id_t chat_id, tgl_user_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// creates group chat with users ids
-// there should be at least one user other then you in chat
-void tgl_do_create_group_chat (struct tgl_state *TLS, int users_num, tgl_user_id_t ids[], const char *chat_topic, int chat_topic_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// receives invitation link to this chat
-// only chat admin can create one
-// prevoius link invalidated, if existed
-void tgl_do_export_chat_link (struct tgl_state *TLS, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *link), void *callback_extra);
-
-// joins to secret chat by link (or hash of this link)
-void tgl_do_import_chat_link (struct tgl_state *TLS, const char *link, int link_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-/* }}} */
-
-/* {{{ WORKING WITH USERS */
-
-// requests full info about user *id*.
-// if *offline_mode* is set no actual query is sent
-void tgl_do_get_user_info (struct tgl_state *TLS, tgl_user_id_t id, int offline_mode, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *U), void *callback_extra);
-
-// adds contact to contact list by phone number
-// user will be named *first_name* *last_name* in contact list
-// force should be set to 0
-void tgl_do_add_contact (struct tgl_state *TLS, const char *phone, int phone_len, const char *first_name, int first_name_len, const char *last_name, int last_name_len, int force, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, struct tgl_user *users[]), void *callback_extra);
-
-// deletes user *id* from contact list
-void tgl_do_del_contact (struct tgl_state *TLS, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// imports card exported by another user
-void tgl_do_import_card (struct tgl_state *TLS, int size, int *card, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *U), void *callback_extra);
-
-// blocks user
-void tgl_do_block_user (struct tgl_state *TLS, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// unblocks blocked user
-void tgl_do_unblock_user (struct tgl_state *TLS, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-/* }}} */
-
-/* {{{ WORKING WITH SECRET CHATS */
-
-// requests creation of secret chat with user *user_id*
-//void tgl_do_create_encr_chat_request (struct tgl_state *TLS, int user_id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_secret_chat *E), void *callback_extra);
-
-// accepts secret chat request
-// method can fail if another device will be first to accept it
-void tgl_do_accept_encr_chat_request (struct tgl_state *TLS, struct tgl_secret_chat *E, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_secret_chat *E), void *callback_extra);
-
-// sets ttl of secret chat
-void tgl_do_set_encr_chat_ttl (struct tgl_state *TLS, struct tgl_secret_chat *E, int ttl, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-// returns secret chat fingerprint
-int tgl_do_visualize_key (struct tgl_state *TLS, tgl_secret_chat_id_t id, unsigned char buf[16]);
-
-// requests creation of secret chat with user id
-void tgl_do_create_secret_chat (struct tgl_state *TLS, tgl_user_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_secret_chat *E), void *callback_extra);
-/* }}} */
-
-/* {{{ WORKING WITH DIALOG LIST */
-
-// receives all dialogs (except secret chats) from offset=*offset* with limit=*limit*
-// dialogs are sorted by last message received
-// if limit is > 100 there is a (small) chance of one dialog received twice
-void tgl_do_get_dialog_list (struct tgl_state *TLS, int limit, int offset, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, tgl_peer_id_t peers[], int last_msg_id[], int unread_count[]), void *callback_extra);
-
-// resolves username
-void tgl_do_contact_search (struct tgl_state *TLS, const char *name, int name_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_user *U), void *callback_extra);
-
-// requests contact list
-void tgl_do_update_contact_list (struct tgl_state *TLS, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, struct tgl_user *contacts[]), void *callback_extra);
-
-/* }}} */
-
-/* {{{ WORKING WITH ONE DIALOG */
-
-// marks all inbound messages from peer id as read
-void tgl_do_mark_read (struct tgl_state *TLS, tgl_peer_id_t id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// requests last *limit* from offset *offset* (offset = 0 means most recent) messages from dialog with peer id
-// if offline_mode=1 then no actual query is sent
-// only locally cached messages returned
-// also marks messages from this chat as read
-void tgl_do_get_history (struct tgl_state *TLS, tgl_peer_id_t id, int offset, int limit, int offline_mode, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, struct tgl_message *list[]), void *callback_extra);
-
-// sends typing event to chat
-// set status=tgl_typing_typing for default typing event
-void tgl_do_send_typing (struct tgl_state *TLS, tgl_peer_id_t id, enum tgl_typing_status status, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-/* }}} */
-
-/* {{{ WORKING WITH MEDIA */
-
-// loads photo/document/document_thumb to downloads directory
-// if file is presented it is not redownloaded (but if it is shortened tail will be downloaded)
-// returns file name in callback
-void tgl_do_load_photo (struct tgl_state *TLS, struct tgl_photo *photo, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *file_name), void *callback_extra);
-void tgl_do_load_encr_document (struct tgl_state *TLS, struct tgl_encr_document *V, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *file_name), void *callback_extra);
-void tgl_do_load_document (struct tgl_state *TLS, struct tgl_document *V, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *file_name), void *callback_extra);
-void tgl_do_load_document_thumb (struct tgl_state *TLS, struct tgl_document *video, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *file_name), void *callback_extra);
-void tgl_do_load_video (struct tgl_state *TLS, struct tgl_document *V, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *filename), void *callback_extra);
-void tgl_do_load_audio (struct tgl_state *TLS, struct tgl_document *V, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *filename), void *callback_extra);
-
-
-// loads file by location. Use only for small files!
-void tgl_do_load_file_location (struct tgl_state *TLS, struct tgl_file_location *FL, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *file_name), void *callback_extra);
-
-/* }}} */
-
-
-/* {{{ ANOTHER MESSAGES FUNCTIONS */
-// search messages with ids *from* .. *to* in dialog id
-// id type of id is UNKNOWN uses global search (in all dialogs) instead
-// if *from* or *to* is means *from*=0 and *to*=+INF
-// return up to *limit* entries from offset=*offset*
-void tgl_do_msg_search (struct tgl_state *TLS, tgl_user_or_chat_id_t id, int from, int to, int limit, int offset, const char *query, int query_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, int size, struct tgl_message *list[]), void *callback_extra);
-
-// deletes message *id*
-void tgl_do_delete_msg (struct tgl_state *TLS, long long msg_id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-
-// gets message by *id*
-void tgl_do_get_message (struct tgl_state *TLS, long long id, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, struct tgl_message *M), void *callback_extra);
-
-/* }}} */
-
-
-/* {{{ EXTENDED QUERIES USE WITH CAUTION */
-// sends query with extended text syntax
-// use only for debug or when you known what are you doing
-// since answer is not interpretated by library in any way
-void tgl_do_send_extf (struct tgl_state *TLS, const char *data, int data_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success, const char *data), void *callback_extra);
-int tglf_extf_autocomplete (struct tgl_state *TLS, const char *text, int text_len, int index, char **R, char *data, int data_len);
-struct paramed_type *tglf_extf_store (struct tgl_state *TLS, const char *data, int data_len);
-char *tglf_extf_fetch (struct tgl_state *TLS, struct paramed_type *T);
-/* }}} */
-
-/* {{{ BOT */
-void tgl_do_start_bot (struct tgl_state *TLS, tgl_peer_id_t bot, tgl_peer_id_t chat, const char *str, int str_len, void (*callback)(struct tgl_state *TLS, void *callback_extra, int success), void *callback_extra);
-/* }}} */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/protocols/Telegram/src/tgl/tools.c b/protocols/Telegram/src/tgl/tools.c
deleted file mode 100644
index 03b89d0523..0000000000
--- a/protocols/Telegram/src/tgl/tools.c
+++ /dev/null
@@ -1,406 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#define _GNU_SOURCE
-
-#include <assert.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <openssl/err.h>
-#include <openssl/rand.h>
-#include "../../../../libs/zlib/src/zlib.h"
-#include <time.h>
-#if defined(WIN32) || defined(_WIN32)
-#include <sys/timeb.h>
-#include <sys/types.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#else
-#include <sys/time.h>
-#endif // _WIN32
-
-//#include "interface.h"
-#include "tools.h"
-
-#ifdef __MACH__
-#include <mach/clock.h>
-#include <mach/mach.h>
-#endif
-
-#if defined(__MACH__) || defined(WIN32) || defined(_WIN32)
-#define CLOCK_REALTIME 0
-#define CLOCK_MONOTONIC 1
-#endif
-
-#ifdef VALGRIND_FIXES
-#include "valgrind/memcheck.h"
-#endif
-
-#define RES_PRE 8
-#define RES_AFTER 8
-#define MAX_BLOCKS 1000000
-static void *blocks[MAX_BLOCKS];
-static void *free_blocks[MAX_BLOCKS];
-static int used_blocks;
-static int free_blocks_cnt;
-
-static long long total_allocated_bytes;
-
-#if defined(WIN32) || defined(_WIN32)
-#define exp7 10000000i64 //1E+7 //C-file part
-#define exp9 1000000000i64 //1E+9
-#define w2ux 116444736000000000i64 //1.jan1601 to 1.jan1970
-#define __need_clock_t
-#include <time.h>
-
-int gettimeofday(struct timeval* t, void* timezone) {
- struct _timeb timebuffer;
- _ftime_s(&timebuffer);
- t->tv_sec = (long)timebuffer.time;
- t->tv_usec = 1000 * timebuffer.millitm;
- return 0;
-}
-
-
-struct tms {
- clock_t tms_utime;
- clock_t tms_stime;
-
- clock_t tms_cutime;
- clock_t tms_cstime;
-};
-
-clock_t times(struct tms *__buffer) {
- __buffer->tms_utime = clock();
- __buffer->tms_stime = 0;
- __buffer->tms_cstime = 0;
- __buffer->tms_cutime = 0;
- return __buffer->tms_utime;
-}
-
-typedef long long suseconds_t;
-
-int vasprintf(char ** __restrict ret, const char * __restrict format, va_list ap) {
- int len;
- /* Get Length */
- len = _vsnprintf_s(NULL, 0, 0, format, ap);
- if (len < 0) return -1;
-
- /* +1 for \0 terminator. */
- *ret = malloc(len + 1);
- if (!*ret) return -1;
-
- _vsnprintf_s(*ret, len + 1, len + 1, format, ap);
-
- /* Terminate explicitly */
- (*ret)[len] = '\0';
- return len;
-}
-#endif // WIN32
-
-void logprintf (const char *format, ...) __attribute__ ((format (printf, 1, 2), weak));
-void logprintf (const char *format, ...) {
- va_list ap;
- va_start (ap, format);
- vfprintf (stdout, format, ap);
- va_end (ap);
-}
-
-//extern int verbosity;
-
-//static long long total_allocated_bytes;
-
-int tgl_snprintf (char *buf, int len, const char *format, ...) {
- va_list ap;
- va_start (ap, format);
- int r = vsnprintf (buf, len, format, ap);
- va_end (ap);
- assert (r <= len && "tsnprintf buffer overflow");
- return r;
-}
-
-int tgl_asprintf (char **res, const char *format, ...) {
- va_list ap;
- va_start (ap, format);
- int r = vasprintf (res, format, ap);
- assert (r >= 0);
- va_end (ap);
- void *rs = talloc (strlen (*res) + 1);
- memcpy (rs, *res, strlen (*res) + 1);
- free (*res);
- *res = rs;
- return r;
-}
-
-void tgl_free_debug (void *ptr, int size __attribute__ ((unused))) {
- total_allocated_bytes -= size;
- (char*)ptr -= RES_PRE;
- if (size != (int)((*(int *)ptr) ^ 0xbedabeda)) {
- logprintf ("size = %d, ptr = %d\n", size, (*(int *)ptr) ^ 0xbedabeda);
- }
- assert (*(int *)ptr == (int)((size) ^ 0xbedabeda));
- assert (*(int *)((char *)ptr + RES_PRE + size) == (int)((size) ^ 0x7bed7bed));
- assert (*(int *)((char *)ptr + 4) == size);
- int block_num = *(int *)((char*)ptr + 4 + RES_PRE + size);
- if (block_num >= used_blocks) {
- logprintf ("block_num = %d, used = %d\n", block_num, used_blocks);
- }
- assert (block_num < used_blocks);
- if (block_num < used_blocks - 1) {
- void *p = blocks[used_blocks - 1];
- int s = (*(int *)p) ^ 0xbedabeda;
- *(int *)((char *)p + 4 + RES_PRE + s) = block_num;
- blocks[block_num] = p;
- }
- blocks[--used_blocks] = 0;
- memset (ptr, 0, size + RES_PRE + RES_AFTER);
- *(int *)ptr = size + 12;
- free_blocks[free_blocks_cnt ++] = ptr;
-}
-
-void tgl_free_release (void *ptr, int size) {
- memset (ptr, 0, size);
- free (ptr);
-}
-
-
-
-void *tgl_realloc_debug (void *ptr, size_t old_size __attribute__ ((unused)), size_t size) {
- void *p = talloc (size);
- memcpy (p, ptr, size >= old_size ? old_size : size);
- tfree (ptr, old_size);
- return p;
-}
-
-void *tgl_realloc_release (void *ptr, size_t old_size __attribute__ ((unused)), size_t size) {
- void *p = realloc (ptr, size);
- ensure_ptr (p);
- return p;
-}
-
-void *tgl_alloc_debug (size_t size) {
- total_allocated_bytes += size;
- void *p = malloc (size + RES_PRE + RES_AFTER);
- ensure_ptr (p);
- *(int *)p = size ^ 0xbedabeda;
- *(int *)((char *)p + 4) = size;
- *(int *)((char *)p + RES_PRE + size) = size ^ 0x7bed7bed;
- *(int *)((char *)p + RES_AFTER + 4 + size) = used_blocks;
- blocks[used_blocks ++] = p;
-
- //tcheck ();
- return (char *)p + 8;
-}
-
-void *tgl_alloc_release (size_t size) {
- void *p = malloc (size);
- ensure_ptr (p);
- return p;
-}
-
-void *tgl_alloc0 (size_t size) {
- void *p = talloc (size);
- memset (p, 0, size);
- return p;
-}
-
-char *tgl_strdup (const char *s) {
- int l = strlen (s);
- char *p = talloc (l + 1);
-#if defined(WIN32) || defined(_WIN32)
- ZeroMemory(p, l + 1);
-#endif
- memcpy (p, s, l + 1);
- return p;
-}
-
-char *tgl_strndup (const char *s, size_t n) {
- size_t l = 0;
- for (l = 0; l < n && s[l]; l++) { }
- char *p = talloc (l + 1);
- memcpy (p, s, l);
- p[l] = 0;
- return p;
-}
-
-void *tgl_memdup (const void *s, size_t n) {
- void *r = talloc (n);
- memcpy (r, s, n);
- return r;
-}
-
-
-int tgl_inflate (void *input, int ilen, void *output, int olen) {
- z_stream strm;
- memset (&strm, 0, sizeof (strm));
- assert (inflateInit2 (&strm, 16 + MAX_WBITS) == Z_OK);
- strm.avail_in = ilen;
- strm.next_in = input;
- strm.avail_out = olen ;
- strm.next_out = output;
- int err = inflate (&strm, Z_FINISH);
- int total_out = strm.total_out;
-
- if (err != Z_OK && err != Z_STREAM_END) {
- logprintf ( "inflate error = %d\n", err);
- logprintf ( "inflated %d bytes\n", (int) strm.total_out);
- total_out = 0;
- }
- inflateEnd (&strm);
- return total_out;
-}
-
-void tgl_check_debug (void) {
- int i;
- for (i = 0; i < used_blocks; i++) {
- void *ptr = blocks[i];
- int size = (*(int *)ptr) ^ 0xbedabeda;
- if (!(*(int *)((char *)ptr + 4) == size) ||
- !(*(int *)((char *)ptr + RES_PRE + size) == (size ^ 0x7bed7bed)) ||
- !(*(int *)((char *)ptr + RES_PRE + 4 + size) == i)) {
- logprintf ("Bad block at address %p (size %d, num %d)\n", ptr, size, i);
- assert (0 && "Bad block");
- }
- }
- for (i = 0; i < free_blocks_cnt; i++) {
- void *ptr = free_blocks[i];
- int l = *(int *)ptr;
- int j = 0;
- for (j = 0; j < l; j++) {
- if (*(char *)((char *)ptr + 4 + j)) {
- hexdump ((char *)ptr + 8, (char *)ptr + 8 + l + ((-l) & 3));
- logprintf ("Used freed memory size = %d. ptr = %p\n", l + 4 - RES_PRE - RES_AFTER, ptr);
- assert (0);
- }
- }
- }
- //logprintf ("ok. Used_blocks = %d. Free blocks = %d\n", used_blocks, free_blocks_cnt);
-}
-
-void tgl_exists_debug (void *ptr, int size) {
- (char *)ptr -= RES_PRE;
- if (size != (int)((*(int *)ptr) ^ 0xbedabeda)) {
- logprintf ("size = %d, ptr = %d\n", size, (*(int *)ptr) ^ 0xbedabeda);
- }
- assert (*(int *)ptr == (int)((size) ^ 0xbedabeda));
- assert (*(int *)((char *)ptr + RES_PRE + size) == (int)((size) ^ 0x7bed7bed));
- assert (*(int *)((char *)ptr + 4) == size);
- int block_num = *(int *)((char *)ptr + 4 + RES_PRE + size);
- if (block_num >= used_blocks) {
- logprintf ("block_num = %d, used = %d\n", block_num, used_blocks);
- }
- assert (block_num < used_blocks);
-}
-
-void tgl_exists_release (void *ptr, int size) {}
-void tgl_check_release (void) {}
-
-void tgl_my_clock_gettime (int clock_id, struct timespec *T) {
-#if defined(WIN32) || defined(_WIN32)
- static double ticks2nano;
- static __int64 tps = 0;
- __int64 tmp, curticks;
- _Bool real_time = (clock_id == CLOCK_REALTIME);
-
- QueryPerformanceFrequency((LARGE_INTEGER*)&tmp);
- if (tps != tmp) {
- tps = tmp;
- ticks2nano = (double)exp9 / tps;
- }
-
- if (clock_id == CLOCK_REALTIME)
- {
- __int64 wintime;
- GetSystemTimeAsFileTime((FILETIME*)&wintime);
- wintime -= w2ux;
- T->tv_sec = wintime / exp7;
- T->tv_nsec = wintime % exp7 * 100;
- }
- else
- {
- QueryPerformanceCounter((LARGE_INTEGER*)&curticks);
- T->tv_sec = (long)(curticks / tps);
- T->tv_nsec = (long)((double)(curticks % tps) * ticks2nano);
- }
-
- if (!(T->tv_nsec < exp9))
- {
- T->tv_sec++;
- T->tv_nsec -= exp9;
- }
-
-#elif defined( __MACH__)
- // We are ignoring MONOTONIC and hope time doesn't go back too often
- clock_serv_t cclock;
- mach_timespec_t mts;
- host_get_clock_service(mach_host_self(), CALENDAR_CLOCK, &cclock);
- clock_get_time(cclock, &mts);
- mach_port_deallocate(mach_task_self(), cclock);
- T->tv_sec = mts.tv_sec;
- T->tv_nsec = mts.tv_nsec;
-#else
- assert (clock_gettime(clock_id, T) >= 0);
-#endif
-}
-
-double tglt_get_double_time (void) {
- struct timespec tv;
- tgl_my_clock_gettime (CLOCK_REALTIME, &tv);
- return tv.tv_sec + 1e-9 * tv.tv_nsec;
-}
-
-void tglt_secure_random (void *s, int l) {
- if (RAND_bytes (s, l) <= 0) {
- /*if (allow_weak_random) {
- RAND_pseudo_bytes (s, l);
- } else {*/
- assert (0 && "End of random. If you want, you can start with -w");
- //}
- } else {
- #ifdef VALGRIND_FIXES
- VALGRIND_MAKE_MEM_DEFINED (s, l);
- VALGRIND_CHECK_MEM_IS_DEFINED (s, l);
- #endif
- }
-}
-
-struct tgl_allocator tgl_allocator_debug = {
- .alloc = tgl_alloc_debug,
- .realloc = tgl_realloc_debug,
- .free = tgl_free_debug,
- .check = tgl_check_debug,
- .exists = tgl_exists_debug
-};
-
-struct tgl_allocator tgl_allocator_release = {
- .alloc = tgl_alloc_release,
- .realloc = tgl_realloc_release,
- .free = tgl_free_release,
- .check = tgl_check_release,
- .exists = tgl_exists_release
-};
-
-struct tgl_allocator *tgl_allocator = &tgl_allocator_release;
diff --git a/protocols/Telegram/src/tgl/tools.h b/protocols/Telegram/src/tgl/tools.h
deleted file mode 100644
index 1d37914fea..0000000000
--- a/protocols/Telegram/src/tgl/tools.h
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-
-#ifndef __TOOLS_H__
-#define __TOOLS_H__
-#include <time.h>
-#include <openssl/err.h>
-#include <assert.h>
-#include "tgl.h"
-
-#define talloc tgl_allocator->alloc
-#define talloc0 tgl_alloc0
-#define tfree tgl_allocator->free
-#define tfree_str tgl_free_str
-#define tfree_secure tgl_free_secure
-#define trealloc tgl_allocator->realloc
-#define tcheck tgl_allocator->check
-#define texists tgl_allocator->exists
-#define tstrdup tgl_strdup
-#define tmemdup tgl_memdup
-#define tstrndup tgl_strndup
-#define tasprintf tgl_asprintf
-#define tsnprintf tgl_snprintf
-
-#if(_MSC_VER < 1900)
-struct _timespec32
-{
- __time32_t tv_sec;
- long tv_nsec;
-};
-
-struct _timespec64
-{
- __time64_t tv_sec;
- long tv_nsec;
-};
-
-#ifndef _CRT_NO_TIME_T
-struct timespec
-{
- time_t tv_sec; // Seconds - >= 0
- long tv_nsec; // Nanoseconds - [0, 999999999]
-};
-#endif
-#endif
-
-extern struct tgl_allocator *tgl_allocator;
-double tglt_get_double_time (void);
-
-int tgl_inflate (void *input, int ilen, void *output, int olen);
-//void ensure (int r);
-//void ensure_ptr (void *p);
-
-static inline void out_of_memory (void) {
- fprintf (stderr, "Out of memory\n");
- exit (1);
-}
-
-static inline void ensure (int r) {
- if (!r) {
- fprintf (stderr, "Open SSL error\n");
- ERR_print_errors_fp (stderr);
- assert (0);
- }
-}
-
-static inline void ensure_ptr (void *p) {
- if (p == NULL) {
- out_of_memory ();
- }
-}
-
-void *tgl_alloc_debug (size_t size);
-void *tgl_alloc_release (size_t size);
-
-void *tgl_realloc_debug (void *ptr, size_t old_size, size_t size);
-void *tgl_realloc_release (void *ptr, size_t old_size, size_t size);
-
-void *tgl_alloc0 (size_t size);
-char *tgl_strdup (const char *s);
-char *tgl_strndup (const char *s, size_t n);
-
-void tgl_free_debug (void *ptr, int size);
-void tgl_free_release (void *ptr, int size);
-//void tgl_free_str (void *ptr);
-//void tgl_free_secure (void *ptr, int size);
-
-void tgl_check_debug (void);
-void tgl_exists_debug (void *ptr, int size);
-void tgl_check_release (void);
-void tgl_exists_release (void *ptr, int size);
-
-void *tgl_memdup (const void *s, size_t n);
-
-int tgl_snprintf (char *buf, int len, const char *format, ...) __attribute__ ((format (printf, 3, 4)));
-int tgl_asprintf (char **res, const char *format, ...) __attribute__ ((format (printf, 2, 3)));
-
-void tglt_secure_random (void *s, int l);
-void tgl_my_clock_gettime (int clock_id, struct timespec *T);
-
-static inline void tgl_free_str (void *ptr) {
- if (!ptr) { return; }
- tfree (ptr, strlen ((const char *)ptr) + 1);
-}
-
-static inline void tgl_free_secure (void *ptr, int size) {
- memset (ptr, 0, size);
- tfree (ptr, size);
-}
-
-static inline void hexdump (void *ptr, void *end_ptr) {
- int total = 0;
- unsigned char *bptr = (unsigned char *)ptr;
- while (bptr < (unsigned char *)end_ptr) {
- fprintf (stderr, "%02x", (int)*bptr);
- bptr ++;
- total ++;
- if (total == 16) {
- fprintf (stderr, "\n");
- total = 0;
- }
- }
- if (total) { fprintf (stderr, "\n"); }
-}
-
-
-#endif
diff --git a/protocols/Telegram/src/tgl/tree.h b/protocols/Telegram/src/tgl/tree.h
deleted file mode 100644
index 18feb3aed5..0000000000
--- a/protocols/Telegram/src/tgl/tree.h
+++ /dev/null
@@ -1,179 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-#ifndef __TREE_H__
-#define __TREE_H__
-#include <stdio.h>
-
-#include <memory.h>
-#include <assert.h>
-#include "tools.h"
-
-#pragma pack(push,4)
-#define DEFINE_TREE(X_NAME, X_TYPE, X_CMP, X_UNSET) \
-struct tree_ ## X_NAME { \
- struct tree_ ## X_NAME *left, *right;\
- X_TYPE x;\
- int y;\
-};\
-\
-static struct tree_ ## X_NAME *new_tree_node_ ## X_NAME (X_TYPE x, int y) {\
- struct tree_ ## X_NAME *T = talloc (sizeof (*T));\
- T->x = x;\
- T->y = y;\
- T->left = T->right = 0;\
- return T;\
-}\
-\
-static void delete_tree_node_ ## X_NAME (struct tree_ ## X_NAME *T) {\
- tfree (T, sizeof (*T));\
-}\
-\
-static void tree_split_ ## X_NAME (struct tree_ ## X_NAME *T, X_TYPE x, struct tree_ ## X_NAME **L, struct tree_ ## X_NAME **R) {\
- if (!T) {\
- *L = *R = 0;\
- } else {\
- int c = X_CMP (x, T->x);\
- if (c < 0) {\
- tree_split_ ## X_NAME (T->left, x, L, &T->left);\
- *R = T;\
- } else {\
- tree_split_ ## X_NAME (T->right, x, &T->right, R);\
- *L = T;\
- }\
- }\
-}\
-\
-static struct tree_ ## X_NAME *tree_insert_ ## X_NAME (struct tree_ ## X_NAME *T, X_TYPE x, int y) __attribute__ ((warn_unused_result,unused));\
-static struct tree_ ## X_NAME *tree_insert_ ## X_NAME (struct tree_ ## X_NAME *T, X_TYPE x, int y) {\
- if (!T) {\
- return new_tree_node_ ## X_NAME (x, y);\
- } else {\
- if (y > T->y) {\
- struct tree_ ## X_NAME *N = new_tree_node_ ## X_NAME (x, y);\
- tree_split_ ## X_NAME (T, x, &N->left, &N->right);\
- return N;\
- } else {\
- int c = X_CMP (x, T->x);\
- assert (c);\
- if (c < 0) { \
- T->left = tree_insert_ ## X_NAME (T->left, x, y);\
- } else { \
- T->right = tree_insert_ ## X_NAME (T->right, x, y);\
- } \
- return T; \
- }\
- }\
-}\
-\
-static struct tree_ ## X_NAME *tree_merge_ ## X_NAME (struct tree_ ## X_NAME *L, struct tree_ ## X_NAME *R) {\
- if (!L || !R) {\
- return L ? L : R;\
- } else {\
- if (L->y > R->y) {\
- L->right = tree_merge_ ## X_NAME (L->right, R);\
- return L;\
- } else {\
- R->left = tree_merge_ ## X_NAME (L, R->left);\
- return R;\
- }\
- }\
-}\
-\
-static struct tree_ ## X_NAME *tree_delete_ ## X_NAME (struct tree_ ## X_NAME *T, X_TYPE x) __attribute__ ((warn_unused_result,unused));\
-static struct tree_ ## X_NAME *tree_delete_ ## X_NAME (struct tree_ ## X_NAME *T, X_TYPE x) {\
- assert (T);\
- int c = X_CMP (x, T->x);\
- if (!c) {\
- struct tree_ ## X_NAME *N = tree_merge_ ## X_NAME (T->left, T->right);\
- delete_tree_node_ ## X_NAME (T);\
- return N;\
- } else {\
- if (c < 0) { \
- T->left = tree_delete_ ## X_NAME (T->left, x); \
- } else { \
- T->right = tree_delete_ ## X_NAME (T->right, x); \
- } \
- return T; \
- }\
-}\
-\
-static X_TYPE tree_get_min_ ## X_NAME (struct tree_ ## X_NAME *t) __attribute__ ((unused));\
-static X_TYPE tree_get_min_ ## X_NAME (struct tree_ ## X_NAME *T) {\
- if (!T) { return X_UNSET; } \
- while (T->left) { T = T->left; }\
- return T->x; \
-} \
-\
-static X_TYPE tree_lookup_ ## X_NAME (struct tree_ ## X_NAME *T, X_TYPE x) __attribute__ ((unused));\
-static X_TYPE tree_lookup_ ## X_NAME (struct tree_ ## X_NAME *T, X_TYPE x) {\
- int c;\
- while (T && (c = X_CMP (x, T->x))) {\
- T = (c < 0 ? T->left : T->right);\
- }\
- return T ? T->x : X_UNSET;\
-}\
-\
-static void tree_act_ ## X_NAME (struct tree_ ## X_NAME *T, void (*act)(X_TYPE)) __attribute__ ((unused));\
-static void tree_act_ ## X_NAME (struct tree_ ## X_NAME *T, void (*act)(X_TYPE)) {\
- if (!T) { return; } \
- tree_act_ ## X_NAME (T->left, act); \
- act (T->x); \
- tree_act_ ## X_NAME (T->right, act); \
-}\
-\
-static void tree_act_ex_ ## X_NAME (struct tree_ ## X_NAME *T, void (*act)(X_TYPE, void *), void *extra) __attribute__ ((unused));\
-static void tree_act_ex_ ## X_NAME (struct tree_ ## X_NAME *T, void (*act)(X_TYPE, void *), void *extra) {\
- if (!T) { return; } \
- tree_act_ex_ ## X_NAME (T->left, act, extra); \
- act (T->x, extra); \
- tree_act_ex_ ## X_NAME (T->right, act, extra); \
-}\
-\
-static int tree_count_ ## X_NAME (struct tree_ ## X_NAME *T) __attribute__ ((unused));\
-static int tree_count_ ## X_NAME (struct tree_ ## X_NAME *T) { \
- if (!T) { return 0; }\
- return 1 + tree_count_ ## X_NAME (T->left) + tree_count_ ## X_NAME (T->right); \
-}\
-static void tree_check_ ## X_NAME (struct tree_ ## X_NAME *T) __attribute__ ((unused));\
-static void tree_check_ ## X_NAME (struct tree_ ## X_NAME *T) { \
- if (!T) { return; }\
- if (T->left) { \
- assert (T->left->y <= T->y);\
- assert (X_CMP (T->left->x, T->x) < 0); \
- }\
- if (T->right) { \
- assert (T->right->y <= T->y);\
- assert (X_CMP (T->right->x, T->x) > 0); \
- }\
- tree_check_ ## X_NAME (T->left); \
- tree_check_ ## X_NAME (T->right); \
-}\
-static struct tree_ ## X_NAME *tree_clear_ ## X_NAME (struct tree_ ## X_NAME *T) __attribute__ ((unused));\
-static struct tree_ ## X_NAME *tree_clear_ ## X_NAME (struct tree_ ## X_NAME *T) { \
- if (!T) { return 0; }\
- tree_clear_ ## X_NAME (T->left); \
- tree_clear_ ## X_NAME (T->right); \
- delete_tree_node_ ## X_NAME (T); \
- return 0; \
-} \
-
-#define int_cmp(a,b) ((a) - (b))
-#pragma pack(pop)
-#endif
diff --git a/protocols/Telegram/src/tgl/updates.c b/protocols/Telegram/src/tgl/updates.c
deleted file mode 100644
index 0f4b209f54..0000000000
--- a/protocols/Telegram/src/tgl/updates.c
+++ /dev/null
@@ -1,668 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-#include "tgl.h"
-#include "updates.h"
-#include "mtproto-common.h"
-#include "tgl-binlog.h"
-#include "auto.h"
-#include "auto/auto-types.h"
-#include "auto/auto-skip.h"
-#include "auto/auto-fetch-ds.h"
-#include "auto/auto-free-ds.h"
-#include "tgl-structures.h"
-#include "tgl-methods-in.h"
-#include "tree.h"
-
-#include <assert.h>
-
-static void fetch_dc_option_new (struct tgl_state *TLS, struct tl_ds_dc_option *DS_DO) {
- vlogprintf (E_DEBUG, "id = %d, name = %.*s ip = %.*s port = %d\n", DS_LVAL (DS_DO->id), DS_RSTR (DS_DO->hostname), DS_RSTR (DS_DO->ip_address), DS_LVAL (DS_DO->port));
-
- bl_do_dc_option (TLS, DS_LVAL (DS_DO->id), DS_STR (DS_DO->hostname), DS_STR (DS_DO->ip_address), DS_LVAL (DS_DO->port));
-}
-
-int tgl_check_pts_diff (struct tgl_state *TLS, int pts, int pts_count) {
- vlogprintf (E_DEBUG - 1, "pts = %d, pts_count = %d\n", pts, pts_count);
- if (!TLS->pts) {
- return 1;
- }
- //assert (TLS->pts);
- if (pts < TLS->pts + pts_count) {
- vlogprintf (E_NOTICE, "Duplicate message with pts=%d\n", pts);
- return -1;
- }
- if (pts > TLS->pts + pts_count) {
- vlogprintf (E_NOTICE, "Hole in pts (pts = %d, count = %d, cur_pts = %d)\n", pts, pts_count, TLS->pts);
- tgl_do_get_difference (TLS, 0, 0, 0);
- return -1;
- }
- if (TLS->locks & TGL_LOCK_DIFF) {
- vlogprintf (E_DEBUG, "Update during get_difference. pts = %d\n", pts);
- return -1;
- }
- vlogprintf (E_DEBUG, "Ok update. pts = %d\n", pts);
- return 1;
-}
-
-int tgl_check_qts_diff (struct tgl_state *TLS, int qts, int qts_count) {
- vlogprintf (E_ERROR, "qts = %d, qts_count = %d\n", qts, qts_count);
- if (qts < TLS->qts + qts_count) {
- vlogprintf (E_NOTICE, "Duplicate message with qts=%d\n", qts);
- return -1;
- }
- if (qts > TLS->qts + qts_count) {
- vlogprintf (E_NOTICE, "Hole in qts (qts = %d, count = %d, cur_qts = %d)\n", qts, qts_count, TLS->qts);
- tgl_do_get_difference (TLS, 0, 0, 0);
- return -1;
- }
- if (TLS->locks & TGL_LOCK_DIFF) {
- vlogprintf (E_DEBUG, "Update during get_difference. qts = %d\n", qts);
- return -1;
- }
- vlogprintf (E_DEBUG, "Ok update. qts = %d\n", qts);
- return 1;
-}
-
-static int do_skip_seq (struct tgl_state *TLS, int seq) {
- if (!seq) {
- vlogprintf (E_DEBUG, "Ok update. seq = %d\n", seq);
- return 0;
- }
- if (TLS->seq) {
- if (seq <= TLS->seq) {
- vlogprintf (E_NOTICE, "Duplicate message with seq=%d\n", seq);
- return -1;
- }
- if (seq > TLS->seq + 1) {
- vlogprintf (E_NOTICE, "Hole in seq (seq = %d, cur_seq = %d)\n", seq, TLS->seq);
- //vlogprintf (E_NOTICE, "lock_diff = %s\n", (TLS->locks & TGL_LOCK_DIFF) ? "true" : "false");
- tgl_do_get_difference (TLS, 0, 0, 0);
- return -1;
- }
- if (TLS->locks & TGL_LOCK_DIFF) {
- vlogprintf (E_DEBUG, "Update during get_difference. seq = %d\n", seq);
- return -1;
- }
- vlogprintf (E_DEBUG, "Ok update. seq = %d\n", seq);
- return 0;
- } else {
- return -1;
- }
-}
-
-void tglu_work_update_new (struct tgl_state *TLS, int check_only, struct tl_ds_update *DS_U) {
- if (check_only > 0 || (TLS->locks & TGL_LOCK_DIFF)) {
- vlogprintf (E_DEBUG, "Update during get_difference. DROP\n");
- return;
- }
-
- if (DS_U->pts) {
- assert (DS_U->pts_count);
-
- if (!check_only && tgl_check_pts_diff (TLS, DS_LVAL (DS_U->pts), DS_LVAL (DS_U->pts_count)) <= 0) {
- return;
- }
- }
-
- if (DS_U->qts) {
- if (!check_only && tgl_check_qts_diff (TLS, DS_LVAL (DS_U->qts), 1) <= 0) {
- return;
- }
- }
-
- if (check_only > 0 && DS_U->magic != CODE_update_message_i_d) { return; }
- switch (DS_U->magic) {
- case CODE_update_new_message:
- {
- struct tgl_message *N = tgl_message_get (TLS, DS_LVAL (DS_U->id));
- int new = (!N || !(N->flags & TGLMF_CREATED));
- struct tgl_message *M = tglf_fetch_alloc_message_new (TLS, DS_U->message);
- assert (M);
- if (new) {
- bl_do_msg_update (TLS, M->id);
- }
- break;
- };
- case CODE_update_message_i_d:
- {
- struct tgl_message *M = tgl_message_get (TLS, DS_LVAL (DS_U->random_id));
- if (M) {
- tgls_insert_random2local (TLS, DS_LVAL (DS_U->random_id), DS_LVAL (DS_U->id));
- bl_do_set_msg_id (TLS, M, DS_LVAL (DS_U->id));
- }
- }
- break;
-/* case CODE_update_read_messages:
- {
- int n = DS_LVAL (DS_U->messages->cnt);
-
- int i;
- for (i = 0; i < n; i++) {
- struct tgl_message *M = tgl_message_get (TLS, DS_LVAL (DS_U->messages->data[i]));
- if (M) {
- tgl_peer_t *P;
- if (M->flags & TGLMF_OUT) {
- P = tgl_peer_get (TLS, M->to_id);
- if (P && (P->flags & TGLMF_CREATED)) {
- if (tgl_get_peer_type (P->id) == TGL_PEER_USER) {
- bl_do_user_new (TLS, tgl_get_peer_id (P->id), NULL, NULL, 0, NULL, 0, NULL, 0, NULL, 0, NULL, NULL, 0, NULL, 0, NULL, NULL, (int *)&M->id, TGL_FLAGS_UNCHANGED);
- } else {
- bl_do_chat_new (TLS, tgl_get_peer_id (P->id), NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (int *)&M->id, TGL_FLAGS_UNCHANGED);
- }
- }
- } else {
- if (tgl_get_peer_type (M->to_id) == TGL_PEER_USER) {
- P = tgl_peer_get (TLS, M->from_id);
- } else {
- P = tgl_peer_get (TLS, M->to_id);
- }
- if (P && (P->flags & TGLMF_CREATED)) {
- if (tgl_get_peer_type (P->id) == TGL_PEER_USER) {
- bl_do_user_new (TLS, tgl_get_peer_id (P->id), NULL, NULL, 0, NULL, 0, NULL, 0, NULL, 0, NULL, NULL, 0, NULL, 0, NULL, (int *)&M->id, NULL, TGL_FLAGS_UNCHANGED);
- } else {
- bl_do_chat_new (TLS, tgl_get_peer_id (P->id), NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (int *)&M->id, NULL, TGL_FLAGS_UNCHANGED);
- }
- }
- }
- }
- }
- }
- break;*/
- case CODE_update_user_typing:
- {
- tgl_peer_id_t id = TGL_MK_USER (DS_LVAL (DS_U->user_id));
- tgl_peer_t *U = tgl_peer_get (TLS, id);
- enum tgl_typing_status status = tglf_fetch_typing_new (DS_U->action);
-
- if (TLS->callback.type_notification && U) {
- TLS->callback.type_notification (TLS, (void *)U, status);
- }
- }
- break;
- case CODE_update_chat_user_typing:
- {
- tgl_peer_id_t chat_id = TGL_MK_CHAT (DS_LVAL (DS_U->chat_id));
- tgl_peer_id_t id = TGL_MK_USER (DS_LVAL (DS_U->user_id));
- tgl_peer_t *C = tgl_peer_get (TLS, chat_id);
- tgl_peer_t *U = tgl_peer_get (TLS, id);
- enum tgl_typing_status status = tglf_fetch_typing_new (DS_U->action);
-
- if (U && C) {
- if (TLS->callback.type_in_chat_notification) {
- TLS->callback.type_in_chat_notification (TLS, (void *)U, (void *)C, status);
- }
- }
- }
- break;
- case CODE_update_user_status:
- {
- tgl_peer_id_t user_id = TGL_MK_USER (DS_LVAL (DS_U->user_id));
- tgl_peer_t *U = tgl_peer_get (TLS, user_id);
- if (U) {
- tglf_fetch_user_status_new (TLS, &U->user.status, &U->user, DS_U->status);
-
- if (TLS->callback.status_notification) {
- TLS->callback.status_notification (TLS, (void *)U);
- }
- }
- }
- break;
- case CODE_update_user_name:
- {
- tgl_peer_id_t user_id = TGL_MK_USER (DS_LVAL (DS_U->user_id));
- tgl_peer_t *UC = tgl_peer_get (TLS, user_id);
- if (UC && (UC->flags & TGLPF_CREATED)) {
- bl_do_user_new (TLS, tgl_get_peer_id (user_id), NULL, NULL, 0, NULL, 0, NULL, 0, DS_STR (DS_U->username), NULL, DS_STR (DS_U->first_name), DS_STR (DS_U->last_name), NULL, NULL, NULL, NULL, TGL_FLAGS_UNCHANGED);
- }
- }
- break;
- case CODE_update_user_photo:
- {
- tgl_peer_id_t user_id = TGL_MK_USER (DS_LVAL (DS_U->user_id));
- tgl_peer_t *UC = tgl_peer_get (TLS, user_id);
-
- if (UC && (UC->flags & TGLUF_CREATED)) {
- bl_do_user_new (TLS, tgl_get_peer_id (user_id), NULL, NULL, 0, NULL, 0, NULL, 0, NULL, 0, NULL, NULL, 0, NULL, 0, DS_U->photo, NULL, NULL, NULL, TGL_FLAGS_UNCHANGED);
- }
- }
- break;
- case CODE_update_delete_messages:
- {
- }
- break;
- case CODE_update_chat_participants:
- {
- tgl_peer_id_t chat_id = TGL_MK_CHAT (DS_LVAL (DS_U->chat_id));
- tgl_peer_t *C = tgl_peer_get (TLS, chat_id);
- if (C && (C->flags & TGLPF_CREATED) && DS_U->participants->magic == CODE_chat_participants) {
- bl_do_chat_new (TLS, tgl_get_peer_id (chat_id), NULL, 0, NULL, NULL, DS_U->participants->version, (struct tl_ds_vector *)DS_U->participants->participants, NULL, NULL, NULL, NULL, NULL, TGL_FLAGS_UNCHANGED);
- }
- }
- break;
- case CODE_update_contact_registered:
- {
- tgl_peer_id_t user_id = TGL_MK_USER (DS_LVAL (DS_U->user_id));
- tgl_peer_t *U = tgl_peer_get (TLS, user_id);
- if (TLS->callback.user_registered && U) {
- TLS->callback.user_registered (TLS, (void *)U);
- }
- }
- break;
- case CODE_update_contact_link:
- {
- }
- break;
- /*case CODE_update_activation:
- {
- tgl_peer_id_t user_id = TGL_MK_USER (DS_LVAL (DS_U->user_id));
- tgl_peer_t *U = tgl_peer_get (TLS, user_id);
-
- if (TLS->callback.user_activated && U) {
- TLS->callback.user_activated (TLS, (void *)U);
- }
- }
- break;*/
- case CODE_update_new_authorization:
- {
- if (TLS->callback.new_authorization) {
- TLS->callback.new_authorization (TLS, DS_U->device->data, DS_U->location->data);
- }
- }
- break;
- case CODE_update_new_geo_chat_message:
- {
- }
- break;
- case CODE_update_new_encrypted_message:
- {
- struct tgl_message *M = tglf_fetch_alloc_encrypted_message_new (TLS, DS_U->encr_message);
- bl_do_msg_update (TLS, M->id);
- }
- break;
- case CODE_update_encryption:
- {
- struct tgl_secret_chat *E = tglf_fetch_alloc_encrypted_chat_new (TLS, DS_U->encr_chat);
- vlogprintf (E_DEBUG, "Secret chat state = %d\n", E->state);
- if (E->state == sc_ok) {
- tgl_do_send_encr_chat_layer (TLS, E);
- }
- }
- break;
- case CODE_update_encrypted_chat_typing:
- {
- tgl_peer_id_t id = TGL_MK_ENCR_CHAT (DS_LVAL (DS_U->chat_id));
- tgl_peer_t *P = tgl_peer_get (TLS, id);
-
- if (P) {
- if (TLS->callback.type_in_secret_chat_notification) {
- TLS->callback.type_in_secret_chat_notification (TLS, (void *)P);
- }
- }
- }
- break;
- case CODE_update_encrypted_messages_read:
- {
- tgl_peer_id_t id = TGL_MK_ENCR_CHAT (DS_LVAL (DS_U->chat_id));
- tgl_peer_t *P = tgl_peer_get (TLS, id);
-
- if (P && P->last) {
- struct tgl_message *M = P->last;
- while (M && (!(M->flags & TGLMF_OUT) || (M->flags & TGLMF_UNREAD))) {
- if (M->flags & TGLMF_OUT) {
- bl_do_create_message_encr_new (TLS, M->id, NULL, NULL, NULL, NULL, NULL, 0, NULL, NULL, NULL, M->flags & ~TGLMF_UNREAD);
- }
- M = M->next;
- }
- }
- }
- break;
- case CODE_update_chat_participant_add:
- {
- tgl_peer_id_t chat_id = TGL_MK_CHAT (DS_LVAL (DS_U->chat_id));
- tgl_peer_id_t user_id = TGL_MK_USER (DS_LVAL (DS_U->user_id));
- tgl_peer_id_t inviter_id = TGL_MK_USER (DS_LVAL (DS_U->inviter_id));
- int version = DS_LVAL (DS_U->version);
-
- tgl_peer_t *C = tgl_peer_get (TLS, chat_id);
- if (C && (C->flags & TGLPF_CREATED)) {
- bl_do_chat_add_user (TLS, &C->chat, version, tgl_get_peer_id (user_id), tgl_get_peer_id (inviter_id), (int)time (0));
- }
- }
- break;
- case CODE_update_chat_participant_delete:
- {
- tgl_peer_id_t chat_id = TGL_MK_CHAT (DS_LVAL (DS_U->chat_id));
- tgl_peer_id_t user_id = TGL_MK_USER (DS_LVAL (DS_U->user_id));
- int version = DS_LVAL (DS_U->version);
-
- tgl_peer_t *C = tgl_peer_get (TLS, chat_id);
- if (C && (C->flags & TGLPF_CREATED)) {
- bl_do_chat_del_user (TLS, &C->chat, version, tgl_get_peer_id (user_id));
- }
- }
- break;
- case CODE_update_dc_options:
- {
- int i;
- for (i = 0; i < DS_LVAL (DS_U->dc_options->cnt); i++) {
- fetch_dc_option_new (TLS, DS_U->dc_options->data[i]);
- }
- }
- break;
- case CODE_update_user_blocked:
- {
- int blocked = DS_BVAL (DS_U->blocked);
- tgl_peer_t *P = tgl_peer_get (TLS, TGL_MK_USER (DS_LVAL (DS_U->user_id)));
- if (P && (P->flags & TGLPF_CREATED)) {
- int flags = P->flags & 0xffff;
- if (blocked) {
- flags |= TGLUF_BLOCKED;
- } else {
- flags &= ~TGLUF_BLOCKED;
- }
- bl_do_user_new (TLS, tgl_get_peer_id (P->id), NULL, NULL, 0, NULL, 0, NULL, 0, NULL, 0, NULL, NULL, 0, NULL, 0, NULL, NULL, NULL, NULL, flags);
- }
- }
- break;
- case CODE_update_notify_settings:
- {
- }
- break;
- case CODE_update_service_notification:
- {
- vlogprintf (E_ERROR, "Notification %.*s: %.*s\n", DS_RSTR (DS_U->type), DS_RSTR (DS_U->message_text));
- if (TLS->callback.notification) {
- TLS->callback.notification (TLS, DS_U->type->data, DS_U->message_text->data);
- }
- }
- break;
- case CODE_update_privacy:
- vlogprintf (E_NOTICE, "privacy change update\n");
- break;
- case CODE_update_user_phone:
- {
- tgl_peer_t *U = tgl_peer_get (TLS, TGL_MK_USER (DS_LVAL (DS_U->user_id)));
- if (U && (U->flags & TGLPF_CREATED)) {
- bl_do_user_new (TLS, tgl_get_peer_id (U->id), NULL, NULL, 0, NULL, 0, DS_STR (DS_U->phone), NULL, 0, NULL, NULL, 0, NULL, 0, NULL, NULL, NULL, NULL, TGL_FLAGS_UNCHANGED);
- }
- }
- break;
- case CODE_update_read_history_inbox:
- {
- tgl_peer_id_t id = tglf_fetch_peer_id_new (TLS, DS_U->peer);
- tgl_peer_t *P = tgl_peer_get (TLS, id);
- if (P && (P->flags & TGLPF_CREATED)) {
- if (tgl_get_peer_type (P->id) == TGL_PEER_USER) {
- bl_do_user_new (TLS, tgl_get_peer_id (P->id), NULL, NULL, 0, NULL, 0, NULL, 0, NULL, 0, NULL, NULL, 0, NULL, 0, NULL, DS_U->max_id, NULL, NULL, TGL_FLAGS_UNCHANGED);
- } else {
- bl_do_chat_new (TLS, tgl_get_peer_id (P->id), NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, DS_U->max_id, NULL, TGL_FLAGS_UNCHANGED);
- }
- }
- }
- break;
- case CODE_update_read_history_outbox:
- {
- tgl_peer_id_t id = tglf_fetch_peer_id_new (TLS, DS_U->peer);
- tgl_peer_t *P = tgl_peer_get (TLS, id);
- if (P && (P->flags & TGLPF_CREATED)) {
- if (tgl_get_peer_type (P->id) == TGL_PEER_USER) {
- bl_do_user_new (TLS, tgl_get_peer_id (P->id), NULL, NULL, 0, NULL, 0, NULL, 0, NULL, 0, NULL, NULL, 0, NULL, 0, NULL, NULL, DS_U->max_id, NULL, TGL_FLAGS_UNCHANGED);
- } else {
- bl_do_chat_new (TLS, tgl_get_peer_id (P->id), NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, DS_U->max_id, TGL_FLAGS_UNCHANGED);
- }
- }
- }
- break;
- case CODE_update_web_page:
- {
- }
- break;
- case CODE_update_msg_update:
- {
- struct tgl_message *M = tgl_message_get (TLS, DS_LVAL (DS_U->id));
- if (M) {
- bl_do_msg_update (TLS, M->id);
- }
- }
- break;
- case CODE_update_read_messages_contents:
- break;
- default:
- assert (0);
- }
-
- if (check_only) { return; }
-
- if (DS_U->pts) {
- assert (DS_U->pts_count);
-
- bl_do_set_pts (TLS, DS_LVAL (DS_U->pts));
- }
- if (DS_U->qts) {
- bl_do_set_qts (TLS, DS_LVAL (DS_U->qts));
- }
-}
-
-void tglu_work_updates_new (struct tgl_state *TLS, int check_only, struct tl_ds_updates *DS_U) {
- if (check_only > 0 || (TLS->locks & TGL_LOCK_DIFF)) {
- return;
- }
-
- if (!check_only && do_skip_seq (TLS, DS_LVAL (DS_U->seq)) < 0) {
- return;
- }
- int i;
- for (i = 0; i < DS_LVAL (DS_U->users->cnt); i++) {
- tglf_fetch_alloc_user_new (TLS, DS_U->users->data[i]);
- }
- for (i = 0; i < DS_LVAL (DS_U->chats->cnt); i++) {
- tglf_fetch_alloc_chat_new (TLS, DS_U->chats->data[i]);
- }
- for (i = 0; i < DS_LVAL (DS_U->updates->cnt); i++) {
- tglu_work_update_new (TLS, check_only, DS_U->updates->data[i]);
- }
-
- if (check_only) { return; }
- bl_do_set_date (TLS, DS_LVAL (DS_U->date));
- bl_do_set_seq (TLS, DS_LVAL (DS_U->seq));
-}
-
-void tglu_work_updates_combined_new (struct tgl_state *TLS, int check_only, struct tl_ds_updates *DS_U) {
- if (check_only > 0 || (TLS->locks & TGL_LOCK_DIFF)) {
- return;
- }
-
- if (!check_only && do_skip_seq (TLS, DS_LVAL (DS_U->seq_start)) < 0) {
- return;
- }
-
- int i;
- for (i = 0; i < DS_LVAL (DS_U->users->cnt); i++) {
- tglf_fetch_alloc_user_new (TLS, DS_U->users->data[i]);
- }
- for (i = 0; i < DS_LVAL (DS_U->chats->cnt); i++) {
- tglf_fetch_alloc_chat_new (TLS, DS_U->chats->data[i]);
- }
- for (i = 0; i < DS_LVAL (DS_U->updates->cnt); i++) {
- tglu_work_update_new (TLS, check_only, DS_U->updates->data[i]);
- }
-
- if (check_only) { return; }
- bl_do_set_date (TLS, DS_LVAL (DS_U->date));
- bl_do_set_seq (TLS, DS_LVAL (DS_U->seq));
-}
-
-void tglu_work_update_short_message_new (struct tgl_state *TLS, int check_only, struct tl_ds_updates *DS_U) {
- if (check_only > 0 || (TLS->locks & TGL_LOCK_DIFF)) {
- return;
- }
-
- if (!check_only && tgl_check_pts_diff (TLS, DS_LVAL (DS_U->pts), DS_LVAL (DS_U->pts_count)) <= 0) {
- return;
- }
-
- if (check_only > 0) { return; }
-
- struct tgl_message *N = tgl_message_get (TLS, DS_LVAL (DS_U->id));
- int new = (!N || !(N->flags & TGLMF_CREATED));
-
- struct tgl_message *M = tglf_fetch_alloc_message_short_new (TLS, DS_U);
- assert (M);
-
- if (check_only > 0 || (TLS->locks & TGL_LOCK_DIFF)) {
- return;
- }
-
- if (new) {
- bl_do_msg_update (TLS, M->id);
- }
-
- if (check_only) { return; }
- bl_do_set_pts (TLS, DS_LVAL (DS_U->pts));
-}
-
-void tglu_work_update_short_chat_message_new (struct tgl_state *TLS, int check_only, struct tl_ds_updates *DS_U) {
- if (check_only > 0 || (TLS->locks & TGL_LOCK_DIFF)) {
- return;
- }
-
- if (!check_only && tgl_check_pts_diff (TLS, DS_LVAL (DS_U->pts), DS_LVAL (DS_U->pts_count)) <= 0) {
- return;
- }
-
- if (check_only > 0) { return; }
-
- struct tgl_message *N = tgl_message_get (TLS, DS_LVAL (DS_U->id));
- int new = (!N || !(N->flags & TGLMF_CREATED));
-
- struct tgl_message *M = tglf_fetch_alloc_message_short_chat_new (TLS, DS_U);
- assert (M);
-
- if (check_only > 0 || (TLS->locks & TGL_LOCK_DIFF)) {
- return;
- }
-
- if (new) {
- bl_do_msg_update (TLS, M->id);
- }
-
- if (check_only) { return; }
- bl_do_set_pts (TLS, DS_LVAL (DS_U->pts));
-}
-
-void tglu_work_updates_to_long_new (struct tgl_state *TLS, int check_only, struct tl_ds_updates *DS_U) {
- if (check_only > 0 || (TLS->locks & TGL_LOCK_DIFF)) {
- return;
- }
- vlogprintf (E_NOTICE, "updates too long... Getting difference\n");
- if (check_only) { return; }
- tgl_do_get_difference (TLS, 0, 0, 0);
-}
-
-void tglu_work_update_short_new (struct tgl_state *TLS, int check_only, struct tl_ds_updates *DS_U) {
- if (check_only > 0 || (TLS->locks & TGL_LOCK_DIFF)) {
- return;
- }
- tglu_work_update_new (TLS, check_only, DS_U->update);
-}
-
-void tglu_work_any_updates_new (struct tgl_state *TLS, int check_only, struct tl_ds_updates *DS_U) {
- if (check_only > 0 || (TLS->locks & TGL_LOCK_DIFF)) {
- return;
- }
- switch (DS_U->magic) {
- case CODE_updates_too_long:
- tglu_work_updates_to_long_new (TLS, check_only, DS_U);
- return;
- case CODE_update_short_message:
- tglu_work_update_short_message_new (TLS, check_only, DS_U);
- return;
- case CODE_update_short_chat_message:
- tglu_work_update_short_chat_message_new (TLS, check_only, DS_U);
- return;
- case CODE_update_short:
- tglu_work_update_short_new (TLS, check_only, DS_U);
- return;
- case CODE_updates_combined:
- tglu_work_updates_combined_new (TLS, check_only, DS_U);
- return;
- case CODE_updates:
- tglu_work_updates_new (TLS, check_only, DS_U);
- return;
- default:
- assert (0);
- }
-}
-
-void tglu_work_any_updates (struct tgl_state *TLS) {
- struct tl_ds_updates *DS_U = fetch_ds_type_updates (TYPE_TO_PARAM (updates));
- assert (DS_U);
- tglu_work_any_updates_new (TLS, 1, DS_U);
- tglu_work_any_updates_new (TLS, 0, DS_U);
- free_ds_type_updates (DS_U, TYPE_TO_PARAM (updates));
-}
-
-#define user_cmp(a,b) (tgl_get_peer_id ((a)->id) - tgl_get_peer_id ((b)->id))
-DEFINE_TREE(user, struct tgl_user *,user_cmp,0)
-
-static void notify_status (struct tgl_user *U, void *ex) {
- struct tgl_state *TLS = ex;
- if (TLS->callback.user_status_update) {
- TLS->callback.user_status_update (TLS, U);
- }
-}
-
-static void status_notify (struct tgl_state *TLS, void *arg) {
- tree_act_ex_user (TLS->online_updates, notify_status, TLS);
- tree_clear_user (TLS->online_updates);
- TLS->online_updates = NULL;
- TLS->timer_methods->free (TLS->online_updates_timer);
- TLS->online_updates_timer = NULL;
-}
-
-void tgl_insert_status_update (struct tgl_state *TLS, struct tgl_user *U) {
- if (!tree_lookup_user (TLS->online_updates, U)) {
- TLS->online_updates = tree_insert_user (TLS->online_updates, U, lrand48 ());
- }
- if (!TLS->online_updates_timer) {
- TLS->online_updates_timer = TLS->timer_methods->alloc (TLS, status_notify, 0);
- TLS->timer_methods->insert (TLS->online_updates_timer, 0);
- }
-}
-
-static void user_expire (struct tgl_state *TLS, void *arg) {
- struct tgl_user *U = arg;
- TLS->timer_methods->free (U->status.ev);
- U->status.ev = 0;
- U->status.online = -1;
- U->status.when = (int)tglt_get_double_time ();
- tgl_insert_status_update (TLS, U);
-}
-
-void tgl_insert_status_expire (struct tgl_state *TLS, struct tgl_user *U) {
- assert (!U->status.ev);
- U->status.ev = TLS->timer_methods->alloc (TLS, user_expire, U);
- TLS->timer_methods->insert (U->status.ev, U->status.when - tglt_get_double_time ());
-}
-
-void tgl_remove_status_expire (struct tgl_state *TLS, struct tgl_user *U) {
- TLS->timer_methods->free (U->status.ev);
- U->status.ev = 0;
-}
diff --git a/protocols/Telegram/src/tgl/updates.h b/protocols/Telegram/src/tgl/updates.h
deleted file mode 100644
index 98f4654544..0000000000
--- a/protocols/Telegram/src/tgl/updates.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- This file is part of tgl-library
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Copyright Vitaly Valtman 2013-2015
-*/
-
-#ifndef __UPDATES_H__
-#define __UPDATES_H__
-struct tl_ds_updates;
-struct tl_ds_update;
-void tgl_insert_status_update (struct tgl_state *TLS, struct tgl_user *U);
-void tgl_insert_status_expire (struct tgl_state *TLS, struct tgl_user *U);
-void tgl_remove_status_expire (struct tgl_state *TLS, struct tgl_user *U);
-
-int tgl_check_pts_diff (struct tgl_state *TLS, int pts, int pts_count);
-void tglu_work_update_new (struct tgl_state *TLS, int check_only, struct tl_ds_update *DS_U);
-void tglu_work_updates_new (struct tgl_state *TLS, int check_only, struct tl_ds_updates *DS_U);
-void tglu_work_any_updates (struct tgl_state *TLS);
-void tglu_work_any_updates_new (struct tgl_state *TLS, int check_only, struct tl_ds_updates *DS_U);
-#endif
diff --git a/protocols/Telegram/src/version.h b/protocols/Telegram/src/version.h
deleted file mode 100644
index 74e455cd3c..0000000000
--- a/protocols/Telegram/src/version.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#define __MAJOR_VERSION 0
-#define __MINOR_VERSION 1
-#define __RELEASE_NUM 0
-#define __BUILD_NUM 0
-
-#include <stdver.h>
-
-#define __PLUGIN_NAME "Telegram protocol"
-#define __FILENAME "Telegram.dll"
-#define __DESCRIPTION ""
-#define __AUTHOR "Miranda NG Team"
-#define __AUTHOREMAIL ""
-#define __AUTHORWEB "https://miranda-ng.org/p/Telegram/"
-#define __COPYRIGHT "© 2015 Miranda NG Team"
diff --git a/protocols/Telegram/telegram.vcxproj b/protocols/Telegram/telegram.vcxproj
deleted file mode 100644
index f5d251d8aa..0000000000
--- a/protocols/Telegram/telegram.vcxproj
+++ /dev/null
@@ -1,139 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectGuid>{8f81f4b8-2b96-447b-8ab8-f203aac6c4eb}</ProjectGuid>
- <ProjectName>Telegram</ProjectName>
- </PropertyGroup>
- <ImportGroup Label="PropertySheets">
- <Import Project="$(ProjectDir)..\..\build\vc.common\plugin.props" />
- </ImportGroup>
- <ItemDefinitionGroup>
- <ClCompile>
- <ExceptionHandling>Sync</ExceptionHandling>
- <AdditionalIncludeDirectories>openssl\include;..\..\libs\libevent\include;..\..\libs\libevent\src\WIN32-Code\nmake;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>HAVE_CONFIG_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <DisableSpecificWarnings>4995;4996;4312;4091;4702;4204;4221;4201;4706;4127;%(DisableSpecificWarnings)</DisableSpecificWarnings>
- </ClCompile>
- <Link>
- <AdditionalDependencies>libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClInclude Include="src\tgl\auto.h" />
- <ClInclude Include="src\tgl\mtproto-client.h" />
- <ClInclude Include="src\tgl\mtproto-common.h" />
- <ClInclude Include="src\tgl\mtproto-utils.h" />
- <ClInclude Include="src\tgl\no-preview.h" />
- <ClInclude Include="src\tgl\queries.h" />
- <ClInclude Include="src\tgl\tg-mime-types.h" />
- <ClInclude Include="src\tgl\tgl-binlog.h" />
- <ClInclude Include="src\tgl\tgl-fetch.h" />
- <ClInclude Include="src\tgl\tgl-inner.h" />
- <ClInclude Include="src\tgl\tgl-layout.h" />
- <ClInclude Include="src\tgl\tgl-methods-in.h" />
- <ClInclude Include="src\tgl\tgl-net-inner.h" />
- <ClInclude Include="src\tgl\tgl-net.h" />
- <ClInclude Include="src\tgl\tgl-structures.h" />
- <ClInclude Include="src\tgl\tgl-timers.h" />
- <ClInclude Include="src\tgl\tgl.h" />
- <ClInclude Include="src\tgl\tools.h" />
- <ClInclude Include="src\tgl\tree.h" />
- <ClInclude Include="src\tgl\updates.h" />
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="src\tgl\auto\auto-autocomplete.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-fetch-ds.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-fetch.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-free-ds.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-print-ds.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-skip.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-store-ds.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-store.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-types.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\binlog.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\mime-types.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\mtproto-client.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\mtproto-common.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\mtproto-utils.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\queries.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\structures.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\tg-mime-types.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\tgl-net.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\tgl-timers.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\tgl.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\tools.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\tgl\updates.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- </ItemGroup>
- <ItemGroup>
- <ProjectReference Include="..\..\libs\zlib\zlib.vcxproj">
- <Project>{e2a369cd-eda3-414f-8ad0-e732cd7ee68c}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
- <ProjectReference Include="..\..\libs\libevent\libevent.vcxproj">
- <Project>{46D53888-E60E-32A7-91EB-6336DE0D84D8}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
- </ItemGroup>
-</Project> \ No newline at end of file
diff --git a/protocols/Telegram/telegram.vcxproj.filters b/protocols/Telegram/telegram.vcxproj.filters
deleted file mode 100644
index 87e0c32533..0000000000
--- a/protocols/Telegram/telegram.vcxproj.filters
+++ /dev/null
@@ -1,150 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <Import Project="$(ProjectDir)..\..\build\vc.common\common.filters" />
- <ItemGroup>
- <ClCompile Include="src\tgl\binlog.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\mime-types.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\mtproto-client.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\mtproto-common.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\mtproto-utils.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\queries.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\structures.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\tgl.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\tgl-net.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\tgl-timers.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\tg-mime-types.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\tools.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\updates.c">
- <Filter>Source Files\tgl</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-autocomplete.c">
- <Filter>Source Files\tgl\auto</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-fetch.c">
- <Filter>Source Files\tgl\auto</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-fetch-ds.c">
- <Filter>Source Files\tgl\auto</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-free-ds.c">
- <Filter>Source Files\tgl\auto</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-print-ds.c">
- <Filter>Source Files\tgl\auto</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-skip.c">
- <Filter>Source Files\tgl\auto</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-store.c">
- <Filter>Source Files\tgl\auto</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-store-ds.c">
- <Filter>Source Files\tgl\auto</Filter>
- </ClCompile>
- <ClCompile Include="src\tgl\auto\auto-types.c">
- <Filter>Source Files\tgl\auto</Filter>
- </ClCompile>
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include="src\tgl\auto.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\mtproto-client.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\mtproto-common.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\mtproto-utils.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\no-preview.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\queries.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tgl.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tgl-binlog.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tgl-fetch.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tgl-inner.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tgl-layout.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tgl-methods-in.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tgl-net.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tgl-net-inner.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tgl-structures.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tgl-timers.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tg-mime-types.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tools.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\tree.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- <ClInclude Include="src\tgl\updates.h">
- <Filter>Header Files\tgl</Filter>
- </ClInclude>
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="res\*.rc">
- <Filter>Resource Files</Filter>
- </ResourceCompile>
- </ItemGroup>
- <ItemGroup>
- <Filter Include="Header Files\tgl">
- <UniqueIdentifier>{0f259e4a-d103-4c0d-9961-50482af1310b}</UniqueIdentifier>
- </Filter>
- <Filter Include="Source Files\tgl">
- <UniqueIdentifier>{1da43714-dece-44ab-81fd-fadb968be26c}</UniqueIdentifier>
- </Filter>
- <Filter Include="Source Files\tgl\auto">
- <UniqueIdentifier>{0e669e36-12ed-48fb-ac6d-e317126f7380}</UniqueIdentifier>
- </Filter>
- </ItemGroup>
-</Project> \ No newline at end of file
diff --git a/protocols/WhatsApp/CMakeLists.txt b/protocols/WhatsApp/CMakeLists.txt
deleted file mode 100644
index cbca8a0ba4..0000000000
--- a/protocols/WhatsApp/CMakeLists.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-file(GLOB SOURCES "src/*.h" "src/WhatsAPI++/*.h" "src/*.cpp" "src/OpenSSL/*.c" "src/WhatsAPI++/*.cpp" "res/*.rc")
-set(TARGET WhatsApp)
-include(${CMAKE_SOURCE_DIR}/cmake/plugin.cmake)
-add_subdirectory(proto_whatsapp) \ No newline at end of file
diff --git a/protocols/WhatsApp/WhatsApp.vcxproj b/protocols/WhatsApp/WhatsApp.vcxproj
deleted file mode 100644
index ee43a66701..0000000000
--- a/protocols/WhatsApp/WhatsApp.vcxproj
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectGuid>{13E796AD-BEA4-4213-A1B8-E18E2397E544}</ProjectGuid>
- <ProjectName>WhatsApp</ProjectName>
- </PropertyGroup>
- <ImportGroup Label="PropertySheets">
- <Import Project="$(ProjectDir)..\..\build\vc.common\plugin.props" />
- </ImportGroup>
- <ItemGroup>
- <ClCompile Include="src\OpenSSL\*.c">
- <PrecompiledHeader>NotUsing</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="src\WhatsAPI++\*.cpp">
- <PrecompiledHeaderFile>../stdafx.h</PrecompiledHeaderFile>
- </ClCompile>
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include="src\WhatsAPI++\*.h" />
- </ItemGroup>
- <ItemDefinitionGroup>
- <ClCompile>
- <ExceptionHandling>Sync</ExceptionHandling>
- </ClCompile>
- </ItemDefinitionGroup>
-</Project> \ No newline at end of file
diff --git a/protocols/WhatsApp/WhatsApp.vcxproj.filters b/protocols/WhatsApp/WhatsApp.vcxproj.filters
deleted file mode 100644
index de5ad9f66c..0000000000
--- a/protocols/WhatsApp/WhatsApp.vcxproj.filters
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <Import Project="$(ProjectDir)..\..\build\vc.common\common.filters" />
-</Project> \ No newline at end of file
diff --git a/protocols/WhatsApp/proto_whatsapp/CMakeLists.txt b/protocols/WhatsApp/proto_whatsapp/CMakeLists.txt
deleted file mode 100644
index 5193619806..0000000000
--- a/protocols/WhatsApp/proto_whatsapp/CMakeLists.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-set(TARGET Proto_WhatsApp)
-include(${CMAKE_SOURCE_DIR}/cmake/icons.cmake) \ No newline at end of file
diff --git a/protocols/WhatsApp/proto_whatsapp/Proto_WhatsApp.vcxproj b/protocols/WhatsApp/proto_whatsapp/Proto_WhatsApp.vcxproj
deleted file mode 100644
index 0d33d3423f..0000000000
--- a/protocols/WhatsApp/proto_whatsapp/Proto_WhatsApp.vcxproj
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>Proto_WhatsApp</ProjectName>
- <ProjectGuid>{64A2B403-90AF-4CF8-BC69-4E8D33872D64}</ProjectGuid>
- </PropertyGroup>
- <ImportGroup Label="PropertySheets">
- <Import Project="$(ProjectDir)..\..\..\build\vc.common\icons.props" />
- </ImportGroup>
-</Project> \ No newline at end of file
diff --git a/protocols/WhatsApp/proto_whatsapp/Proto_WhatsApp.vcxproj.filters b/protocols/WhatsApp/proto_whatsapp/Proto_WhatsApp.vcxproj.filters
deleted file mode 100644
index e39f86d5d6..0000000000
--- a/protocols/WhatsApp/proto_whatsapp/Proto_WhatsApp.vcxproj.filters
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <Import Project="$(ProjectDir)..\..\..\build\vc.common\common.filters" />
-</Project> \ No newline at end of file
diff --git a/protocols/WhatsApp/proto_whatsapp/res/Away.ico b/protocols/WhatsApp/proto_whatsapp/res/Away.ico
deleted file mode 100644
index 9c07e3fa13..0000000000
--- a/protocols/WhatsApp/proto_whatsapp/res/Away.ico
+++ /dev/null
Binary files differ
diff --git a/protocols/WhatsApp/proto_whatsapp/res/Invisible.ico b/protocols/WhatsApp/proto_whatsapp/res/Invisible.ico
deleted file mode 100644
index cb743a4bfe..0000000000
--- a/protocols/WhatsApp/proto_whatsapp/res/Invisible.ico
+++ /dev/null
Binary files differ
diff --git a/protocols/WhatsApp/proto_whatsapp/res/Offline.ico b/protocols/WhatsApp/proto_whatsapp/res/Offline.ico
deleted file mode 100644
index 4019c68283..0000000000
--- a/protocols/WhatsApp/proto_whatsapp/res/Offline.ico
+++ /dev/null
Binary files differ
diff --git a/protocols/WhatsApp/proto_whatsapp/res/Online.ico b/protocols/WhatsApp/proto_whatsapp/res/Online.ico
deleted file mode 100644
index 2143ea1438..0000000000
--- a/protocols/WhatsApp/proto_whatsapp/res/Online.ico
+++ /dev/null
Binary files differ
diff --git a/protocols/WhatsApp/proto_whatsapp/res/Proto_WhatsApp.rc b/protocols/WhatsApp/proto_whatsapp/res/Proto_WhatsApp.rc
deleted file mode 100644
index 7cd2882d24..0000000000
--- a/protocols/WhatsApp/proto_whatsapp/res/Proto_WhatsApp.rc
+++ /dev/null
@@ -1,72 +0,0 @@
-// Microsoft Visual C++ generated resource script.
-//
-#include "..\src\resource.h"
-
-#define APSTUDIO_READONLY_SYMBOLS
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 2 resource.
-//
-#include "afxres.h"
-
-/////////////////////////////////////////////////////////////////////////////
-#undef APSTUDIO_READONLY_SYMBOLS
-
-/////////////////////////////////////////////////////////////////////////////
-// Russian (Russia) resources
-
-#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS)
-LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
-
-#ifdef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// TEXTINCLUDE
-//
-
-1 TEXTINCLUDE
-BEGIN
- "..\\src\\resource.h\0"
-END
-
-2 TEXTINCLUDE
-BEGIN
- "#include ""afxres.h""\r\n"
- "\0"
-END
-
-3 TEXTINCLUDE
-BEGIN
- "\r\n"
- "\0"
-END
-
-#endif // APSTUDIO_INVOKED
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Icon
-//
-
-// Icon with lowest ID value placed first to ensure application icon
-// remains consistent on all systems.
-IDI_ICON1 ICON "Offline.ico"
-IDI_ICON2 ICON "Online.ico"
-IDI_ICON3 ICON "Away.ico"
-IDI_ICON4 ICON "Invisible.ico"
-#endif // Russian (Russia) resources
-/////////////////////////////////////////////////////////////////////////////
-
-
-
-#ifndef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 3 resource.
-//
-
-
-/////////////////////////////////////////////////////////////////////////////
-#endif // not APSTUDIO_INVOKED
-
diff --git a/protocols/WhatsApp/proto_whatsapp/src/resource.h b/protocols/WhatsApp/proto_whatsapp/src/resource.h
deleted file mode 100644
index c9b458c21a..0000000000
--- a/protocols/WhatsApp/proto_whatsapp/src/resource.h
+++ /dev/null
@@ -1,20 +0,0 @@
-//{{NO_DEPENDENCIES}}
-// Microsoft Visual C++ generated include file.
-// Used by Proto_WhatsApp.rc
-//
-#define IDI_ICON1 105
-#define IDI_ICON2 104
-#define IDI_ICON3 128
-#define IDI_ICON4 130
-//#define IDI_ICON5 1002
-
-// Next default values for new objects
-//
-#ifdef APSTUDIO_INVOKED
-#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE 106
-#define _APS_NEXT_COMMAND_VALUE 40001
-#define _APS_NEXT_CONTROL_VALUE 1001
-#define _APS_NEXT_SYMED_VALUE 101
-#endif
-#endif
diff --git a/protocols/WhatsApp/res/add-group.ico b/protocols/WhatsApp/res/add-group.ico
deleted file mode 100644
index 65d0d1f41b..0000000000
--- a/protocols/WhatsApp/res/add-group.ico
+++ /dev/null
Binary files differ
diff --git a/protocols/WhatsApp/res/version.rc b/protocols/WhatsApp/res/version.rc
deleted file mode 100644
index fdeb14668c..0000000000
--- a/protocols/WhatsApp/res/version.rc
+++ /dev/null
@@ -1,55 +0,0 @@
-// Microsoft Visual C++ generated resource script.
-//
-#ifdef APSTUDIO_INVOKED
-#error this file is not editable by Microsoft Visual C++
-#endif //APSTUDIO_INVOKED
-
-#include "..\src\version.h"
-
-#define APSTUDIO_READONLY_SYMBOLS
-#include "afxres.h"
-#undef APSTUDIO_READONLY_SYMBOLS
-
-/////////////////////////////////////////////////////////////////////////////
-// English (U.S.) resources
-
-#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
-#ifdef _WIN32
-LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
-#pragma code_page(1252)
-#endif //_WIN32
-
-VS_VERSION_INFO VERSIONINFO
- FILEVERSION __FILEVERSION_STRING
- PRODUCTVERSION __FILEVERSION_STRING
- FILEFLAGSMASK 0x17L
-#ifdef _DEBUG
- FILEFLAGS 0x1L
-#else
- FILEFLAGS 0x0L
-#endif
- FILEOS 0x4L
- FILETYPE 0x2L
- FILESUBTYPE 0x0L
-BEGIN
- BLOCK "StringFileInfo"
- BEGIN
- BLOCK "000004b0"
- BEGIN
- VALUE "Author", __AUTHOR
- VALUE "FileDescription", __DESCRIPTION
- VALUE "FileVersion", __VERSION_STRING
- VALUE "InternalName", __PLUGIN_NAME
- VALUE "LegalCopyright", __COPYRIGHT
- VALUE "OriginalFilename", __FILENAME
- VALUE "ProductName", __PLUGIN_NAME
- END
- END
- BLOCK "VarFileInfo"
- BEGIN
- VALUE "Translation", 0x0, 1200
- END
-END
-
-#endif // English (U.S.) resources
-/////////////////////////////////////////////////////////////////////////////
diff --git a/protocols/WhatsApp/res/whatsapp.ico b/protocols/WhatsApp/res/whatsapp.ico
deleted file mode 100644
index 7a0dc4c68d..0000000000
--- a/protocols/WhatsApp/res/whatsapp.ico
+++ /dev/null
Binary files differ
diff --git a/protocols/WhatsApp/res/whatsapp.rc b/protocols/WhatsApp/res/whatsapp.rc
deleted file mode 100644
index 37f87d0fbc..0000000000
--- a/protocols/WhatsApp/res/whatsapp.rc
+++ /dev/null
@@ -1,159 +0,0 @@
-// Microsoft Visual C++ generated resource script.
-//
-#include "..\src\resource.h"
-
-#define APSTUDIO_READONLY_SYMBOLS
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 2 resource.
-//
-#include "afxres.h"
-
-/////////////////////////////////////////////////////////////////////////////
-#undef APSTUDIO_READONLY_SYMBOLS
-
-/////////////////////////////////////////////////////////////////////////////
-// German (Germany) resources
-
-#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEU)
-LANGUAGE LANG_GERMAN, SUBLANG_GERMAN
-#pragma code_page(1252)
-
-#ifdef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// TEXTINCLUDE
-//
-
-1 TEXTINCLUDE
-BEGIN
- "..\\src\\resource.h\0"
-END
-
-2 TEXTINCLUDE
-BEGIN
- "#include ""afxres.h""\r\n"
- "\0"
-END
-
-3 TEXTINCLUDE
-BEGIN
- "\r\n"
- "\0"
-END
-
-#endif // APSTUDIO_INVOKED
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// DESIGNINFO
-//
-
-#ifdef APSTUDIO_INVOKED
-GUIDELINES DESIGNINFO
-BEGIN
- IDD_WHATSAPOPTIONS, DIALOG
- BEGIN
- VERTGUIDE, 60
- VERTGUIDE, 178
- BOTTOMMARGIN, 126
- END
-END
-#endif // APSTUDIO_INVOKED
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Dialog
-//
-
-IDD_ACCMGRUI DIALOGEX 0, 0, 188, 144
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
-EXSTYLE WS_EX_CONTROLPARENT
-FONT 8, "MS Shell Dlg", 400, 0, 0x0
-BEGIN
- LTEXT "Phone number",IDC_STATIC,4,7,55,10
- EDITTEXT IDC_CC,60,6,24,12,ES_AUTOHSCROLL
- EDITTEXT IDC_LOGIN,84,6,100,12,ES_AUTOHSCROLL
- LTEXT "Nickname",IDC_STATIC,4,23,55,10
- EDITTEXT IDC_NICK,60,22,124,12,ES_AUTOHSCROLL
- LTEXT "Default group:",IDC_STATIC,4,37,55,10
- EDITTEXT IDC_DEFGROUP,60,36,124,12,ES_AUTOHSCROLL
- CONTROL "Use SSL connection (port 443)",IDC_SSL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,4,52,180,10
- CONTROL "Use remote message timestamps", IDC_REMOTE_TIME, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 4, 64, 180, 10
- CONTROL "Automatically open group chats",IDC_AUTORUN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,4,76,180,10
- GROUPBOX "Registration",IDC_STATIC,4,92,184,48
- LTEXT "Enter code",IDC_STATIC,8,123,47,10
- EDITTEXT IDC_PW,45,121,20,12,ES_AUTOHSCROLL | ES_NUMBER
- CTEXT "-",IDC_STATIC,64,123,8,10
- EDITTEXT IDC_PW2,72,121,20,12,ES_AUTOHSCROLL | ES_NUMBER
- PUSHBUTTON "Request SMS code",IDC_BUTTON_REQUEST_SMS_CODE,12,104,80,14
- PUSHBUTTON "Request Voice code",IDC_BUTTON_REQUEST_VOICE_CODE,99,104,80,14
- PUSHBUTTON "Register code",IDC_BUTTON_REGISTER,100,120,80,14
-END
-
-IDD_OPTIONS DIALOGEX 0, 0, 188, 164
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
-EXSTYLE WS_EX_CONTROLPARENT
-FONT 8, "MS Shell Dlg", 0, 0, 0x1
-BEGIN
- LTEXT "Phone number",IDC_STATIC,4,7,55,10
- EDITTEXT IDC_CC,60,6,24,12,ES_AUTOHSCROLL
- EDITTEXT IDC_LOGIN,84,6,100,12,ES_AUTOHSCROLL
- LTEXT "Including country code, without '+' or '00'",IDC_STATIC,60,22,118,18
- LTEXT "Nickname",IDC_STATIC,4,43,55,10
- EDITTEXT IDC_NICK,60,42,124,12,ES_AUTOHSCROLL
- LTEXT "Default group:",IDC_STATIC,4,57,55,10
- EDITTEXT IDC_DEFGROUP,60,56,124,12,ES_AUTOHSCROLL
- CONTROL "Use SSL connection (port 443)",IDC_SSL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,4,72,180,10
- CONTROL "Use remote message timestamps", IDC_REMOTE_TIME, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 4, 84, 180, 10
- CONTROL "Automatically open group chats",IDC_AUTORUN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,4,96,180,10
- GROUPBOX "Registration",IDC_STATIC,4,112,184,48
- LTEXT "Enter code",IDC_STATIC,8,143,47,10
- EDITTEXT IDC_PW,45,141,20,12,ES_AUTOHSCROLL | ES_NUMBER
- CTEXT "-",IDC_STATIC,64,143,8,10
- EDITTEXT IDC_PW2,72,141,20,12,ES_AUTOHSCROLL | ES_NUMBER
- PUSHBUTTON "Request SMS code",IDC_BUTTON_REQUEST_SMS_CODE,12,124,80,14
- PUSHBUTTON "Request Voice code",IDC_BUTTON_REQUEST_VOICE_CODE,100,124,80,14
- PUSHBUTTON "Register code",IDC_BUTTON_REGISTER,100,140,80,14
-END
-
-IDD_GROUPCHAT_INVITE DIALOGEX 0, 0, 215, 170
-STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
-CAPTION "Invite users"
-FONT 8, "MS Shell Dlg", 0, 0, 0x1
-BEGIN
- GROUPBOX "Choose a user",IDC_STATIC,4,2,208,130
- CONTROL "",IDC_CLIST,"CListControl",WS_TABSTOP | 0x1,12,12,192,112,WS_EX_CLIENTEDGE
- LTEXT "Other user:",IDC_STATIC,4,138,55,8
- EDITTEXT IDC_NEWJID,60,136,152,12,ES_AUTOHSCROLL
- DEFPUSHBUTTON "&Invite",IDOK,108,152,50,14
- PUSHBUTTON "Cancel",IDCANCEL,162,152,50,14
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Icon
-//
-
-// Icon with lowest ID value placed first to ensure application icon
-// remains consistent on all systems.
-IDI_WHATSAPP ICON "whatsapp.ico"
-IDI_ADD_GROUP ICON "add-group.ico"
-#endif // German (Germany) resources
-/////////////////////////////////////////////////////////////////////////////
-
-
-
-#ifndef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 3 resource.
-//
-
-
-/////////////////////////////////////////////////////////////////////////////
-#endif // not APSTUDIO_INVOKED
-
diff --git a/protocols/WhatsApp/src/OpenSSL/digest.c b/protocols/WhatsApp/src/OpenSSL/digest.c
deleted file mode 100644
index 1a6b106dd9..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/digest.c
+++ /dev/null
@@ -1,278 +0,0 @@
-/* crypto/evp/digest.c */
-/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
- * All rights reserved.
- *
- * This package is an SSL implementation written
- * by Eric Young (eay@cryptsoft.com).
- * The implementation was written so as to conform with Netscapes SSL.
- *
- * This library is free for commercial and non-commercial use as long as
- * the following conditions are aheared to. The following conditions
- * apply to all code found in this distribution, be it the RC4, RSA,
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
- * included with this distribution is covered by the same copyright terms
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
- *
- * Copyright remains Eric Young's, and as such any Copyright notices in
- * the code are not to be removed.
- * If this package is used in a product, Eric Young should be given attribution
- * as the author of the parts of the library used.
- * This can be in the form of a textual message at program startup or
- * in documentation (online or textual) provided with the package.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * "This product includes cryptographic software written by
- * Eric Young (eay@cryptsoft.com)"
- * The word 'cryptographic' can be left out if the rouines from the library
- * being used are not cryptographic related :-).
- * 4. If you include any Windows specific code (or a derivative thereof) from
- * the apps directory (application code) you must include an acknowledgement:
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
- *
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * The licence and distribution terms for any publically available version or
- * derivative of this code cannot be changed. i.e. this code cannot simply be
- * copied and put under another distribution licence
- * [including the GNU Public Licence.]
- */
-/* ====================================================================
- * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * 3. All advertising materials mentioning features or use of this
- * software must display the following acknowledgment:
- * "This product includes software developed by the OpenSSL Project
- * for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
- *
- * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
- * endorse or promote products derived from this software without
- * prior written permission. For written permission, please contact
- * openssl-core@openssl.org.
- *
- * 5. Products derived from this software may not be called "OpenSSL"
- * nor may "OpenSSL" appear in their names without prior written
- * permission of the OpenSSL Project.
- *
- * 6. Redistributions of any form whatsoever must retain the following
- * acknowledgment:
- * "This product includes software developed by the OpenSSL Project
- * for use in the OpenSSL Toolkit (http://www.openssl.org/)"
- *
- * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
- * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- * ====================================================================
- *
- * This product includes cryptographic software written by Eric Young
- * (eay@cryptsoft.com). This product includes software written by Tim
- * Hudson (tjh@cryptsoft.com).
- *
- */
-
-#include <malloc.h>
-#include <stdio.h>
-#include <string.h>
-
-#include "evp.h"
-
-void EVP_MD_CTX_init(EVP_MD_CTX *ctx)
- {
- memset(ctx,'\0',sizeof *ctx);
- }
-
-EVP_MD_CTX *EVP_MD_CTX_create(void)
- {
- EVP_MD_CTX *ctx=malloc(sizeof *ctx);
-
- if (ctx)
- EVP_MD_CTX_init(ctx);
-
- return ctx;
- }
-
-int EVP_DigestInit(EVP_MD_CTX *ctx, const EVP_MD *type)
- {
- EVP_MD_CTX_init(ctx);
- return EVP_DigestInit_ex(ctx, type, NULL);
- }
-
-int EVP_DigestInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, ENGINE *impl)
- {
- M_EVP_MD_CTX_clear_flags(ctx,EVP_MD_CTX_FLAG_CLEANED);
- if (ctx->digest != type)
- {
- if (ctx->digest && ctx->digest->ctx_size)
- free(ctx->md_data);
- ctx->digest=type;
- if (type->ctx_size)
- {
- ctx->md_data=malloc(type->ctx_size);
- if (!ctx->md_data)
- {
- return 0;
- }
- }
- }
- return ctx->digest->init(ctx);
- }
-
-int EVP_DigestUpdate(EVP_MD_CTX *ctx, const void *data,
- size_t count)
- {
- return ctx->digest->update(ctx,data,count);
- }
-
-/* The caller can assume that this removes any secret data from the context */
-int EVP_DigestFinal(EVP_MD_CTX *ctx, unsigned char *md, unsigned int *size)
- {
- int ret;
- ret = EVP_DigestFinal_ex(ctx, md, size);
- EVP_MD_CTX_cleanup(ctx);
- return ret;
- }
-
-/* The caller can assume that this removes any secret data from the context */
-int EVP_DigestFinal_ex(EVP_MD_CTX *ctx, unsigned char *md, unsigned int *size)
- {
- int ret;
-
- ret=ctx->digest->final(ctx,md);
- if (size != NULL)
- *size=ctx->digest->md_size;
- if (ctx->digest->cleanup)
- {
- ctx->digest->cleanup(ctx);
- M_EVP_MD_CTX_set_flags(ctx,EVP_MD_CTX_FLAG_CLEANED);
- }
- memset(ctx->md_data,0,ctx->digest->ctx_size);
- return ret;
- }
-
-int EVP_MD_CTX_copy(EVP_MD_CTX *out, const EVP_MD_CTX *in)
- {
- EVP_MD_CTX_init(out);
- return EVP_MD_CTX_copy_ex(out, in);
- }
-
-int EVP_MD_CTX_copy_ex(EVP_MD_CTX *out, const EVP_MD_CTX *in)
- {
- unsigned char *tmp_buf;
- if ((in == NULL) || (in->digest == NULL))
- {
- return 0;
- }
-#ifndef OPENSSL_NO_ENGINE
- /* Make sure it's safe to copy a digest context using an ENGINE */
-#endif
-
- if (out->digest == in->digest)
- {
- tmp_buf = out->md_data;
- M_EVP_MD_CTX_set_flags(out,EVP_MD_CTX_FLAG_REUSE);
- }
- else tmp_buf = NULL;
- EVP_MD_CTX_cleanup(out);
- memcpy(out,in,sizeof *out);
-
- if (out->digest->ctx_size)
- {
- if (tmp_buf)
- out->md_data = tmp_buf;
- else
- {
- out->md_data=malloc(out->digest->ctx_size);
- if (!out->md_data)
- {
- return 0;
- }
- }
- memcpy(out->md_data,in->md_data,out->digest->ctx_size);
- }
-
- if (out->digest->copy)
- return out->digest->copy(out,in);
-
- return 1;
- }
-
-int EVP_Digest(const void *data, size_t count,
- unsigned char *md, unsigned int *size, const EVP_MD *type, ENGINE *impl)
- {
- EVP_MD_CTX ctx;
- int ret;
-
- EVP_MD_CTX_init(&ctx);
- M_EVP_MD_CTX_set_flags(&ctx,EVP_MD_CTX_FLAG_ONESHOT);
- ret=EVP_DigestInit_ex(&ctx, type, impl)
- && EVP_DigestUpdate(&ctx, data, count)
- && EVP_DigestFinal_ex(&ctx, md, size);
- EVP_MD_CTX_cleanup(&ctx);
-
- return ret;
- }
-
-void EVP_MD_CTX_destroy(EVP_MD_CTX *ctx)
- {
- EVP_MD_CTX_cleanup(ctx);
- free(ctx);
- }
-
-/* This call frees resources associated with the context */
-int EVP_MD_CTX_cleanup(EVP_MD_CTX *ctx)
- {
- /* Don't assume ctx->md_data was cleaned in EVP_Digest_Final,
- * because sometimes only copies of the context are ever finalised.
- */
- if (ctx->digest && ctx->digest->cleanup
- && !M_EVP_MD_CTX_test_flags(ctx,EVP_MD_CTX_FLAG_CLEANED))
- ctx->digest->cleanup(ctx);
- if (ctx->digest && ctx->digest->ctx_size && ctx->md_data
- && !M_EVP_MD_CTX_test_flags(ctx, EVP_MD_CTX_FLAG_REUSE))
- {
- memset(ctx->md_data,0,ctx->digest->ctx_size);
- free(ctx->md_data);
- }
- memset(ctx,'\0',sizeof *ctx);
-
- return 1;
- }
diff --git a/protocols/WhatsApp/src/OpenSSL/evp.h b/protocols/WhatsApp/src/OpenSSL/evp.h
deleted file mode 100644
index bee216913d..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/evp.h
+++ /dev/null
@@ -1,221 +0,0 @@
-/* crypto/evp/evp.h */
-/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
- * All rights reserved.
- *
- * This package is an SSL implementation written
- * by Eric Young (eay@cryptsoft.com).
- * The implementation was written so as to conform with Netscapes SSL.
- *
- * This library is free for commercial and non-commercial use as long as
- * the following conditions are aheared to. The following conditions
- * apply to all code found in this distribution, be it the RC4, RSA,
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
- * included with this distribution is covered by the same copyright terms
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
- *
- * Copyright remains Eric Young's, and as such any Copyright notices in
- * the code are not to be removed.
- * If this package is used in a product, Eric Young should be given attribution
- * as the author of the parts of the library used.
- * This can be in the form of a textual message at program startup or
- * in documentation (online or textual) provided with the package.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * "This product includes cryptographic software written by
- * Eric Young (eay@cryptsoft.com)"
- * The word 'cryptographic' can be left out if the rouines from the library
- * being used are not cryptographic related :-).
- * 4. If you include any Windows specific code (or a derivative thereof) from
- * the apps directory (application code) you must include an acknowledgement:
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
- *
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * The licence and distribution terms for any publically available version or
- * derivative of this code cannot be changed. i.e. this code cannot simply be
- * copied and put under another distribution licence
- * [including the GNU Public Licence.]
- */
-
-#ifndef HEADER_ENVELOPE_H
-#define HEADER_ENVELOPE_H
-
-/*
-#define EVP_RC2_KEY_SIZE 16
-#define EVP_RC4_KEY_SIZE 16
-#define EVP_BLOWFISH_KEY_SIZE 16
-#define EVP_CAST5_KEY_SIZE 16
-#define EVP_RC5_32_12_16_KEY_SIZE 16
-*/
-#define EVP_MAX_MD_SIZE 64 /* longest known is SHA512 */
-#define EVP_MAX_KEY_LENGTH 32
-#define EVP_MAX_IV_LENGTH 16
-#define EVP_MAX_BLOCK_LENGTH 32
-
-#define PKCS5_SALT_LEN 8
-/* Default PKCS#5 iteration count */
-#define PKCS5_DEFAULT_ITER 2048
-
-#define EVP_PK_RSA 0x0001
-#define EVP_PK_DSA 0x0002
-#define EVP_PK_DH 0x0004
-#define EVP_PK_EC 0x0008
-#define EVP_PKT_SIGN 0x0010
-#define EVP_PKT_ENC 0x0020
-#define EVP_PKT_EXCH 0x0040
-#define EVP_PKS_RSA 0x0100
-#define EVP_PKS_DSA 0x0200
-#define EVP_PKS_EC 0x0400
-#define EVP_PKT_EXP 0x1000 /* <= 512 bit key */
-
-#define EVP_PKEY_NONE NID_undef
-#define EVP_PKEY_RSA NID_rsaEncryption
-#define EVP_PKEY_RSA2 NID_rsa
-#define EVP_PKEY_DSA NID_dsa
-#define EVP_PKEY_DSA1 NID_dsa_2
-#define EVP_PKEY_DSA2 NID_dsaWithSHA
-#define EVP_PKEY_DSA3 NID_dsaWithSHA1
-#define EVP_PKEY_DSA4 NID_dsaWithSHA1_2
-#define EVP_PKEY_DH NID_dhKeyAgreement
-#define EVP_PKEY_EC NID_X9_62_id_ecPublicKey
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define EVP_MAX_MD_SIZE 64 /* longest known is SHA512 */
-#define EVP_MAX_KEY_LENGTH 32
-#define EVP_MAX_IV_LENGTH 16
-#define EVP_MAX_BLOCK_LENGTH 32
-
-#define EVP_MD_CTX_FLAG_ONESHOT 0x0001 /* digest update will be called
- * once only */
-#define EVP_MD_CTX_FLAG_CLEANED 0x0002 /* context has already been
- * cleaned */
-#define EVP_MD_CTX_FLAG_REUSE 0x0004 /* Don't free up ctx->md_data
- * in EVP_MD_CTX_cleanup */
-#define EVP_MD_CTX_FLAG_NON_FIPS_ALLOW 0x0008 /* Allow use of non FIPS digest
- * in FIPS mode */
-
-#define M_EVP_MD_CTX_set_flags(ctx,flgs) ((ctx)->flags|=(flgs))
-#define M_EVP_MD_CTX_clear_flags(ctx,flgs) ((ctx)->flags&=~(flgs))
-#define M_EVP_MD_CTX_test_flags(ctx,flgs) ((ctx)->flags&(flgs))
-
-typedef void ENGINE;
-typedef struct env_md_st EVP_MD;
-typedef struct env_md_ctx_st EVP_MD_CTX;
-typedef struct evp_cipher_st EVP_CIPHER;
-typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX;
-
-struct evp_cipher_st
-{
- int nid;
- int block_size;
- int key_len; /* Default value for variable length ciphers */
- int iv_len;
- unsigned long flags; /* Various flags */
- int (*init)(EVP_CIPHER_CTX *ctx, const unsigned char *key,
- const unsigned char *iv, int enc); /* init key */
- int (*do_cipher)(EVP_CIPHER_CTX *ctx, unsigned char *out,
- const unsigned char *in, unsigned int inl);/* encrypt/decrypt data */
- int (*cleanup)(EVP_CIPHER_CTX *); /* cleanup ctx */
- int ctx_size; /* how big ctx->cipher_data needs to be */
- int (*ctrl)(EVP_CIPHER_CTX *, int type, int arg, void *ptr); /* Miscellaneous operations */
- void *app_data; /* Application data */
-} /* EVP_CIPHER */;
-
-struct evp_cipher_ctx_st
-{
- const EVP_CIPHER *cipher;
- int encrypt; /* encrypt or decrypt */
- int buf_len; /* number we have left */
-
- unsigned char oiv[EVP_MAX_IV_LENGTH]; /* original iv */
- unsigned char iv[EVP_MAX_IV_LENGTH]; /* working iv */
- unsigned char buf[EVP_MAX_BLOCK_LENGTH];/* saved partial block */
- int num; /* used by cfb/ofb mode */
-
- void *app_data; /* application stuff */
- int key_len; /* May change for variable length cipher */
- unsigned long flags; /* Various flags */
- void *cipher_data; /* per EVP data */
- int final_used;
- int block_mask;
- unsigned char final[EVP_MAX_BLOCK_LENGTH];/* possible final block */
-} /* EVP_CIPHER_CTX */;
-
-struct env_md_ctx_st
-{
- const EVP_MD *digest;
- unsigned long flags;
- void *md_data;
-} /* EVP_MD_CTX */;
-
-struct env_md_st
-{
- int type;
- int pkey_type;
- int md_size;
- unsigned long flags;
- int (*init)(EVP_MD_CTX *ctx);
- int (*update)(EVP_MD_CTX *ctx,const void *data,size_t count);
- int (*final)(EVP_MD_CTX *ctx,unsigned char *md);
- int (*copy)(EVP_MD_CTX *to,const EVP_MD_CTX *from);
- int (*cleanup)(EVP_MD_CTX *ctx);
-
- /* FIXME: prototype these some day */
- int (*sign)(int type, const unsigned char *m, unsigned int m_length,
- unsigned char *sigret, unsigned int *siglen, void *key);
- int (*verify)(int type, const unsigned char *m, unsigned int m_length,
- const unsigned char *sigbuf, unsigned int siglen,
- void *key);
- int required_pkey_type[5]; /*EVP_PKEY_xxx */
- int block_size;
- int ctx_size; /* how big does the ctx->md_data need to be */
-} /* EVP_MD */;
-
-typedef int evp_sign_method(int type,const unsigned char *m,
- unsigned int m_length,unsigned char *sigret,
- unsigned int *siglen, void *key);
-typedef int evp_verify_method(int type,const unsigned char *m,
- unsigned int m_length,const unsigned char *sigbuf,
- unsigned int siglen, void *key);
-
-int EVP_MD_block_size(const EVP_MD *md);
-int EVP_DigestInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, void *impl);
-int EVP_DigestUpdate(EVP_MD_CTX *ctx,const void *d, size_t cnt);
-int EVP_DigestFinal_ex(EVP_MD_CTX *ctx,unsigned char *md,unsigned int *s);
-
-const EVP_MD *EVP_sha1(void);
-
-int EVP_MD_CTX_copy_ex(EVP_MD_CTX *out,const EVP_MD_CTX *in);
-void EVP_MD_CTX_init(EVP_MD_CTX *ctx);
-int EVP_MD_CTX_cleanup(EVP_MD_CTX *ctx);
-
-int PKCS5_PBKDF2_HMAC_SHA1(const char *pass, int passlen,
- const unsigned char *salt, int saltlen, int iter,
- int keylen, unsigned char *out);
-
-#ifdef __cplusplus
-}
-#endif
-#endif
diff --git a/protocols/WhatsApp/src/OpenSSL/evp_lib.c b/protocols/WhatsApp/src/OpenSSL/evp_lib.c
deleted file mode 100644
index 86ee6fc272..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/evp_lib.c
+++ /dev/null
@@ -1,165 +0,0 @@
-/* crypto/evp/evp_lib.c */
-/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
- * All rights reserved.
- *
- * This package is an SSL implementation written
- * by Eric Young (eay@cryptsoft.com).
- * The implementation was written so as to conform with Netscapes SSL.
- *
- * This library is free for commercial and non-commercial use as long as
- * the following conditions are aheared to. The following conditions
- * apply to all code found in this distribution, be it the RC4, RSA,
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
- * included with this distribution is covered by the same copyright terms
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
- *
- * Copyright remains Eric Young's, and as such any Copyright notices in
- * the code are not to be removed.
- * If this package is used in a product, Eric Young should be given attribution
- * as the author of the parts of the library used.
- * This can be in the form of a textual message at program startup or
- * in documentation (online or textual) provided with the package.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * "This product includes cryptographic software written by
- * Eric Young (eay@cryptsoft.com)"
- * The word 'cryptographic' can be left out if the rouines from the library
- * being used are not cryptographic related :-).
- * 4. If you include any Windows specific code (or a derivative thereof) from
- * the apps directory (application code) you must include an acknowledgement:
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
- *
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * The licence and distribution terms for any publically available version or
- * derivative of this code cannot be changed. i.e. this code cannot simply be
- * copied and put under another distribution licence
- * [including the GNU Public Licence.]
- */
-
-#include <stdio.h>
-#include "evp.h"
-
-int EVP_CIPHER_block_size(const EVP_CIPHER *e)
- {
- return e->block_size;
- }
-
-int EVP_CIPHER_CTX_block_size(const EVP_CIPHER_CTX *ctx)
- {
- return ctx->cipher->block_size;
- }
-
-const EVP_CIPHER *EVP_CIPHER_CTX_cipher(const EVP_CIPHER_CTX *ctx)
- {
- return ctx->cipher;
- }
-
-unsigned long EVP_CIPHER_flags(const EVP_CIPHER *cipher)
- {
- return cipher->flags;
- }
-
-void *EVP_CIPHER_CTX_get_app_data(const EVP_CIPHER_CTX *ctx)
- {
- return ctx->app_data;
- }
-
-void EVP_CIPHER_CTX_set_app_data(EVP_CIPHER_CTX *ctx, void *data)
- {
- ctx->app_data = data;
- }
-
-int EVP_CIPHER_iv_length(const EVP_CIPHER *cipher)
- {
- return cipher->iv_len;
- }
-
-int EVP_CIPHER_key_length(const EVP_CIPHER *cipher)
- {
- return cipher->key_len;
- }
-
-int EVP_CIPHER_CTX_key_length(const EVP_CIPHER_CTX *ctx)
- {
- return ctx->key_len;
- }
-
-int EVP_CIPHER_CTX_nid(const EVP_CIPHER_CTX *ctx)
- {
- return ctx->cipher->nid;
- }
-
-int EVP_MD_block_size(const EVP_MD *md)
- {
- return md->block_size;
- }
-
-int EVP_MD_type(const EVP_MD *md)
- {
- return md->type;
- }
-
-int EVP_MD_pkey_type(const EVP_MD *md)
- {
- return md->pkey_type;
- }
-
-int EVP_MD_size(const EVP_MD *md)
- {
- return md->md_size;
- }
-
-const EVP_MD * EVP_MD_CTX_md(const EVP_MD_CTX *ctx)
- {
- return ctx->digest;
- }
-
-void EVP_MD_CTX_set_flags(EVP_MD_CTX *ctx, int flags)
- {
- ctx->flags |= flags;
- }
-
-void EVP_MD_CTX_clear_flags(EVP_MD_CTX *ctx, int flags)
- {
- ctx->flags &= ~flags;
- }
-
-int EVP_MD_CTX_test_flags(const EVP_MD_CTX *ctx, int flags)
- {
- return (ctx->flags & flags);
- }
-
-void EVP_CIPHER_CTX_set_flags(EVP_CIPHER_CTX *ctx, int flags)
- {
- ctx->flags |= flags;
- }
-
-void EVP_CIPHER_CTX_clear_flags(EVP_CIPHER_CTX *ctx, int flags)
- {
- ctx->flags &= ~flags;
- }
-
-int EVP_CIPHER_CTX_test_flags(const EVP_CIPHER_CTX *ctx, int flags)
- {
- return (ctx->flags & flags);
- }
diff --git a/protocols/WhatsApp/src/OpenSSL/hmac.c b/protocols/WhatsApp/src/OpenSSL/hmac.c
deleted file mode 100644
index 9e2d3d439f..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/hmac.c
+++ /dev/null
@@ -1,170 +0,0 @@
-/* crypto/hmac/hmac.c */
-/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
- * All rights reserved.
- *
- * This package is an SSL implementation written
- * by Eric Young (eay@cryptsoft.com).
- * The implementation was written so as to conform with Netscapes SSL.
- *
- * This library is free for commercial and non-commercial use as long as
- * the following conditions are aheared to. The following conditions
- * apply to all code found in this distribution, be it the RC4, RSA,
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
- * included with this distribution is covered by the same copyright terms
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
- *
- * Copyright remains Eric Young's, and as such any Copyright notices in
- * the code are not to be removed.
- * If this package is used in a product, Eric Young should be given attribution
- * as the author of the parts of the library used.
- * This can be in the form of a textual message at program startup or
- * in documentation (online or textual) provided with the package.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * "This product includes cryptographic software written by
- * Eric Young (eay@cryptsoft.com)"
- * The word 'cryptographic' can be left out if the rouines from the library
- * being used are not cryptographic related :-).
- * 4. If you include any Windows specific code (or a derivative thereof) from
- * the apps directory (application code) you must include an acknowledgement:
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
- *
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * The licence and distribution terms for any publically available version or
- * derivative of this code cannot be changed. i.e. this code cannot simply be
- * copied and put under another distribution licence
- * [including the GNU Public Licence.]
- */
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "hmac.h"
-
-#ifndef OPENSSL_FIPS
-
-void HMAC_Init_ex(HMAC_CTX *ctx, const void *key, int len,
- const EVP_MD *md, void *impl)
- {
- int i,j,reset=0;
- unsigned char pad[HMAC_MAX_MD_CBLOCK];
-
- if (md != NULL)
- {
- reset=1;
- ctx->md=md;
- }
- else
- md=ctx->md;
-
- if (key != NULL)
- {
- reset=1;
- j=EVP_MD_block_size(md);
- if (j < len)
- {
- EVP_DigestInit_ex(&ctx->md_ctx,md, impl);
- EVP_DigestUpdate(&ctx->md_ctx,key,len);
- EVP_DigestFinal_ex(&(ctx->md_ctx),ctx->key,
- &ctx->key_length);
- }
- else
- {
- memcpy(ctx->key,key,len);
- ctx->key_length=len;
- }
- if(ctx->key_length != HMAC_MAX_MD_CBLOCK)
- memset(&ctx->key[ctx->key_length], 0,
- HMAC_MAX_MD_CBLOCK - ctx->key_length);
- }
-
- if (reset)
- {
- for (i=0; i<HMAC_MAX_MD_CBLOCK; i++)
- pad[i]=0x36^ctx->key[i];
- EVP_DigestInit_ex(&ctx->i_ctx,md, impl);
- EVP_DigestUpdate(&ctx->i_ctx,pad,EVP_MD_block_size(md));
-
- for (i=0; i<HMAC_MAX_MD_CBLOCK; i++)
- pad[i]=0x5c^ctx->key[i];
- EVP_DigestInit_ex(&ctx->o_ctx,md, impl);
- EVP_DigestUpdate(&ctx->o_ctx,pad,EVP_MD_block_size(md));
- }
- EVP_MD_CTX_copy_ex(&ctx->md_ctx,&ctx->i_ctx);
- }
-
-void HMAC_Init(HMAC_CTX *ctx, const void *key, int len,
- const EVP_MD *md)
- {
- if(key && md)
- HMAC_CTX_init(ctx);
- HMAC_Init_ex(ctx,key,len,md, NULL);
- }
-
-void HMAC_Update(HMAC_CTX *ctx, const unsigned char *data, size_t len)
- {
- EVP_DigestUpdate(&ctx->md_ctx,data,len);
- }
-
-void HMAC_Final(HMAC_CTX *ctx, unsigned char *md, unsigned int *len)
- {
- unsigned int i;
- unsigned char buf[EVP_MAX_MD_SIZE];
-
- EVP_DigestFinal_ex(&ctx->md_ctx,buf,&i);
- EVP_MD_CTX_copy_ex(&ctx->md_ctx,&ctx->o_ctx);
- EVP_DigestUpdate(&ctx->md_ctx,buf,i);
- EVP_DigestFinal_ex(&ctx->md_ctx,md,len);
- }
-
-void HMAC_CTX_init(HMAC_CTX *ctx)
- {
- EVP_MD_CTX_init(&ctx->i_ctx);
- EVP_MD_CTX_init(&ctx->o_ctx);
- EVP_MD_CTX_init(&ctx->md_ctx);
- }
-
-void HMAC_CTX_cleanup(HMAC_CTX *ctx)
- {
- EVP_MD_CTX_cleanup(&ctx->i_ctx);
- EVP_MD_CTX_cleanup(&ctx->o_ctx);
- EVP_MD_CTX_cleanup(&ctx->md_ctx);
- memset(ctx,0,sizeof *ctx);
- }
-
-unsigned char *HMAC(const EVP_MD *evp_md, const void *key, int key_len,
- const unsigned char *d, size_t n, unsigned char *md,
- unsigned int *md_len)
- {
- HMAC_CTX c;
- static unsigned char m[EVP_MAX_MD_SIZE];
-
- if (md == NULL) md=m;
- HMAC_CTX_init(&c);
- HMAC_Init(&c,key,key_len,evp_md);
- HMAC_Update(&c,d,n);
- HMAC_Final(&c,md,md_len);
- HMAC_CTX_cleanup(&c);
- return(md);
- }
-
-#endif
diff --git a/protocols/WhatsApp/src/OpenSSL/hmac.h b/protocols/WhatsApp/src/OpenSSL/hmac.h
deleted file mode 100644
index be14555645..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/hmac.h
+++ /dev/null
@@ -1,103 +0,0 @@
-/* crypto/hmac/hmac.h */
-/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
- * All rights reserved.
- *
- * This package is an SSL implementation written
- * by Eric Young (eay@cryptsoft.com).
- * The implementation was written so as to conform with Netscapes SSL.
- *
- * This library is free for commercial and non-commercial use as long as
- * the following conditions are aheared to. The following conditions
- * apply to all code found in this distribution, be it the RC4, RSA,
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
- * included with this distribution is covered by the same copyright terms
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
- *
- * Copyright remains Eric Young's, and as such any Copyright notices in
- * the code are not to be removed.
- * If this package is used in a product, Eric Young should be given attribution
- * as the author of the parts of the library used.
- * This can be in the form of a textual message at program startup or
- * in documentation (online or textual) provided with the package.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * "This product includes cryptographic software written by
- * Eric Young (eay@cryptsoft.com)"
- * The word 'cryptographic' can be left out if the rouines from the library
- * being used are not cryptographic related :-).
- * 4. If you include any Windows specific code (or a derivative thereof) from
- * the apps directory (application code) you must include an acknowledgement:
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
- *
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * The licence and distribution terms for any publically available version or
- * derivative of this code cannot be changed. i.e. this code cannot simply be
- * copied and put under another distribution licence
- * [including the GNU Public Licence.]
- */
-#ifndef HEADER_HMAC_H
-#define HEADER_HMAC_H
-
-#define HMAC_MAX_MD_CBLOCK 128 /* largest known is SHA512 */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include "evp.h"
-
-typedef struct hmac_ctx_st
- {
- const EVP_MD *md;
- EVP_MD_CTX md_ctx;
- EVP_MD_CTX i_ctx;
- EVP_MD_CTX o_ctx;
- unsigned int key_length;
- unsigned char key[HMAC_MAX_MD_CBLOCK];
- } HMAC_CTX;
-
-#define HMAC_size(e) (EVP_MD_size((e)->md))
-
-
-void HMAC_CTX_init(HMAC_CTX *ctx);
-void HMAC_CTX_cleanup(HMAC_CTX *ctx);
-
-#define HMAC_cleanup(ctx) HMAC_CTX_cleanup(ctx) /* deprecated */
-
-void HMAC_Init(HMAC_CTX *ctx, const void *key, int len,
- const EVP_MD *md); /* deprecated */
-void HMAC_Init_ex(HMAC_CTX *ctx, const void *key, int len,
- const EVP_MD *md, ENGINE *impl);
-void HMAC_Update(HMAC_CTX *ctx, const unsigned char *data, size_t len);
-void HMAC_Final(HMAC_CTX *ctx, unsigned char *md, unsigned int *len);
-unsigned char *HMAC(const EVP_MD *evp_md, const void *key, int key_len,
- const unsigned char *d, size_t n, unsigned char *md,
- unsigned int *md_len);
-
-void HMAC_CTX_set_flags(HMAC_CTX *ctx, unsigned long flags);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/protocols/WhatsApp/src/OpenSSL/m_sha1.c b/protocols/WhatsApp/src/OpenSSL/m_sha1.c
deleted file mode 100644
index c78fe11a77..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/m_sha1.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/* crypto/evp/m_sha1.c */
-/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
- * All rights reserved.
- *
- * This package is an SSL implementation written
- * by Eric Young (eay@cryptsoft.com).
- * The implementation was written so as to conform with Netscapes SSL.
- *
- * This library is free for commercial and non-commercial use as long as
- * the following conditions are aheared to. The following conditions
- * apply to all code found in this distribution, be it the RC4, RSA,
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
- * included with this distribution is covered by the same copyright terms
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
- *
- * Copyright remains Eric Young's, and as such any Copyright notices in
- * the code are not to be removed.
- * If this package is used in a product, Eric Young should be given attribution
- * as the author of the parts of the library used.
- * This can be in the form of a textual message at program startup or
- * in documentation (online or textual) provided with the package.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * "This product includes cryptographic software written by
- * Eric Young (eay@cryptsoft.com)"
- * The word 'cryptographic' can be left out if the rouines from the library
- * being used are not cryptographic related :-).
- * 4. If you include any Windows specific code (or a derivative thereof) from
- * the apps directory (application code) you must include an acknowledgement:
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
- *
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * The licence and distribution terms for any publically available version or
- * derivative of this code cannot be changed. i.e. this code cannot simply be
- * copied and put under another distribution licence
- * [including the GNU Public Licence.]
- */
-
-#include <stdio.h>
-
-#define SHA_1
-
-#include "evp.h"
-
-#define SHA_LONG unsigned long
-
-#define SHA_LBLOCK 16
-#define SHA_CBLOCK (SHA_LBLOCK*4) /* SHA treats input data as a
- * contiguous array of 32 bit
- * wide big-endian values. */
-#define SHA_LAST_BLOCK (SHA_CBLOCK-8)
-#define SHA_DIGEST_LENGTH 20
-
-#define NID_rsaEncryption 6
-#define NID_rsa 19
-#define NID_sha1 64
-#define NID_sha1WithRSAEncryption 65
-
-typedef struct SHAstate_st
- {
- SHA_LONG h0,h1,h2,h3,h4;
- SHA_LONG Nl,Nh;
- SHA_LONG data[SHA_LBLOCK];
- unsigned int num;
- } SHA_CTX;
-
-#include "sha_locl.h"
-
-/* The following 2 functions sign and verify a X509_SIG ASN1 object
- * inside PKCS#1 padded RSA encryption */
-int RSA_sign(int type, const unsigned char *m, unsigned int m_length,
- unsigned char *sigret, unsigned int *siglen, void *rsa);
-int RSA_verify(int type, const unsigned char *m, unsigned int m_length,
- unsigned char *sigbuf, unsigned int siglen, void *rsa);
-
-#define EVP_PKEY_RSA_method (evp_sign_method *)RSA_sign, \
- (evp_verify_method *)RSA_verify, \
- {EVP_PKEY_RSA,EVP_PKEY_RSA2,0,0}
-
-static int init(EVP_MD_CTX *ctx)
- { return SHA1_Init(ctx->md_data); }
-
-static int update(EVP_MD_CTX *ctx,const void *data,size_t count)
- { return SHA1_Update(ctx->md_data,data,count); }
-
-static int final(EVP_MD_CTX *ctx,unsigned char *md)
- { return SHA1_Final(md,ctx->md_data); }
-
-static const EVP_MD sha1_md =
- {
- NID_sha1,
- NID_sha1WithRSAEncryption,
- SHA_DIGEST_LENGTH,
- 0,
- init,
- update,
- final,
- NULL,
- NULL,
- EVP_PKEY_RSA_method,
- SHA_CBLOCK,
- sizeof(EVP_MD *)+sizeof(SHA_CTX),
- };
-
-const EVP_MD *EVP_sha1(void)
-{
- return(&sha1_md);
-}
diff --git a/protocols/WhatsApp/src/OpenSSL/md32_common.h b/protocols/WhatsApp/src/OpenSSL/md32_common.h
deleted file mode 100644
index f0ca0fe631..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/md32_common.h
+++ /dev/null
@@ -1,408 +0,0 @@
-/* crypto/md32_common.h */
-/* ====================================================================
- * Copyright (c) 1999-2007 The OpenSSL Project. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * 3. All advertising materials mentioning features or use of this
- * software must display the following acknowledgment:
- * "This product includes software developed by the OpenSSL Project
- * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)"
- *
- * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
- * endorse or promote products derived from this software without
- * prior written permission. For written permission, please contact
- * licensing@OpenSSL.org.
- *
- * 5. Products derived from this software may not be called "OpenSSL"
- * nor may "OpenSSL" appear in their names without prior written
- * permission of the OpenSSL Project.
- *
- * 6. Redistributions of any form whatsoever must retain the following
- * acknowledgment:
- * "This product includes software developed by the OpenSSL Project
- * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)"
- *
- * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
- * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- * ====================================================================
- *
- */
-
-/*
- * This is a generic 32 bit "collector" for message digest algorithms.
- * Whenever needed it collects input character stream into chunks of
- * 32 bit values and invokes a block function that performs actual hash
- * calculations.
- *
- * Porting guide.
- *
- * Obligatory macros:
- *
- * DATA_ORDER_IS_BIG_ENDIAN or DATA_ORDER_IS_LITTLE_ENDIAN
- * this macro defines byte order of input stream.
- * HASH_CBLOCK
- * size of a unit chunk HASH_BLOCK operates on.
- * HASH_LONG
- * has to be at lest 32 bit wide, if it's wider, then
- * HASH_LONG_LOG2 *has to* be defined along
- * HASH_CTX
- * context structure that at least contains following
- * members:
- * typedef struct {
- * ...
- * HASH_LONG Nl,Nh;
- * either {
- * HASH_LONG data[HASH_LBLOCK];
- * unsigned char data[HASH_CBLOCK];
- * };
- * unsigned int num;
- * ...
- * } HASH_CTX;
- * data[] vector is expected to be zeroed upon first call to
- * HASH_UPDATE.
- * HASH_UPDATE
- * name of "Update" function, implemented here.
- * HASH_TRANSFORM
- * name of "Transform" function, implemented here.
- * HASH_FINAL
- * name of "Final" function, implemented here.
- * HASH_BLOCK_DATA_ORDER
- * name of "block" function capable of treating *unaligned* input
- * message in original (data) byte order, implemented externally.
- * HASH_MAKE_STRING
- * macro convering context variables to an ASCII hash string.
- *
- * MD5 example:
- *
- * #define DATA_ORDER_IS_LITTLE_ENDIAN
- *
- * #define HASH_LONG MD5_LONG
- * #define HASH_LONG_LOG2 MD5_LONG_LOG2
- * #define HASH_CTX MD5_CTX
- * #define HASH_CBLOCK MD5_CBLOCK
- * #define HASH_UPDATE MD5_Update
- * #define HASH_TRANSFORM MD5_Transform
- * #define HASH_FINAL MD5_Final
- * #define HASH_BLOCK_DATA_ORDER md5_block_data_order
- *
- * <appro@fy.chalmers.se>
- */
-
-#if !defined(DATA_ORDER_IS_BIG_ENDIAN) && !defined(DATA_ORDER_IS_LITTLE_ENDIAN)
-#error "DATA_ORDER must be defined!"
-#endif
-
-#ifndef HASH_CBLOCK
-#error "HASH_CBLOCK must be defined!"
-#endif
-#ifndef HASH_LONG
-#error "HASH_LONG must be defined!"
-#endif
-#ifndef HASH_CTX
-#error "HASH_CTX must be defined!"
-#endif
-
-#ifndef HASH_UPDATE
-#error "HASH_UPDATE must be defined!"
-#endif
-#ifndef HASH_TRANSFORM
-#error "HASH_TRANSFORM must be defined!"
-#endif
-#ifndef HASH_FINAL
-#error "HASH_FINAL must be defined!"
-#endif
-
-#ifndef HASH_BLOCK_DATA_ORDER
-#error "HASH_BLOCK_DATA_ORDER must be defined!"
-#endif
-
-/*
- * Engage compiler specific rotate intrinsic function if available.
- */
-#undef ROTATE
-#ifndef PEDANTIC
-# if defined(_MSC_VER) || defined(__ICC)
-# define ROTATE(a,n) _lrotl(a,n)
-# elif defined(__MWERKS__)
-# if defined(__POWERPC__)
-# define ROTATE(a,n) __rlwinm(a,n,0,31)
-# elif defined(__MC68K__)
- /* Motorola specific tweak. <appro@fy.chalmers.se> */
-# define ROTATE(a,n) ( n<24 ? __rol(a,n) : __ror(a,32-n) )
-# else
-# define ROTATE(a,n) __rol(a,n)
-# endif
-# elif defined(__GNUC__) && __GNUC__>=2 && !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM)
- /*
- * Some GNU C inline assembler templates. Note that these are
- * rotates by *constant* number of bits! But that's exactly
- * what we need here...
- * <appro@fy.chalmers.se>
- */
-# if defined(__i386) || defined(__i386__) || defined(__x86_64) || defined(__x86_64__)
-# define ROTATE(a,n) ({ register unsigned int ret; \
- asm ( \
- "roll %1,%0" \
- : "=r"(ret) \
- : "I"(n), "0"(a) \
- : "cc"); \
- ret; \
- })
-# elif defined(_ARCH_PPC) || defined(_ARCH_PPC64) || \
- defined(__powerpc) || defined(__ppc__) || defined(__powerpc64__)
-# define ROTATE(a,n) ({ register unsigned int ret; \
- asm ( \
- "rlwinm %0,%1,%2,0,31" \
- : "=r"(ret) \
- : "r"(a), "I"(n)); \
- ret; \
- })
-# elif defined(__s390x__)
-# define ROTATE(a,n) ({ register unsigned int ret; \
- asm ("rll %0,%1,%2" \
- : "=r"(ret) \
- : "r"(a), "I"(n)); \
- ret; \
- })
-# endif
-# endif
-#endif /* PEDANTIC */
-
-#ifndef ROTATE
-#define ROTATE(a,n) (((a)<<(n))|(((a)&0xffffffff)>>(32-(n))))
-#endif
-
-#if defined(DATA_ORDER_IS_BIG_ENDIAN)
-
-#ifndef PEDANTIC
-# if defined(__GNUC__) && __GNUC__>=2 && !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM)
-# if ((defined(__i386) || defined(__i386__)) && !defined(I386_ONLY)) || \
- (defined(__x86_64) || defined(__x86_64__))
-# if !defined(B_ENDIAN)
- /*
- * This gives ~30-40% performance improvement in SHA-256 compiled
- * with gcc [on P4]. Well, first macro to be frank. We can pull
- * this trick on x86* platforms only, because these CPUs can fetch
- * unaligned data without raising an exception.
- */
-# define HOST_c2l(c,l) ({ unsigned int r=*((const unsigned int *)(c)); \
- asm ("bswapl %0":"=r"(r):"0"(r)); \
- (c)+=4; (l)=r; })
-# define HOST_l2c(l,c) ({ unsigned int r=(l); \
- asm ("bswapl %0":"=r"(r):"0"(r)); \
- *((unsigned int *)(c))=r; (c)+=4; r; })
-# endif
-# endif
-# endif
-#endif
-#if defined(__s390__) || defined(__s390x__)
-# define HOST_c2l(c,l) ((l)=*((const unsigned int *)(c)), (c)+=4, (l))
-# define HOST_l2c(l,c) (*((unsigned int *)(c))=(l), (c)+=4, (l))
-#endif
-
-#ifndef HOST_c2l
-#define HOST_c2l(c,l) (l =(((unsigned long)(*((c)++)))<<24), \
- l|=(((unsigned long)(*((c)++)))<<16), \
- l|=(((unsigned long)(*((c)++)))<< 8), \
- l|=(((unsigned long)(*((c)++))) ), \
- l)
-#endif
-#ifndef HOST_l2c
-#define HOST_l2c(l,c) (*((c)++)=(unsigned char)(((l)>>24)&0xff), \
- *((c)++)=(unsigned char)(((l)>>16)&0xff), \
- *((c)++)=(unsigned char)(((l)>> 8)&0xff), \
- *((c)++)=(unsigned char)(((l) )&0xff), \
- l)
-#endif
-
-#elif defined(DATA_ORDER_IS_LITTLE_ENDIAN)
-
-#ifndef PEDANTIC
-# if defined(__GNUC__) && __GNUC__>=2 && !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM)
-# if defined(__s390x__)
-# define HOST_c2l(c,l) ({ asm ("lrv %0,%1" \
- :"=d"(l) :"m"(*(const unsigned int *)(c)));\
- (c)+=4; (l); })
-# define HOST_l2c(l,c) ({ asm ("strv %1,%0" \
- :"=m"(*(unsigned int *)(c)) :"d"(l));\
- (c)+=4; (l); })
-# endif
-# endif
-#endif
-#if defined(__i386) || defined(__i386__) || defined(__x86_64) || defined(__x86_64__)
-# ifndef B_ENDIAN
- /* See comment in DATA_ORDER_IS_BIG_ENDIAN section. */
-# define HOST_c2l(c,l) ((l)=*((const unsigned int *)(c)), (c)+=4, l)
-# define HOST_l2c(l,c) (*((unsigned int *)(c))=(l), (c)+=4, l)
-# endif
-#endif
-
-#ifndef HOST_c2l
-#define HOST_c2l(c,l) (l =(((unsigned long)(*((c)++))) ), \
- l|=(((unsigned long)(*((c)++)))<< 8), \
- l|=(((unsigned long)(*((c)++)))<<16), \
- l|=(((unsigned long)(*((c)++)))<<24), \
- l)
-#endif
-#ifndef HOST_l2c
-#define HOST_l2c(l,c) (*((c)++)=(unsigned char)(((l) )&0xff), \
- *((c)++)=(unsigned char)(((l)>> 8)&0xff), \
- *((c)++)=(unsigned char)(((l)>>16)&0xff), \
- *((c)++)=(unsigned char)(((l)>>24)&0xff), \
- l)
-#endif
-
-#endif
-
-/*
- * Time for some action:-)
- */
-
-int HASH_UPDATE (HASH_CTX *c, const void *data_, size_t len)
- {
- const unsigned char *data=data_;
- unsigned char *p;
- HASH_LONG l;
- size_t n;
-
- if (len==0) return 1;
-
- l=(c->Nl+(((HASH_LONG)len)<<3))&0xffffffffUL;
- /* 95-05-24 eay Fixed a bug with the overflow handling, thanks to
- * Wei Dai <weidai@eskimo.com> for pointing it out. */
- if (l < c->Nl) /* overflow */
- c->Nh++;
- c->Nh += (unsigned long)(len>>29); /* might cause compiler warning on 16-bit */
- c->Nl=l;
-
- n = c->num;
- if (n != 0)
- {
- p=(unsigned char *)c->data;
-
- if (len >= HASH_CBLOCK || len+n >= HASH_CBLOCK)
- {
- memcpy (p+n,data,HASH_CBLOCK-n);
- HASH_BLOCK_DATA_ORDER (c,p,1);
- n = HASH_CBLOCK-n;
- data += n;
- len -= n;
- c->num = 0;
- memset (p,0,HASH_CBLOCK); /* keep it zeroed */
- }
- else
- {
- memcpy (p+n,data,len);
- c->num += (unsigned int)len;
- return 1;
- }
- }
-
- n = len/HASH_CBLOCK;
- if (n > 0)
- {
- HASH_BLOCK_DATA_ORDER (c,data,n);
- n *= HASH_CBLOCK;
- data += n;
- len -= n;
- }
-
- if (len != 0)
- {
- p = (unsigned char *)c->data;
- c->num = (unsigned)len;
- memcpy (p,data,len);
- }
- return 1;
- }
-
-
-void HASH_TRANSFORM (HASH_CTX *c, const unsigned char *data)
- {
- HASH_BLOCK_DATA_ORDER (c,data,1);
- }
-
-
-int HASH_FINAL (unsigned char *md, HASH_CTX *c)
- {
- unsigned char *p = (unsigned char *)c->data;
- size_t n = c->num;
-
- p[n] = 0x80; /* there is always room for one */
- n++;
-
- if (n > (HASH_CBLOCK-8))
- {
- memset (p+n,0,HASH_CBLOCK-n);
- n=0;
- HASH_BLOCK_DATA_ORDER (c,p,1);
- }
- memset (p+n,0,HASH_CBLOCK-8-n);
-
- p += HASH_CBLOCK-8;
-#if defined(DATA_ORDER_IS_BIG_ENDIAN)
- (void)HOST_l2c(c->Nh,p);
- (void)HOST_l2c(c->Nl,p);
-#elif defined(DATA_ORDER_IS_LITTLE_ENDIAN)
- (void)HOST_l2c(c->Nl,p);
- (void)HOST_l2c(c->Nh,p);
-#endif
- p -= HASH_CBLOCK;
- HASH_BLOCK_DATA_ORDER (c,p,1);
- c->num=0;
- memset (p,0,HASH_CBLOCK);
-
-#ifndef HASH_MAKE_STRING
-#error "HASH_MAKE_STRING must be defined!"
-#else
- HASH_MAKE_STRING(c,md);
-#endif
-
- return 1;
- }
-
-#ifndef MD32_REG_T
-#define MD32_REG_T long
-/*
- * This comment was originaly written for MD5, which is why it
- * discusses A-D. But it basically applies to all 32-bit digests,
- * which is why it was moved to common header file.
- *
- * In case you wonder why A-D are declared as long and not
- * as MD5_LONG. Doing so results in slight performance
- * boost on LP64 architectures. The catch is we don't
- * really care if 32 MSBs of a 64-bit register get polluted
- * with eventual overflows as we *save* only 32 LSBs in
- * *either* case. Now declaring 'em long excuses the compiler
- * from keeping 32 MSBs zeroed resulting in 13% performance
- * improvement under SPARC Solaris7/64 and 5% under AlphaLinux.
- * Well, to be honest it should say that this *prevents*
- * performance degradation.
- * <appro@fy.chalmers.se>
- * Apparently there're LP64 compilers that generate better
- * code if A-D are declared int. Most notably GCC-x86_64
- * generates better code.
- * <appro@fy.chalmers.se>
- */
-#endif
diff --git a/protocols/WhatsApp/src/OpenSSL/p5_crpt2.c b/protocols/WhatsApp/src/OpenSSL/p5_crpt2.c
deleted file mode 100644
index 18b366d2c2..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/p5_crpt2.c
+++ /dev/null
@@ -1,113 +0,0 @@
-/* p5_crpt2.c */
-/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
- * project 1999.
- */
-/* ====================================================================
- * Copyright (c) 1999 The OpenSSL Project. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * 3. All advertising materials mentioning features or use of this
- * software must display the following acknowledgment:
- * "This product includes software developed by the OpenSSL Project
- * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)"
- *
- * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
- * endorse or promote products derived from this software without
- * prior written permission. For written permission, please contact
- * licensing@OpenSSL.org.
- *
- * 5. Products derived from this software may not be called "OpenSSL"
- * nor may "OpenSSL" appear in their names without prior written
- * permission of the OpenSSL Project.
- *
- * 6. Redistributions of any form whatsoever must retain the following
- * acknowledgment:
- * "This product includes software developed by the OpenSSL Project
- * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)"
- *
- * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
- * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- * ====================================================================
- *
- * This product includes cryptographic software written by Eric Young
- * (eay@cryptsoft.com). This product includes software written by Tim
- * Hudson (tjh@cryptsoft.com).
- *
- */
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-
-#include "evp.h"
-#include "hmac.h"
-
-#define SHA_DIGEST_LENGTH 20
-
-/* This is an implementation of PKCS#5 v2.0 password based encryption key
- * derivation function PBKDF2 using the only currently defined function HMAC
- * with SHA1. Verified against test vectors posted by Peter Gutmann
- * <pgut001@cs.auckland.ac.nz> to the PKCS-TNG <pkcs-tng@rsa.com> mailing list.
- */
-
-int PKCS5_PBKDF2_HMAC_SHA1(const char *pass, int passlen,
- const unsigned char *salt, int saltlen, int iter,
- int keylen, unsigned char *out)
-{
- unsigned char digtmp[SHA_DIGEST_LENGTH], *p, itmp[4];
- int cplen, j, k, tkeylen;
- unsigned long i = 1;
- HMAC_CTX hctx;
-
- HMAC_CTX_init(&hctx);
- p = out;
- tkeylen = keylen;
- if(!pass) passlen = 0;
- else if(passlen == -1) passlen = (int)strlen(pass);
- while(tkeylen) {
- if(tkeylen > SHA_DIGEST_LENGTH) cplen = SHA_DIGEST_LENGTH;
- else cplen = tkeylen;
- /* We are unlikely to ever use more than 256 blocks (5120 bits!)
- * but just in case...
- */
- itmp[0] = (unsigned char)((i >> 24) & 0xff);
- itmp[1] = (unsigned char)((i >> 16) & 0xff);
- itmp[2] = (unsigned char)((i >> 8) & 0xff);
- itmp[3] = (unsigned char)(i & 0xff);
- HMAC_Init_ex(&hctx, pass, passlen, EVP_sha1(), NULL);
- HMAC_Update(&hctx, salt, saltlen);
- HMAC_Update(&hctx, itmp, 4);
- HMAC_Final(&hctx, digtmp, NULL);
- memcpy(p, digtmp, cplen);
- for(j = 1; j < iter; j++) {
- HMAC(EVP_sha1(), pass, passlen,
- digtmp, SHA_DIGEST_LENGTH, digtmp, NULL);
- for(k = 0; k < cplen; k++) p[k] ^= digtmp[k];
- }
- tkeylen-= cplen;
- i++;
- p+= cplen;
- }
- HMAC_CTX_cleanup(&hctx);
- return 1;
-}
diff --git a/protocols/WhatsApp/src/OpenSSL/rc4.h b/protocols/WhatsApp/src/OpenSSL/rc4.h
deleted file mode 100644
index 91376bedd3..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/rc4.h
+++ /dev/null
@@ -1,23 +0,0 @@
-#ifndef HEADER_RC4_LOCL_H
-#define HEADER_RC4_LOCL_H
-
-typedef int RC4_INT;
-
-typedef struct rc4_key_st
- {
- RC4_INT x,y;
- RC4_INT data[256];
- } RC4_KEY;
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-void RC4_set_key(RC4_KEY *key, int len, const unsigned char *data);
-void RC4(RC4_KEY *key, unsigned long len, const unsigned char *indata, unsigned char *outdata);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/protocols/WhatsApp/src/OpenSSL/rc4_enc.c b/protocols/WhatsApp/src/OpenSSL/rc4_enc.c
deleted file mode 100644
index 10e2c79991..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/rc4_enc.c
+++ /dev/null
@@ -1,314 +0,0 @@
-/* crypto/rc4/rc4_enc.c */
-/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
- * All rights reserved.
- *
- * This package is an SSL implementation written
- * by Eric Young (eay@cryptsoft.com).
- * The implementation was written so as to conform with Netscapes SSL.
- *
- * This library is free for commercial and non-commercial use as long as
- * the following conditions are aheared to. The following conditions
- * apply to all code found in this distribution, be it the RC4, RSA,
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
- * included with this distribution is covered by the same copyright terms
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
- *
- * Copyright remains Eric Young's, and as such any Copyright notices in
- * the code are not to be removed.
- * If this package is used in a product, Eric Young should be given attribution
- * as the author of the parts of the library used.
- * This can be in the form of a textual message at program startup or
- * in documentation (online or textual) provided with the package.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * "This product includes cryptographic software written by
- * Eric Young (eay@cryptsoft.com)"
- * The word 'cryptographic' can be left out if the rouines from the library
- * being used are not cryptographic related :-).
- * 4. If you include any Windows specific code (or a derivative thereof) from
- * the apps directory (application code) you must include an acknowledgement:
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
- *
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * The licence and distribution terms for any publically available version or
- * derivative of this code cannot be changed. i.e. this code cannot simply be
- * copied and put under another distribution licence
- * [including the GNU Public Licence.]
- */
-
-#include "rc4.h"
-
-/* RC4 as implemented from a posting from
- * Newsgroups: sci.crypt
- * From: sterndark@netcom.com (David Sterndark)
- * Subject: RC4 Algorithm revealed.
- * Message-ID: <sternCvKL4B.Hyy@netcom.com>
- * Date: Wed, 14 Sep 1994 06:35:31 GMT
- */
-
-void RC4(RC4_KEY *key, unsigned long len, const unsigned char *indata,
- unsigned char *outdata)
- {
- register RC4_INT *d;
- register RC4_INT x,y,tx,ty;
- int i;
-
- x=key->x;
- y=key->y;
- d=key->data;
-
-#if defined(RC4_CHUNK)
- /*
- * The original reason for implementing this(*) was the fact that
- * pre-21164a Alpha CPUs don't have byte load/store instructions
- * and e.g. a byte store has to be done with 64-bit load, shift,
- * and, or and finally 64-bit store. Peaking data and operating
- * at natural word size made it possible to reduce amount of
- * instructions as well as to perform early read-ahead without
- * suffering from RAW (read-after-write) hazard. This resulted
- * in ~40%(**) performance improvement on 21064 box with gcc.
- * But it's not only Alpha users who win here:-) Thanks to the
- * early-n-wide read-ahead this implementation also exhibits
- * >40% speed-up on SPARC and 20-30% on 64-bit MIPS (depending
- * on sizeof(RC4_INT)).
- *
- * (*) "this" means code which recognizes the case when input
- * and output pointers appear to be aligned at natural CPU
- * word boundary
- * (**) i.e. according to 'apps/openssl speed rc4' benchmark,
- * crypto/rc4/rc4speed.c exhibits almost 70% speed-up...
- *
- * Cavets.
- *
- * - RC4_CHUNK="unsigned long long" should be a #1 choice for
- * UltraSPARC. Unfortunately gcc generates very slow code
- * (2.5-3 times slower than one generated by Sun's WorkShop
- * C) and therefore gcc (at least 2.95 and earlier) should
- * always be told that RC4_CHUNK="unsigned long".
- *
- * <appro@fy.chalmers.se>
- */
-
-# define RC4_STEP ( \
- x=(x+1) &0xff, \
- tx=d[x], \
- y=(tx+y)&0xff, \
- ty=d[y], \
- d[y]=tx, \
- d[x]=ty, \
- (RC4_CHUNK)d[(tx+ty)&0xff]\
- )
-
- if ( ( ((unsigned long)indata & (sizeof(RC4_CHUNK)-1)) |
- ((unsigned long)outdata & (sizeof(RC4_CHUNK)-1)) ) == 0 )
- {
- RC4_CHUNK ichunk,otp;
- const union { long one; char little; } is_endian = {1};
-
- /*
- * I reckon we can afford to implement both endian
- * cases and to decide which way to take at run-time
- * because the machine code appears to be very compact
- * and redundant 1-2KB is perfectly tolerable (i.e.
- * in case the compiler fails to eliminate it:-). By
- * suggestion from Terrel Larson <terr@terralogic.net>
- * who also stands for the is_endian union:-)
- *
- * Special notes.
- *
- * - is_endian is declared automatic as doing otherwise
- * (declaring static) prevents gcc from eliminating
- * the redundant code;
- * - compilers (those I've tried) don't seem to have
- * problems eliminating either the operators guarded
- * by "if (sizeof(RC4_CHUNK)==8)" or the condition
- * expressions themselves so I've got 'em to replace
- * corresponding #ifdefs from the previous version;
- * - I chose to let the redundant switch cases when
- * sizeof(RC4_CHUNK)!=8 be (were also #ifdefed
- * before);
- * - in case you wonder "&(sizeof(RC4_CHUNK)*8-1)" in
- * [LB]ESHFT guards against "shift is out of range"
- * warnings when sizeof(RC4_CHUNK)!=8
- *
- * <appro@fy.chalmers.se>
- */
- if (!is_endian.little)
- { /* BIG-ENDIAN CASE */
-# define BESHFT(c) (((sizeof(RC4_CHUNK)-(c)-1)*8)&(sizeof(RC4_CHUNK)*8-1))
- for (;len&~(sizeof(RC4_CHUNK)-1);len-=sizeof(RC4_CHUNK))
- {
- ichunk = *(RC4_CHUNK *)indata;
- otp = RC4_STEP<<BESHFT(0);
- otp |= RC4_STEP<<BESHFT(1);
- otp |= RC4_STEP<<BESHFT(2);
- otp |= RC4_STEP<<BESHFT(3);
- if (sizeof(RC4_CHUNK)==8)
- {
- otp |= RC4_STEP<<BESHFT(4);
- otp |= RC4_STEP<<BESHFT(5);
- otp |= RC4_STEP<<BESHFT(6);
- otp |= RC4_STEP<<BESHFT(7);
- }
- *(RC4_CHUNK *)outdata = otp^ichunk;
- indata += sizeof(RC4_CHUNK);
- outdata += sizeof(RC4_CHUNK);
- }
- if (len)
- {
- RC4_CHUNK mask=(RC4_CHUNK)-1, ochunk;
-
- ichunk = *(RC4_CHUNK *)indata;
- ochunk = *(RC4_CHUNK *)outdata;
- otp = 0;
- i = BESHFT(0);
- mask <<= (sizeof(RC4_CHUNK)-len)<<3;
- switch (len&(sizeof(RC4_CHUNK)-1))
- {
- case 7: otp = RC4_STEP<<i, i-=8;
- case 6: otp |= RC4_STEP<<i, i-=8;
- case 5: otp |= RC4_STEP<<i, i-=8;
- case 4: otp |= RC4_STEP<<i, i-=8;
- case 3: otp |= RC4_STEP<<i, i-=8;
- case 2: otp |= RC4_STEP<<i, i-=8;
- case 1: otp |= RC4_STEP<<i, i-=8;
- case 0: ; /*
- * it's never the case,
- * but it has to be here
- * for ultrix?
- */
- }
- ochunk &= ~mask;
- ochunk |= (otp^ichunk) & mask;
- *(RC4_CHUNK *)outdata = ochunk;
- }
- key->x=x;
- key->y=y;
- return;
- }
- else
- { /* LITTLE-ENDIAN CASE */
-# define LESHFT(c) (((c)*8)&(sizeof(RC4_CHUNK)*8-1))
- for (;len&~(sizeof(RC4_CHUNK)-1);len-=sizeof(RC4_CHUNK))
- {
- ichunk = *(RC4_CHUNK *)indata;
- otp = RC4_STEP;
- otp |= RC4_STEP<<8;
- otp |= RC4_STEP<<16;
- otp |= RC4_STEP<<24;
- if (sizeof(RC4_CHUNK)==8)
- {
- otp |= RC4_STEP<<LESHFT(4);
- otp |= RC4_STEP<<LESHFT(5);
- otp |= RC4_STEP<<LESHFT(6);
- otp |= RC4_STEP<<LESHFT(7);
- }
- *(RC4_CHUNK *)outdata = otp^ichunk;
- indata += sizeof(RC4_CHUNK);
- outdata += sizeof(RC4_CHUNK);
- }
- if (len)
- {
- RC4_CHUNK mask=(RC4_CHUNK)-1, ochunk;
-
- ichunk = *(RC4_CHUNK *)indata;
- ochunk = *(RC4_CHUNK *)outdata;
- otp = 0;
- i = 0;
- mask >>= (sizeof(RC4_CHUNK)-len)<<3;
- switch (len&(sizeof(RC4_CHUNK)-1))
- {
- case 7: otp = RC4_STEP, i+=8;
- case 6: otp |= RC4_STEP<<i, i+=8;
- case 5: otp |= RC4_STEP<<i, i+=8;
- case 4: otp |= RC4_STEP<<i, i+=8;
- case 3: otp |= RC4_STEP<<i, i+=8;
- case 2: otp |= RC4_STEP<<i, i+=8;
- case 1: otp |= RC4_STEP<<i, i+=8;
- case 0: ; /*
- * it's never the case,
- * but it has to be here
- * for ultrix?
- */
- }
- ochunk &= ~mask;
- ochunk |= (otp^ichunk) & mask;
- *(RC4_CHUNK *)outdata = ochunk;
- }
- key->x=x;
- key->y=y;
- return;
- }
- }
-#endif
-#define LOOP(in,out) \
- x=((x+1)&0xff); \
- tx=d[x]; \
- y=(tx+y)&0xff; \
- d[x]=ty=d[y]; \
- d[y]=tx; \
- (out) = d[(tx+ty)&0xff]^ (in);
-
-#ifndef RC4_INDEX
-#define RC4_LOOP(a,b,i) LOOP(*((a)++),*((b)++))
-#else
-#define RC4_LOOP(a,b,i) LOOP(a[i],b[i])
-#endif
-
- i=(int)(len>>3L);
- if (i)
- {
- for (;;)
- {
- RC4_LOOP(indata,outdata,0);
- RC4_LOOP(indata,outdata,1);
- RC4_LOOP(indata,outdata,2);
- RC4_LOOP(indata,outdata,3);
- RC4_LOOP(indata,outdata,4);
- RC4_LOOP(indata,outdata,5);
- RC4_LOOP(indata,outdata,6);
- RC4_LOOP(indata,outdata,7);
-#ifdef RC4_INDEX
- indata+=8;
- outdata+=8;
-#endif
- if (--i == 0) break;
- }
- }
- i=(int)len&0x07;
- if (i)
- {
- for (;;)
- {
- RC4_LOOP(indata,outdata,0); if (--i == 0) break;
- RC4_LOOP(indata,outdata,1); if (--i == 0) break;
- RC4_LOOP(indata,outdata,2); if (--i == 0) break;
- RC4_LOOP(indata,outdata,3); if (--i == 0) break;
- RC4_LOOP(indata,outdata,4); if (--i == 0) break;
- RC4_LOOP(indata,outdata,5); if (--i == 0) break;
- RC4_LOOP(indata,outdata,6); if (--i == 0) break;
- }
- }
- key->x=x;
- key->y=y;
- }
diff --git a/protocols/WhatsApp/src/OpenSSL/rc4_skey.c b/protocols/WhatsApp/src/OpenSSL/rc4_skey.c
deleted file mode 100644
index 67b765cbbe..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/rc4_skey.c
+++ /dev/null
@@ -1,137 +0,0 @@
-/* crypto/rc4/rc4_skey.c */
-/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
- * All rights reserved.
- *
- * This package is an SSL implementation written
- * by Eric Young (eay@cryptsoft.com).
- * The implementation was written so as to conform with Netscapes SSL.
- *
- * This library is free for commercial and non-commercial use as long as
- * the following conditions are aheared to. The following conditions
- * apply to all code found in this distribution, be it the RC4, RSA,
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
- * included with this distribution is covered by the same copyright terms
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
- *
- * Copyright remains Eric Young's, and as such any Copyright notices in
- * the code are not to be removed.
- * If this package is used in a product, Eric Young should be given attribution
- * as the author of the parts of the library used.
- * This can be in the form of a textual message at program startup or
- * in documentation (online or textual) provided with the package.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * "This product includes cryptographic software written by
- * Eric Young (eay@cryptsoft.com)"
- * The word 'cryptographic' can be left out if the rouines from the library
- * being used are not cryptographic related :-).
- * 4. If you include any Windows specific code (or a derivative thereof) from
- * the apps directory (application code) you must include an acknowledgement:
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
- *
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * The licence and distribution terms for any publically available version or
- * derivative of this code cannot be changed. i.e. this code cannot simply be
- * copied and put under another distribution licence
- * [including the GNU Public Licence.]
- */
-
-
-/* RC4 as implemented from a posting from
- * Newsgroups: sci.crypt
- * From: sterndark@netcom.com (David Sterndark)
- * Subject: RC4 Algorithm revealed.
- * Message-ID: <sternCvKL4B.Hyy@netcom.com>
- * Date: Wed, 14 Sep 1994 06:35:31 GMT
- */
-
-#include "rc4.h"
-
-void RC4_set_key(RC4_KEY *key, int len, const unsigned char *data)
- {
- register RC4_INT tmp;
- register int id1,id2;
- register RC4_INT *d;
- unsigned int i;
-
- d= &(key->data[0]);
- key->x = 0;
- key->y = 0;
- id1=id2=0;
-
-#define SK_LOOP(d,n) { \
- tmp=d[(n)]; \
- id2 = (data[id1] + tmp + id2) & 0xff; \
- if (++id1 == len) id1=0; \
- d[(n)]=d[id2]; \
- d[id2]=tmp; }
-
-#if defined(OPENSSL_CPUID_OBJ) && !defined(OPENSSL_NO_ASM)
-# if defined(__i386) || defined(__i386__) || defined(_M_IX86) || \
- defined(__INTEL__) || \
- defined(__x86_64) || defined(__x86_64__) || defined(_M_AMD64)
- if (sizeof(RC4_INT) > 1) {
- /*
- * Unlike all other x86 [and x86_64] implementations,
- * Intel P4 core [including EM64T] was found to perform
- * poorly with wider RC4_INT. Performance improvement
- * for IA-32 hand-coded assembler turned out to be 2.8x
- * if re-coded for RC4_CHAR! It's however inappropriate
- * to just switch to RC4_CHAR for x86[_64], as non-P4
- * implementations suffer from significant performance
- * losses then, e.g. PIII exhibits >2x deterioration,
- * and so does Opteron. In order to assure optimal
- * all-round performance, we detect P4 at run-time by
- * checking upon reserved bit 20 in CPU capability
- * vector and set up compressed key schedule, which is
- * recognized by correspondingly updated assembler
- * module... Bit 20 is set up by OPENSSL_ia32_cpuid.
- *
- * <appro@fy.chalmers.se>
- */
-#ifdef OPENSSL_FIPS
- unsigned long *ia32cap_ptr = OPENSSL_ia32cap_loc();
- if (ia32cap_ptr && (*ia32cap_ptr & (1<<28))) {
-#else
- if (OPENSSL_ia32cap_P & (1<<28)) {
-#endif
- unsigned char *cp=(unsigned char *)d;
-
- for (i=0;i<256;i++) cp[i]=i;
- for (i=0;i<256;i++) SK_LOOP(cp,i);
- /* mark schedule as compressed! */
- d[256/sizeof(RC4_INT)]=-1;
- return;
- }
- }
-# endif
-#endif
- for (i=0; i < 256; i++) d[i]=i;
- for (i=0; i < 256; i+=4)
- {
- SK_LOOP(d,i+0);
- SK_LOOP(d,i+1);
- SK_LOOP(d,i+2);
- SK_LOOP(d,i+3);
- }
- }
diff --git a/protocols/WhatsApp/src/OpenSSL/rsa_sign.c b/protocols/WhatsApp/src/OpenSSL/rsa_sign.c
deleted file mode 100644
index 1611834466..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/rsa_sign.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/* crypto/rsa/rsa_sign.c */
-/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
- * All rights reserved.
- *
- * This package is an SSL implementation written
- * by Eric Young (eay@cryptsoft.com).
- * The implementation was written so as to conform with Netscapes SSL.
- *
- * This library is free for commercial and non-commercial use as long as
- * the following conditions are aheared to. The following conditions
- * apply to all code found in this distribution, be it the RC4, RSA,
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
- * included with this distribution is covered by the same copyright terms
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
- *
- * Copyright remains Eric Young's, and as such any Copyright notices in
- * the code are not to be removed.
- * If this package is used in a product, Eric Young should be given attribution
- * as the author of the parts of the library used.
- * This can be in the form of a textual message at program startup or
- * in documentation (online or textual) provided with the package.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * "This product includes cryptographic software written by
- * Eric Young (eay@cryptsoft.com)"
- * The word 'cryptographic' can be left out if the rouines from the library
- * being used are not cryptographic related :-).
- * 4. If you include any Windows specific code (or a derivative thereof) from
- * the apps directory (application code) you must include an acknowledgement:
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
- *
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * The licence and distribution terms for any publically available version or
- * derivative of this code cannot be changed. i.e. this code cannot simply be
- * copied and put under another distribution licence
- * [including the GNU Public Licence.]
- */
-
-#include <stdio.h>
-
-/* Size of an SSL signature: MD5+SHA1 */
-#define SSL_SIG_LENGTH 36
-
-int RSA_sign(int type, const unsigned char *m, unsigned int m_len,
- unsigned char *sigret, unsigned int *siglen, void *rsa)
-{
- return(0);
-}
-
-int RSA_verify(int dtype, const unsigned char *m, unsigned int m_len,
- unsigned char *sigbuf, unsigned int siglen, void *rsa)
-{
- return(0);
-}
-
diff --git a/protocols/WhatsApp/src/OpenSSL/sha_locl.h b/protocols/WhatsApp/src/OpenSSL/sha_locl.h
deleted file mode 100644
index da160ceba6..0000000000
--- a/protocols/WhatsApp/src/OpenSSL/sha_locl.h
+++ /dev/null
@@ -1,443 +0,0 @@
-/* crypto/sha/sha_locl.h */
-/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
- * All rights reserved.
- *
- * This package is an SSL implementation written
- * by Eric Young (eay@cryptsoft.com).
- * The implementation was written so as to conform with Netscapes SSL.
- *
- * This library is free for commercial and non-commercial use as long as
- * the following conditions are aheared to. The following conditions
- * apply to all code found in this distribution, be it the RC4, RSA,
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
- * included with this distribution is covered by the same copyright terms
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
- *
- * Copyright remains Eric Young's, and as such any Copyright notices in
- * the code are not to be removed.
- * If this package is used in a product, Eric Young should be given attribution
- * as the author of the parts of the library used.
- * This can be in the form of a textual message at program startup or
- * in documentation (online or textual) provided with the package.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * "This product includes cryptographic software written by
- * Eric Young (eay@cryptsoft.com)"
- * The word 'cryptographic' can be left out if the rouines from the library
- * being used are not cryptographic related :-).
- * 4. If you include any Windows specific code (or a derivative thereof) from
- * the apps directory (application code) you must include an acknowledgement:
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
- *
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * The licence and distribution terms for any publically available version or
- * derivative of this code cannot be changed. i.e. this code cannot simply be
- * copied and put under another distribution licence
- * [including the GNU Public Licence.]
- */
-
-#include <stdlib.h>
-#include <string.h>
-
-#define DATA_ORDER_IS_BIG_ENDIAN
-
-#define HASH_LONG SHA_LONG
-#define HASH_CTX SHA_CTX
-#define HASH_CBLOCK SHA_CBLOCK
-#define HASH_MAKE_STRING(c,s) do { \
- unsigned long ll; \
- ll=(c)->h0; HOST_l2c(ll,(s)); \
- ll=(c)->h1; HOST_l2c(ll,(s)); \
- ll=(c)->h2; HOST_l2c(ll,(s)); \
- ll=(c)->h3; HOST_l2c(ll,(s)); \
- ll=(c)->h4; HOST_l2c(ll,(s)); \
- } while (0)
-
-#if defined(SHA_0)
-
-# define HASH_UPDATE SHA_Update
-# define HASH_TRANSFORM SHA_Transform
-# define HASH_FINAL SHA_Final
-# define HASH_INIT SHA_Init
-# define HASH_BLOCK_DATA_ORDER sha_block_data_order
-# define Xupdate(a,ix,ia,ib,ic,id) (ix=(a)=(ia^ib^ic^id))
-
-static void sha_block_data_order (SHA_CTX *c, const void *p,size_t num);
-
-#elif defined(SHA_1)
-
-# define HASH_UPDATE SHA1_Update
-# define HASH_TRANSFORM SHA1_Transform
-# define HASH_FINAL SHA1_Final
-# define HASH_INIT SHA1_Init
-# define HASH_BLOCK_DATA_ORDER sha1_block_data_order
-# if defined(__MWERKS__) && defined(__MC68K__)
- /* Metrowerks for Motorola fails otherwise:-( <appro@fy.chalmers.se> */
-# define Xupdate(a,ix,ia,ib,ic,id) do { (a)=(ia^ib^ic^id); \
- ix=(a)=ROTATE((a),1); \
- } while (0)
-# else
-# define Xupdate(a,ix,ia,ib,ic,id) ( (a)=(ia^ib^ic^id), \
- ix=(a)=ROTATE((a),1) \
- )
-# endif
-
-#ifndef SHA1_ASM
-static
-#endif
-void sha1_block_data_order (SHA_CTX *c, const void *p,size_t num);
-
-#else
-# error "Either SHA_0 or SHA_1 must be defined."
-#endif
-
-#include "md32_common.h"
-
-#define INIT_DATA_h0 0x67452301UL
-#define INIT_DATA_h1 0xefcdab89UL
-#define INIT_DATA_h2 0x98badcfeUL
-#define INIT_DATA_h3 0x10325476UL
-#define INIT_DATA_h4 0xc3d2e1f0UL
-
-#if defined(SHA_0) && defined(OPENSSL_FIPS)
-FIPS_NON_FIPS_MD_Init(SHA)
-#else
-int HASH_INIT (SHA_CTX *c)
-#endif
- {
-#if defined(SHA_1) && defined(OPENSSL_FIPS)
- FIPS_selftest_check();
-#endif
- c->h0=INIT_DATA_h0;
- c->h1=INIT_DATA_h1;
- c->h2=INIT_DATA_h2;
- c->h3=INIT_DATA_h3;
- c->h4=INIT_DATA_h4;
- c->Nl=0;
- c->Nh=0;
- c->num=0;
- return 1;
- }
-
-#define K_00_19 0x5a827999UL
-#define K_20_39 0x6ed9eba1UL
-#define K_40_59 0x8f1bbcdcUL
-#define K_60_79 0xca62c1d6UL
-
-/* As pointed out by Wei Dai <weidai@eskimo.com>, F() below can be
- * simplified to the code in F_00_19. Wei attributes these optimisations
- * to Peter Gutmann's SHS code, and he attributes it to Rich Schroeppel.
- * #define F(x,y,z) (((x) & (y)) | ((~(x)) & (z)))
- * I've just become aware of another tweak to be made, again from Wei Dai,
- * in F_40_59, (x&a)|(y&a) -> (x|y)&a
- */
-#define F_00_19(b,c,d) ((((c) ^ (d)) & (b)) ^ (d))
-#define F_20_39(b,c,d) ((b) ^ (c) ^ (d))
-#define F_40_59(b,c,d) (((b) & (c)) | (((b)|(c)) & (d)))
-#define F_60_79(b,c,d) F_20_39(b,c,d)
-
-#ifndef OPENSSL_SMALL_FOOTPRINT
-
-#define BODY_00_15(i,a,b,c,d,e,f,xi) \
- (f)=xi+(e)+K_00_19+ROTATE((a),5)+F_00_19((b),(c),(d)); \
- (b)=ROTATE((b),30);
-
-#define BODY_16_19(i,a,b,c,d,e,f,xi,xa,xb,xc,xd) \
- Xupdate(f,xi,xa,xb,xc,xd); \
- (f)+=(e)+K_00_19+ROTATE((a),5)+F_00_19((b),(c),(d)); \
- (b)=ROTATE((b),30);
-
-#define BODY_20_31(i,a,b,c,d,e,f,xi,xa,xb,xc,xd) \
- Xupdate(f,xi,xa,xb,xc,xd); \
- (f)+=(e)+K_20_39+ROTATE((a),5)+F_20_39((b),(c),(d)); \
- (b)=ROTATE((b),30);
-
-#define BODY_32_39(i,a,b,c,d,e,f,xa,xb,xc,xd) \
- Xupdate(f,xa,xa,xb,xc,xd); \
- (f)+=(e)+K_20_39+ROTATE((a),5)+F_20_39((b),(c),(d)); \
- (b)=ROTATE((b),30);
-
-#define BODY_40_59(i,a,b,c,d,e,f,xa,xb,xc,xd) \
- Xupdate(f,xa,xa,xb,xc,xd); \
- (f)+=(e)+K_40_59+ROTATE((a),5)+F_40_59((b),(c),(d)); \
- (b)=ROTATE((b),30);
-
-#define BODY_60_79(i,a,b,c,d,e,f,xa,xb,xc,xd) \
- Xupdate(f,xa,xa,xb,xc,xd); \
- (f)=xa+(e)+K_60_79+ROTATE((a),5)+F_60_79((b),(c),(d)); \
- (b)=ROTATE((b),30);
-
-#ifdef X
-#undef X
-#endif
-#ifndef MD32_XARRAY
- /*
- * Originally X was an array. As it's automatic it's natural
- * to expect RISC compiler to accomodate at least part of it in
- * the register bank, isn't it? Unfortunately not all compilers
- * "find" this expectation reasonable:-( On order to make such
- * compilers generate better code I replace X[] with a bunch of
- * X0, X1, etc. See the function body below...
- * <appro@fy.chalmers.se>
- */
-# define X(i) XX##i
-#else
- /*
- * However! Some compilers (most notably HP C) get overwhelmed by
- * that many local variables so that we have to have the way to
- * fall down to the original behavior.
- */
-# define X(i) XX[i]
-#endif
-
-#if !defined(SHA_1) || !defined(SHA1_ASM)
-static void HASH_BLOCK_DATA_ORDER (SHA_CTX *c, const void *p, size_t num)
- {
- const unsigned char *data=p;
- register unsigned A,B,C,D,E,T,l;
-#ifndef MD32_XARRAY
- unsigned XX0, XX1, XX2, XX3, XX4, XX5, XX6, XX7,
- XX8, XX9,XX10,XX11,XX12,XX13,XX14,XX15;
-#else
- SHA_LONG XX[16];
-#endif
-
- A=c->h0;
- B=c->h1;
- C=c->h2;
- D=c->h3;
- E=c->h4;
-
- for (;;)
- {
- const union { long one; char little; } is_endian = {1};
-
- if (!is_endian.little && sizeof(SHA_LONG)==4 && ((size_t)p%4)==0)
- {
- const SHA_LONG *W=(const SHA_LONG *)data;
-
- X( 0) = W[0]; X( 1) = W[ 1];
- BODY_00_15( 0,A,B,C,D,E,T,X( 0)); X( 2) = W[ 2];
- BODY_00_15( 1,T,A,B,C,D,E,X( 1)); X( 3) = W[ 3];
- BODY_00_15( 2,E,T,A,B,C,D,X( 2)); X( 4) = W[ 4];
- BODY_00_15( 3,D,E,T,A,B,C,X( 3)); X( 5) = W[ 5];
- BODY_00_15( 4,C,D,E,T,A,B,X( 4)); X( 6) = W[ 6];
- BODY_00_15( 5,B,C,D,E,T,A,X( 5)); X( 7) = W[ 7];
- BODY_00_15( 6,A,B,C,D,E,T,X( 6)); X( 8) = W[ 8];
- BODY_00_15( 7,T,A,B,C,D,E,X( 7)); X( 9) = W[ 9];
- BODY_00_15( 8,E,T,A,B,C,D,X( 8)); X(10) = W[10];
- BODY_00_15( 9,D,E,T,A,B,C,X( 9)); X(11) = W[11];
- BODY_00_15(10,C,D,E,T,A,B,X(10)); X(12) = W[12];
- BODY_00_15(11,B,C,D,E,T,A,X(11)); X(13) = W[13];
- BODY_00_15(12,A,B,C,D,E,T,X(12)); X(14) = W[14];
- BODY_00_15(13,T,A,B,C,D,E,X(13)); X(15) = W[15];
- BODY_00_15(14,E,T,A,B,C,D,X(14));
- BODY_00_15(15,D,E,T,A,B,C,X(15));
-
- data += SHA_CBLOCK;
- }
- else
- {
- HOST_c2l(data,l); X( 0)=l; HOST_c2l(data,l); X( 1)=l;
- BODY_00_15( 0,A,B,C,D,E,T,X( 0)); HOST_c2l(data,l); X( 2)=l;
- BODY_00_15( 1,T,A,B,C,D,E,X( 1)); HOST_c2l(data,l); X( 3)=l;
- BODY_00_15( 2,E,T,A,B,C,D,X( 2)); HOST_c2l(data,l); X( 4)=l;
- BODY_00_15( 3,D,E,T,A,B,C,X( 3)); HOST_c2l(data,l); X( 5)=l;
- BODY_00_15( 4,C,D,E,T,A,B,X( 4)); HOST_c2l(data,l); X( 6)=l;
- BODY_00_15( 5,B,C,D,E,T,A,X( 5)); HOST_c2l(data,l); X( 7)=l;
- BODY_00_15( 6,A,B,C,D,E,T,X( 6)); HOST_c2l(data,l); X( 8)=l;
- BODY_00_15( 7,T,A,B,C,D,E,X( 7)); HOST_c2l(data,l); X( 9)=l;
- BODY_00_15( 8,E,T,A,B,C,D,X( 8)); HOST_c2l(data,l); X(10)=l;
- BODY_00_15( 9,D,E,T,A,B,C,X( 9)); HOST_c2l(data,l); X(11)=l;
- BODY_00_15(10,C,D,E,T,A,B,X(10)); HOST_c2l(data,l); X(12)=l;
- BODY_00_15(11,B,C,D,E,T,A,X(11)); HOST_c2l(data,l); X(13)=l;
- BODY_00_15(12,A,B,C,D,E,T,X(12)); HOST_c2l(data,l); X(14)=l;
- BODY_00_15(13,T,A,B,C,D,E,X(13)); HOST_c2l(data,l); X(15)=l;
- BODY_00_15(14,E,T,A,B,C,D,X(14));
- BODY_00_15(15,D,E,T,A,B,C,X(15));
- }
-
- BODY_16_19(16,C,D,E,T,A,B,X( 0),X( 0),X( 2),X( 8),X(13));
- BODY_16_19(17,B,C,D,E,T,A,X( 1),X( 1),X( 3),X( 9),X(14));
- BODY_16_19(18,A,B,C,D,E,T,X( 2),X( 2),X( 4),X(10),X(15));
- BODY_16_19(19,T,A,B,C,D,E,X( 3),X( 3),X( 5),X(11),X( 0));
-
- BODY_20_31(20,E,T,A,B,C,D,X( 4),X( 4),X( 6),X(12),X( 1));
- BODY_20_31(21,D,E,T,A,B,C,X( 5),X( 5),X( 7),X(13),X( 2));
- BODY_20_31(22,C,D,E,T,A,B,X( 6),X( 6),X( 8),X(14),X( 3));
- BODY_20_31(23,B,C,D,E,T,A,X( 7),X( 7),X( 9),X(15),X( 4));
- BODY_20_31(24,A,B,C,D,E,T,X( 8),X( 8),X(10),X( 0),X( 5));
- BODY_20_31(25,T,A,B,C,D,E,X( 9),X( 9),X(11),X( 1),X( 6));
- BODY_20_31(26,E,T,A,B,C,D,X(10),X(10),X(12),X( 2),X( 7));
- BODY_20_31(27,D,E,T,A,B,C,X(11),X(11),X(13),X( 3),X( 8));
- BODY_20_31(28,C,D,E,T,A,B,X(12),X(12),X(14),X( 4),X( 9));
- BODY_20_31(29,B,C,D,E,T,A,X(13),X(13),X(15),X( 5),X(10));
- BODY_20_31(30,A,B,C,D,E,T,X(14),X(14),X( 0),X( 6),X(11));
- BODY_20_31(31,T,A,B,C,D,E,X(15),X(15),X( 1),X( 7),X(12));
-
- BODY_32_39(32,E,T,A,B,C,D,X( 0),X( 2),X( 8),X(13));
- BODY_32_39(33,D,E,T,A,B,C,X( 1),X( 3),X( 9),X(14));
- BODY_32_39(34,C,D,E,T,A,B,X( 2),X( 4),X(10),X(15));
- BODY_32_39(35,B,C,D,E,T,A,X( 3),X( 5),X(11),X( 0));
- BODY_32_39(36,A,B,C,D,E,T,X( 4),X( 6),X(12),X( 1));
- BODY_32_39(37,T,A,B,C,D,E,X( 5),X( 7),X(13),X( 2));
- BODY_32_39(38,E,T,A,B,C,D,X( 6),X( 8),X(14),X( 3));
- BODY_32_39(39,D,E,T,A,B,C,X( 7),X( 9),X(15),X( 4));
-
- BODY_40_59(40,C,D,E,T,A,B,X( 8),X(10),X( 0),X( 5));
- BODY_40_59(41,B,C,D,E,T,A,X( 9),X(11),X( 1),X( 6));
- BODY_40_59(42,A,B,C,D,E,T,X(10),X(12),X( 2),X( 7));
- BODY_40_59(43,T,A,B,C,D,E,X(11),X(13),X( 3),X( 8));
- BODY_40_59(44,E,T,A,B,C,D,X(12),X(14),X( 4),X( 9));
- BODY_40_59(45,D,E,T,A,B,C,X(13),X(15),X( 5),X(10));
- BODY_40_59(46,C,D,E,T,A,B,X(14),X( 0),X( 6),X(11));
- BODY_40_59(47,B,C,D,E,T,A,X(15),X( 1),X( 7),X(12));
- BODY_40_59(48,A,B,C,D,E,T,X( 0),X( 2),X( 8),X(13));
- BODY_40_59(49,T,A,B,C,D,E,X( 1),X( 3),X( 9),X(14));
- BODY_40_59(50,E,T,A,B,C,D,X( 2),X( 4),X(10),X(15));
- BODY_40_59(51,D,E,T,A,B,C,X( 3),X( 5),X(11),X( 0));
- BODY_40_59(52,C,D,E,T,A,B,X( 4),X( 6),X(12),X( 1));
- BODY_40_59(53,B,C,D,E,T,A,X( 5),X( 7),X(13),X( 2));
- BODY_40_59(54,A,B,C,D,E,T,X( 6),X( 8),X(14),X( 3));
- BODY_40_59(55,T,A,B,C,D,E,X( 7),X( 9),X(15),X( 4));
- BODY_40_59(56,E,T,A,B,C,D,X( 8),X(10),X( 0),X( 5));
- BODY_40_59(57,D,E,T,A,B,C,X( 9),X(11),X( 1),X( 6));
- BODY_40_59(58,C,D,E,T,A,B,X(10),X(12),X( 2),X( 7));
- BODY_40_59(59,B,C,D,E,T,A,X(11),X(13),X( 3),X( 8));
-
- BODY_60_79(60,A,B,C,D,E,T,X(12),X(14),X( 4),X( 9));
- BODY_60_79(61,T,A,B,C,D,E,X(13),X(15),X( 5),X(10));
- BODY_60_79(62,E,T,A,B,C,D,X(14),X( 0),X( 6),X(11));
- BODY_60_79(63,D,E,T,A,B,C,X(15),X( 1),X( 7),X(12));
- BODY_60_79(64,C,D,E,T,A,B,X( 0),X( 2),X( 8),X(13));
- BODY_60_79(65,B,C,D,E,T,A,X( 1),X( 3),X( 9),X(14));
- BODY_60_79(66,A,B,C,D,E,T,X( 2),X( 4),X(10),X(15));
- BODY_60_79(67,T,A,B,C,D,E,X( 3),X( 5),X(11),X( 0));
- BODY_60_79(68,E,T,A,B,C,D,X( 4),X( 6),X(12),X( 1));
- BODY_60_79(69,D,E,T,A,B,C,X( 5),X( 7),X(13),X( 2));
- BODY_60_79(70,C,D,E,T,A,B,X( 6),X( 8),X(14),X( 3));
- BODY_60_79(71,B,C,D,E,T,A,X( 7),X( 9),X(15),X( 4));
- BODY_60_79(72,A,B,C,D,E,T,X( 8),X(10),X( 0),X( 5));
- BODY_60_79(73,T,A,B,C,D,E,X( 9),X(11),X( 1),X( 6));
- BODY_60_79(74,E,T,A,B,C,D,X(10),X(12),X( 2),X( 7));
- BODY_60_79(75,D,E,T,A,B,C,X(11),X(13),X( 3),X( 8));
- BODY_60_79(76,C,D,E,T,A,B,X(12),X(14),X( 4),X( 9));
- BODY_60_79(77,B,C,D,E,T,A,X(13),X(15),X( 5),X(10));
- BODY_60_79(78,A,B,C,D,E,T,X(14),X( 0),X( 6),X(11));
- BODY_60_79(79,T,A,B,C,D,E,X(15),X( 1),X( 7),X(12));
-
- c->h0=(c->h0+E)&0xffffffffL;
- c->h1=(c->h1+T)&0xffffffffL;
- c->h2=(c->h2+A)&0xffffffffL;
- c->h3=(c->h3+B)&0xffffffffL;
- c->h4=(c->h4+C)&0xffffffffL;
-
- if (--num == 0) break;
-
- A=c->h0;
- B=c->h1;
- C=c->h2;
- D=c->h3;
- E=c->h4;
-
- }
- }
-#endif
-
-#else /* OPENSSL_SMALL_FOOTPRINT */
-
-#define BODY_00_15(xi) do { \
- T=E+K_00_19+F_00_19(B,C,D); \
- E=D, D=C, C=ROTATE(B,30), B=A; \
- A=ROTATE(A,5)+T+xi; } while(0)
-
-#define BODY_16_19(xa,xb,xc,xd) do { \
- Xupdate(T,xa,xa,xb,xc,xd); \
- T+=E+K_00_19+F_00_19(B,C,D); \
- E=D, D=C, C=ROTATE(B,30), B=A; \
- A=ROTATE(A,5)+T; } while(0)
-
-#define BODY_20_39(xa,xb,xc,xd) do { \
- Xupdate(T,xa,xa,xb,xc,xd); \
- T+=E+K_20_39+F_20_39(B,C,D); \
- E=D, D=C, C=ROTATE(B,30), B=A; \
- A=ROTATE(A,5)+T; } while(0)
-
-#define BODY_40_59(xa,xb,xc,xd) do { \
- Xupdate(T,xa,xa,xb,xc,xd); \
- T+=E+K_40_59+F_40_59(B,C,D); \
- E=D, D=C, C=ROTATE(B,30), B=A; \
- A=ROTATE(A,5)+T; } while(0)
-
-#define BODY_60_79(xa,xb,xc,xd) do { \
- Xupdate(T,xa,xa,xb,xc,xd); \
- T=E+K_60_79+F_60_79(B,C,D); \
- E=D, D=C, C=ROTATE(B,30), B=A; \
- A=ROTATE(A,5)+T+xa; } while(0)
-
-#if !defined(SHA_1) || !defined(SHA1_ASM)
-static void HASH_BLOCK_DATA_ORDER (SHA_CTX *c, const void *p, size_t num)
- {
- const unsigned char *data=p;
- register unsigned MD32_REG_T A,B,C,D,E,T,l;
- int i;
- SHA_LONG X[16];
-
- A=c->h0;
- B=c->h1;
- C=c->h2;
- D=c->h3;
- E=c->h4;
-
- for (;;)
- {
- for (i=0;i<16;i++)
- { HOST_c2l(data,l); X[i]=l; BODY_00_15(X[i]); }
- for (i=0;i<4;i++)
- { BODY_16_19(X[i], X[i+2], X[i+8], X[(i+13)&15]); }
- for (;i<24;i++)
- { BODY_20_39(X[i&15], X[(i+2)&15], X[(i+8)&15],X[(i+13)&15]); }
- for (i=0;i<20;i++)
- { BODY_40_59(X[(i+8)&15],X[(i+10)&15],X[i&15], X[(i+5)&15]); }
- for (i=4;i<24;i++)
- { BODY_60_79(X[(i+8)&15],X[(i+10)&15],X[i&15], X[(i+5)&15]); }
-
- c->h0=(c->h0+A)&0xffffffffL;
- c->h1=(c->h1+B)&0xffffffffL;
- c->h2=(c->h2+C)&0xffffffffL;
- c->h3=(c->h3+D)&0xffffffffL;
- c->h4=(c->h4+E)&0xffffffffL;
-
- if (--num == 0) break;
-
- A=c->h0;
- B=c->h1;
- C=c->h2;
- D=c->h3;
- E=c->h4;
-
- }
- }
-#endif
-
-#endif
diff --git a/protocols/WhatsApp/src/WASocketConnection.cpp b/protocols/WhatsApp/src/WASocketConnection.cpp
deleted file mode 100644
index 316d8fb5af..0000000000
--- a/protocols/WhatsApp/src/WASocketConnection.cpp
+++ /dev/null
@@ -1,104 +0,0 @@
-#include "stdafx.h"
-#include "WASocketConnection.h"
-
-HNETLIBUSER g_hNetlibUser = nullptr;
-
-void WASocketConnection::initNetwork(HNETLIBUSER hNetlibUser) throw (WAException)
-{
- g_hNetlibUser = hNetlibUser;
-}
-
-void WASocketConnection::quitNetwork()
-{
-}
-
-WASocketConnection::WASocketConnection(const std::string &dir, int port) throw (WAException)
-{
- NETLIBOPENCONNECTION noc = { sizeof(noc) };
- noc.szHost = dir.c_str();
- noc.wPort = port;
- noc.flags = NLOCF_V2; // | NLOCF_SSL;
- this->hConn = Netlib_OpenConnection(g_hNetlibUser, &noc);
- if (this->hConn == nullptr)
- throw WAException(getLastErrorMsg(), WAException::SOCKET_EX, WAException::SOCKET_EX_OPEN);
-
- this->connected = true;
-}
-
-void WASocketConnection::write(int i)
-{
- char buffer;
- buffer = (char)i;
-
- int result = Netlib_Send(this->hConn, &buffer, 1, MSG_NOHTTPGATEWAYWRAP | MSG_NODUMP);
- if (result < 1)
- throw WAException(getLastErrorMsg(), WAException::SOCKET_EX, WAException::SOCKET_EX_SEND);
-}
-
-void WASocketConnection::makeNonBlock()
-{
- throw WAException("Error setting socket nonblocking!", WAException::SOCKET_EX, WAException::SOCKET_EX_OPEN);
-}
-
-void WASocketConnection::flush() {}
-
-void WASocketConnection::write(const std::vector<unsigned char> &bytes, int length)
-{
- std::string tmpBuf = std::string(bytes.begin(), bytes.end());
- int result = Netlib_Send(hConn, tmpBuf.c_str(), length, MSG_NODUMP);
- if (result < length)
- throw WAException(getLastErrorMsg(), WAException::SOCKET_EX, WAException::SOCKET_EX_SEND);
-}
-
-unsigned char WASocketConnection::read()
-{
- SetLastError(0);
-
- char c;
- int result = Netlib_Recv(this->hConn, &c, 1, 0);
- if (result <= 0)
- throw WAException(getLastErrorMsg(), WAException::SOCKET_EX, WAException::SOCKET_EX_RECV);
-
- return c;
-}
-
-int WASocketConnection::read(unsigned char *buf, int length)
-{
- int result = Netlib_Recv(this->hConn, (char*)buf, length, MSG_NODUMP);
- if (result <= 0)
- throw WAException(getLastErrorMsg(), WAException::SOCKET_EX, WAException::SOCKET_EX_RECV);
-
- return result;
-}
-
-int WASocketConnection::read(std::vector<unsigned char>& b, int off, int length)
-{
- if (off < 0 || length < 0)
- throw new WAException("Out of bounds", WAException::SOCKET_EX, WAException::SOCKET_EX_RECV);
-
- char* buffer = (char*)_alloca(length);
- int result = Netlib_Recv(this->hConn, buffer, length, MSG_NOHTTPGATEWAYWRAP | MSG_NODUMP);
- if (result <= 0)
- throw WAException(getLastErrorMsg(), WAException::SOCKET_EX, WAException::SOCKET_EX_RECV);
-
- for (int i = 0; i < result; i++)
- b[off + i] = buffer[i];
-
- return result;
-}
-
-void WASocketConnection::forceShutdown()
-{
- Netlib_Shutdown(this->hConn);
-}
-
-void WASocketConnection::log(const char *prefix, const char *str)
-{
- Netlib_Logf(g_hNetlibUser, "%s%s", prefix, str);
-}
-
-WASocketConnection::~WASocketConnection()
-{
- this->forceShutdown();
- Netlib_CloseHandle(this->hConn);
-}
diff --git a/protocols/WhatsApp/src/WASocketConnection.h b/protocols/WhatsApp/src/WASocketConnection.h
deleted file mode 100644
index 83eb61e7f5..0000000000
--- a/protocols/WhatsApp/src/WASocketConnection.h
+++ /dev/null
@@ -1,35 +0,0 @@
-#if !defined(WASOCKETCONNECTION_H)
-#define WASOCKETCONNECTION_H
-
-#include "WhatsAPI++/ISocketConnection.h"
-#include "WhatsAPI++/WAException.h"
-
-class WASocketConnection : public ISocketConnection
-{
- int readSize;
- int maxBufRead;
- bool connected;
-
- HNETLIBCONN hConn;
-
-public:
- WASocketConnection(const std::string &dir, int port) throw (WAException);
- virtual ~WASocketConnection();
-
- virtual void write(int i);
- virtual unsigned char read();
- virtual int read(std::vector<unsigned char>& b, int off, int length);
- virtual int read(unsigned char*, int length);
- virtual void flush();
- virtual void write(const std::vector<unsigned char>& b, int length);
- // virtual void write(const std::vector<unsigned char>& bytes, int offset, int length);
- virtual void makeNonBlock();
- virtual void forceShutdown();
-
- virtual void log(const char *prefix, const char *str);
-
- static void initNetwork(HNETLIBUSER hNetlibUser) throw (WAException);
- static void quitNetwork();
-};
-
-#endif // WASOCKETCONNECTION_H \ No newline at end of file
diff --git a/protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeReader.cpp b/protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeReader.cpp
deleted file mode 100644
index b3ed6aa3f5..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeReader.cpp
+++ /dev/null
@@ -1,347 +0,0 @@
-/*
- * BinTreeNodeReader.cpp
- *
- * Created on: 26/06/2012
- * Author: Antonio
- */
-
-#include "../stdafx.h" // #TODO Remove Miranda-dependency
-
-#include "BinTreeNodeReader.h"
-#include "WAException.h"
-#include "ProtocolTreeNode.h"
-#include "utilities.h"
-
-extern const char *dictionary[], *extended_dict[];
-
-BinTreeNodeReader::BinTreeNodeReader(WAConnection *conn, ISocketConnection *connection) :
- buf(BUFFER_SIZE)
-{
- this->conn = conn;
- this->rawIn = connection;
- this->readSize = 1;
- this->in = NULL;
-}
-
-BinTreeNodeReader::~BinTreeNodeReader()
-{
- delete this->in;
-}
-
-ProtocolTreeNode* BinTreeNodeReader::nextTreeInternal()
-{
- int b = this->in->read();
- int size = readListSize(b);
- b = this->in->read();
- if (b == 2)
- return NULL;
-
- std::string* tag = this->readStringAsString(b);
-
- if ((size == 0) || (tag == NULL))
- throw WAException("nextTree sees 0 list or null tag", WAException::CORRUPT_STREAM_EX, -1);
- int attribCount = (size - 2 + size % 2) / 2;
- std::map<string, string>* attribs = readAttributes(attribCount);
- if (size % 2 == 1) {
- ProtocolTreeNode* ret = new ProtocolTreeNode(*tag); ret->attributes = attribs;
- delete tag;
- return ret;
- }
- b = this->in->read();
- if (isListTag(b)) {
- ProtocolTreeNode* ret = new ProtocolTreeNode(*tag, NULL, readList(b)); ret->attributes = attribs;
- delete tag;
- return ret;
- }
-
- ReadData* obj = this->readString(b);
- std::vector<unsigned char>* data;
- if (obj->type == STRING) {
- std::string* s = (std::string*) obj->data;
- data = new std::vector<unsigned char>(s->begin(), s->end());
- delete s;
- }
- else data = (std::vector<unsigned char>*) obj->data;
-
- ProtocolTreeNode* ret = new ProtocolTreeNode(*tag, data); ret->attributes = attribs;
- delete obj;
- delete tag;
- return ret;
-}
-
-bool BinTreeNodeReader::isListTag(int b)
-{
- return (b == 248) || (b == 0) || (b == 249);
-}
-
-void BinTreeNodeReader::decodeStream(int flags, int offset, int length)
-{
- unsigned char *pData = (unsigned char*)&buf[0];
-
- if ((flags & 8) != 0) {
- if (length < 4)
- throw WAException("invalid length" + length, WAException::CORRUPT_STREAM_EX, 0);
-
- length -= 4;
-
- this->conn->inputKey.decodeMessage(pData, offset + length, 0, length);
- }
-
- if (this->in != NULL)
- delete this->in;
- this->in = new ByteArrayInputStream(&this->buf, offset, length);
-}
-
-std::map<string, string>* BinTreeNodeReader::readAttributes(int attribCount)
-{
- std::map<string, string>* attribs = new std::map<string, string>();
- for (int i = 0; i < attribCount; i++) {
- std::string* key = readStringAsString();
- std::string* value = readStringAsString();
- (*attribs)[*key] = *value;
- delete key;
- delete value;
- }
- return attribs;
-}
-
-std::vector<ProtocolTreeNode*>* BinTreeNodeReader::readList(int token)
-{
- int size = readListSize(token);
- std::vector<ProtocolTreeNode*>* list = new std::vector<ProtocolTreeNode*>(size);
- for (int i = 0; i < size; i++)
- (*list)[i] = nextTreeInternal();
-
- return list;
-}
-
-int BinTreeNodeReader::readListSize(int token)
-{
- switch (token) {
- case 0: return 0;
- case 248: return readInt8(this->in);
- case 249: return readInt16(this->in);
- default:
- throw new WAException("invalid list size in readListSize: token " + token, WAException::CORRUPT_STREAM_EX, 0);
- }
- return 0;
-}
-
-std::vector<ProtocolTreeNode*>* BinTreeNodeReader::readList()
-{
- return readList(this->in->read());
-}
-
-ReadData* BinTreeNodeReader::readString()
-{
- return readString(this->in->read());
-}
-
-ReadData* BinTreeNodeReader::readString(int token)
-{
- if (token == -1)
- throw WAException("-1 token in readString", WAException::CORRUPT_STREAM_EX, -1);
-
- int bSize;
- ReadData *ret = new ReadData();
-
- if (token > 2 && token <= 236) {
- if (token != 236)
- ret->data = new std::string(dictionary[token]);
- else {
- token = readInt8(this->in);
- ret->data = new std::string(extended_dict[token]);
- }
-
- ret->type = STRING;
- return ret;
- }
-
- switch (token) {
- case 0:
- delete ret;
- return NULL;
-
- case 252:
- bSize = readInt8(this->in);
- {
- std::vector<unsigned char>* buf8 = new std::vector<unsigned char>(bSize);
- fillArray(*buf8, bSize, this->in);
- ret->type = ARRAY;
- ret->data = buf8;
- }
- return ret;
-
- case 253:
- bSize = readInt24(this->in);
- {
- std::vector<unsigned char>* buf24 = new std::vector<unsigned char>(bSize);
- fillArray(*buf24, bSize, this->in);
- ret->type = ARRAY;
- ret->data = buf24;
- }
- return ret;
-
- case 255:
- bSize = readInt8(this->in);
- {
- int size = bSize & 0x7f;
- int numnibbles = size * 2 - ((bSize & 0x80) ? 1 : 0);
-
- std::vector<unsigned char> tmp(size);
- fillArray(tmp, size, this->in);
- std::string s;
- for (int i = 0; i < numnibbles; i++) {
- char c = (tmp[i / 2] >> (4 - ((i & 1) << 2))) & 0xF;
- if (c < 10) s += (c + '0');
- else s += (c - 10 + '-');
- }
-
- ret->type = STRING;
- ret->data = new std::string(s);
- }
- return ret;
-
- case 250:
- std::string* user = readStringAsString();
- std::string* server = readStringAsString();
- if ((user != NULL) && (server != NULL)) {
- std::string* result = new std::string(*user + "@" + *server);
- delete user;
- delete server;
- ret->type = STRING;
- ret->data = result;
- return ret;
- }
- if (server != NULL) {
- ret->type = STRING;
- ret->data = server;
- return ret;
- }
- throw WAException("readString couldn't reconstruct jid", WAException::CORRUPT_STREAM_EX, -1);
- }
- throw WAException("readString couldn't match token" + (int)token, WAException::CORRUPT_STREAM_EX, -1);
-}
-
-std::string* BinTreeNodeReader::objectAsString(ReadData* o)
-{
- if (o->type == STRING)
- return (std::string*) o->data;
-
- if (o->type == ARRAY) {
- std::vector<unsigned char>* v = (std::vector<unsigned char>*) o->data;
- std::string* ret = new std::string(v->begin(), v->end());
- delete v;
- return ret;
- }
-
- return NULL;
-}
-
-std::string* BinTreeNodeReader::readStringAsString()
-{
- ReadData* o = this->readString();
- std::string* ret = this->objectAsString(o);
- delete o;
- return ret;
-}
-
-std::string* BinTreeNodeReader::readStringAsString(int token)
-{
- ReadData* o = this->readString(token);
- std::string* ret = this->objectAsString(o);
- delete o;
- return ret;
-}
-
-void BinTreeNodeReader::fillArray(std::vector<unsigned char>& buff, int len, ByteArrayInputStream* in)
-{
- int count = 0;
- while (count < len)
- count += in->read(buff, count, len - count);
-}
-
-void BinTreeNodeReader::fillArray(std::vector<unsigned char>& buff, int len, ISocketConnection *in)
-{
- int count = 0;
- while (count < len)
- count += in->read(buff, count, len - count);
-}
-
-void BinTreeNodeReader::getTopLevelStream()
-{
- int stanzaSize = readInt24(this->rawIn);
- int flags = (stanzaSize >> 20);
- stanzaSize &= 0x0FFFFF;
-
- if (this->buf.size() < (size_t)stanzaSize) {
- int newsize = max((int)(this->buf.size() * 3 / 2), stanzaSize);
- this->buf.resize(newsize);
- }
- fillArray(this->buf, stanzaSize, this->rawIn);
-
- this->decodeStream(flags, 0, stanzaSize);
-}
-
-int BinTreeNodeReader::readInt8(ByteArrayInputStream* in)
-{
- return in->read();
-}
-
-int BinTreeNodeReader::readInt16(ByteArrayInputStream* in)
-{
- int intTop = in->read();
- int intBot = in->read();
- int value = (intTop << 8) + intBot;
- return value;
-}
-
-int BinTreeNodeReader::readInt24(ByteArrayInputStream* in)
-{
- int int1 = in->read();
- int int2 = in->read();
- int int3 = in->read();
- int value = (int1 << 16) + (int2 << 8) + int3;
-
- return value;
-}
-
-ProtocolTreeNode* BinTreeNodeReader::nextTree()
-{
- this->getTopLevelStream();
- return nextTreeInternal();
-}
-
-void BinTreeNodeReader::streamStart()
-{
- this->getTopLevelStream();
-
- int tag = this->in->read();
- int size = readListSize(tag);
- tag = this->in->read();
- if (tag != 1)
- throw WAException("expecting STREAM_START in streamStart", WAException::CORRUPT_STREAM_EX, 0);
-
- int attribCount = (size - 2 + size % 2) / 2;
- std::map<string, string>* attributes = readAttributes(attribCount);
- delete attributes;
-}
-
-int BinTreeNodeReader::readInt8(ISocketConnection *in)
-{
- return in->read();
-}
-
-int BinTreeNodeReader::readInt16(ISocketConnection *in)
-{
- unsigned char data[2];
- in->read(data, 2);
- return (int(data[0]) << 8) + int(data[1]);
-}
-
-int BinTreeNodeReader::readInt24(ISocketConnection *in)
-{
- unsigned char data[3];
- in->read(data, 3);
- return (int(data[0]) << 16) + (int(data[1]) << 8) + int(data[2]);
-}
diff --git a/protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeReader.h b/protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeReader.h
deleted file mode 100644
index 7a2d43454d..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeReader.h
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * BinTreeNodeReader.h
- *
- * Created on: 26/06/2012
- * Author: Antonio
- */
-#ifndef BINTREENODEREADER_H_
-#define BINTREENODEREADER_H_
-
-#include "ProtocolTreeNode.h"
-#include "ISocketConnection.h"
-#include "ByteArray.h"
-#include "WAConnection.h"
-#include <string>
-#include <vector>
-#include <map>
-
-#define BUFFER_SIZE 512
-
-class WAConnection;
-
-enum ReadType {STRING, ARRAY};
-
-class ReadData {
-public:
- ReadData() {};
- virtual ~ReadData() {};
-
- ReadType type;
- void * data;
-};
-
-class BinTreeNodeReader {
-private:
- ISocketConnection *rawIn;
- ByteArrayInputStream* in;
- std::vector<unsigned char> buf;
- int readSize;
- WAConnection *conn;
-
- ProtocolTreeNode* nextTreeInternal();
- bool isListTag(int b);
- void decodeStream(int flags, int offset, int length);
- std::map<string,string>* readAttributes(int attribCount);
- std::vector<ProtocolTreeNode*>* readList(int token);
- int readListSize(int token);
- std::vector<ProtocolTreeNode*>* readList();
- ReadData* readString();
- ReadData* readString(int token);
- static void fillArray(std::vector<unsigned char>& buff, int len, ByteArrayInputStream* in);
- static void fillArray(std::vector<unsigned char>& buff, int len, ISocketConnection *in);
- std::string* objectAsString(ReadData* o);
- std::string* readStringAsString();
- std::string* readStringAsString(int token);
- void getTopLevelStream();
- static int readInt8(ByteArrayInputStream* in);
- static int readInt8(ISocketConnection *in);
- static int readInt16(ByteArrayInputStream* in);
- static int readInt16(ISocketConnection *in);
- static int readInt24(ByteArrayInputStream* in);
- static int readInt24(ISocketConnection *in);
-
-
-public:
- BinTreeNodeReader(WAConnection* conn, ISocketConnection* connection);
- ~BinTreeNodeReader();
- ProtocolTreeNode* nextTree();
- void streamStart();
-
-};
-
-#endif /* BINTREENODEREADER_H_ */
-
diff --git a/protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeWriter.cpp b/protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeWriter.cpp
deleted file mode 100644
index 19bf6a466f..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeWriter.cpp
+++ /dev/null
@@ -1,276 +0,0 @@
-/*
- * BinTreeNodeWriter.cpp
- *
- * Created on: 26/06/2012
- * Author: Antonio
- */
-
-#include "../stdafx.h" // #TODO Remove Miranda-dependency
-
-#include "BinTreeNodeWriter.h"
-#include "utilities.h"
-
-BinTreeNodeWriter::BinTreeNodeWriter(WAConnection *_conn, ISocketConnection *_connection, IMutex *_mutex)
-{
- bSecure = false;
- bFlush = true;
- mutex = _mutex;
- conn = _conn;
- out = new ByteArrayOutputStream(4096);
- realOut = _connection;
- dataBegin = 0;
-}
-
-BinTreeNodeWriter::~BinTreeNodeWriter()
-{
- delete out;
-}
-
-void BinTreeNodeWriter::writeDummyHeader()
-{
- dataBegin = (int)out->getPosition(); // save node start offset
-
- unsigned char zero3[3] = { 0, 0, 0 };
- out->write(zero3, 3);
-}
-
-void BinTreeNodeWriter::processBuffer()
-{
- unsigned char num = 0;
- if (bSecure) {
- unsigned char zero4[4] = { 0, 0, 0, 0 };
- out->write(zero4, 4); // reserve place for hmac
- num = 0x80;
- }
- int num3 = (int)out->getLength() - 3 - dataBegin;
- if (num3 >= 1048576L)
- throw WAException("Buffer too large: " + num3, WAException::CORRUPT_STREAM_EX, 0);
-
- std::vector<unsigned char> &buffer = out->getBuffer();
- if (bSecure) {
- int num4 = num3 - 4;
- conn->outputKey.encodeMessage(buffer.data(), dataBegin + 3 + num4, dataBegin + 3, num4);
- }
-
- buffer[dataBegin + 2] = (unsigned char)(num3 & 0xFF); num3 >>= 8;
- buffer[dataBegin + 1] = (unsigned char)(num3 & 0xFF); num3 >>= 8;
- buffer[dataBegin] = (unsigned char)(num3 & 0xFF) | num;
-}
-
-void BinTreeNodeWriter::streamStart(std::string domain, std::string resource)
-{
- this->mutex->lock();
- try {
- out->setPosition(0);
- out->setLength(0);
- out->write('W');
- out->write('A');
- out->write(1);
- out->write(5);
-
- std::map<string, string> attributes;
- attributes["to"] = domain;
- attributes["resource"] = resource;
- this->writeDummyHeader();
- this->writeListStart((int)attributes.size() * 2 + 1);
- out->write(1);
- this->writeAttributes(&attributes);
- this->processBuffer();
- this->flushBuffer(true);
- }
- catch (exception& ex) {
- this->mutex->unlock();
- throw ex;
- }
- this->mutex->unlock();
-}
-
-void BinTreeNodeWriter::writeListStart(int i)
-{
- if (i == 0) {
- out->write(0);
- }
- else if (i < 256) {
- out->write(248);
- writeInt8(i);
- }
- else {
- out->write(249);
- writeInt16(i);
- }
-}
-
-void BinTreeNodeWriter::writeInt8(int v)
-{
- out->write(v & 0xFF);
-}
-
-void BinTreeNodeWriter::writeInt16(int v, ISocketConnection* o)
-{
- o->write((v & 0xFF00) >> 8);
- o->write((v & 0xFF) >> 0);
-}
-
-void BinTreeNodeWriter::writeInt16(int v)
-{
- writeInt16(v, this->out);
-}
-
-void BinTreeNodeWriter::writeInt16(int v, ByteArrayOutputStream* o)
-{
- o->write((v & 0xFF00) >> 8);
- o->write((v & 0xFF) >> 0);
-}
-
-void BinTreeNodeWriter::writeAttributes(std::map<string, string>* attributes)
-{
- if (attributes != NULL) {
- std::map<string, string>::iterator ii;
- for (ii = attributes->begin(); ii != attributes->end(); ii++) {
- writeString(ii->first);
- writeString(ii->second);
- }
- }
-}
-
-void BinTreeNodeWriter::writeString(const std::string &tag)
-{
- int token = WAConnection::tokenLookup(tag);
- if (token != -1)
- writeToken(token);
- else {
- size_t atIndex = tag.find('@');
- if (atIndex == 0 || atIndex == string::npos)
- writeBytes((unsigned char*)tag.data(), (int)tag.length());
- else {
- std::string server = tag.substr(atIndex + 1);
- std::string user = tag.substr(0, atIndex);
- writeJid(&user, server);
- }
- }
-}
-
-void BinTreeNodeWriter::writeJid(std::string* user, const std::string &server)
-{
- out->write(250);
- if (user != NULL && !user->empty())
- writeString(*user);
- else
- writeToken(0);
-
- writeString(server);
-
-}
-
-void BinTreeNodeWriter::writeToken(int intValue)
-{
- if (intValue & 0x100) {
- out->write(236);
- out->write(intValue & 0xFF);
- }
- else out->write(intValue);
-}
-
-void BinTreeNodeWriter::writeBytes(unsigned char* bytes, int length)
-{
- if (length >= 256) {
- out->write(253);
- writeInt24(length);
- }
- else {
- out->write(252);
- writeInt8(length);
- }
- out->write(bytes, length);
-}
-
-void BinTreeNodeWriter::writeInt24(int v)
-{
- out->write((v & 0xFF0000) >> 16);
- out->write((v & 0xFF00) >> 8);
- out->write(v & 0xFF);
-}
-
-void BinTreeNodeWriter::writeInternal(const ProtocolTreeNode &node)
-{
- writeListStart(
- 1 + (node.attributes == NULL ? 0 : (int)node.attributes->size() * 2)
- + (node.children == NULL ? 0 : 1)
- + (node.data == NULL ? 0 : 1));
- writeString(node.tag);
- writeAttributes(node.attributes);
- if (node.data != NULL)
- writeBytes((unsigned char*)node.data->data(), (int)node.data->size());
-
- if (node.children != NULL && !node.children->empty()) {
- writeListStart((int)node.children->size());
- for (size_t a = 0; a < node.children->size(); a++)
- writeInternal(*(*node.children)[a]);
- }
-}
-
-void BinTreeNodeWriter::flushBuffer(bool flushNetwork)
-{
- try {
- this->processBuffer();
- }
- catch (WAException& ex) {
- out->setPosition(0);
- out->setLength(0);
- throw ex;
- }
-
- if (!flushNetwork)
- return;
-
- std::vector<unsigned char> &buffer = out->getBuffer();
- this->realOut->write(buffer, (int)buffer.size());
- if (out->getCapacity() - out->getLength() < 3L || out->getLength() > 4096L) {
- delete out;
- out = new ByteArrayOutputStream(4096);
- }
- else {
- out->setPosition(0);
- out->setLength(0);
- }
- dataBegin = 0;
-}
-
-void BinTreeNodeWriter::streamEnd()
-{
- this->mutex->lock();
- try {
- writeListStart(1);
- out->write(2);
- flushBuffer(true);
- }
- catch (exception& ex) {
- this->mutex->unlock();
- throw ex;
- }
- this->mutex->unlock();
-}
-
-void BinTreeNodeWriter::write(const ProtocolTreeNode& node)
-{
- this->mutex->lock();
- try {
- this->writeDummyHeader();
-
- if (bSecure) {
- string tmp = node.toString();
- this->realOut->log("XML written:\n", tmp.c_str());
- }
-
- if (node.tag.empty())
- out->write(0);
- else
- writeInternal(node);
- flushBuffer(bFlush);
- }
- catch (exception& ex) {
- this->mutex->unlock();
- throw WAException(ex.what());
- }
- this->mutex->unlock();
-}
diff --git a/protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeWriter.h b/protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeWriter.h
deleted file mode 100644
index f7ed6a6bc8..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/BinTreeNodeWriter.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * BinTreeNodeWriter.h
- *
- * Created on: 26/06/2012
- * Author: Antonio
- */
-
-
-#ifndef BINTREENODEWRITER_H_
-#define BINTREENODEWRITER_H_
-
-#include <string>
-#include "ProtocolTreeNode.h"
-#include "ISocketConnection.h"
-#include "ByteArray.h"
-#include "IMutex.h"
-#include "WAConnection.h"
-
-using namespace std;
-
-#define STREAM_START 1
-#define STREAM_END 2
-#define LIST_EMPTY 0
-#define LIST_8 248
-#define LIST_16 249
-#define JID_PAIR 250
-#define BINARY_8 252
-#define BINARY_24 253
-#define TOKEN_8 254
-
-#include <map>
-
-class BinTreeNodeWriter
-{
- friend class WAConnection;
-
- WAConnection *conn;
- ISocketConnection *realOut;
- ByteArrayOutputStream *out;
- IMutex *mutex;
- int dataBegin;
- bool bSecure, bFlush;
-
- void writeListStart(int i);
- void writeInt8(int v);
- void writeInt16(int v, ISocketConnection* out);
- void writeInt16(int v, ByteArrayOutputStream* out);
- void writeInt16(int v);
- void writeAttributes(std::map<string, string>* attributes);
- void writeString(const std::string &tag);
- void writeJid(std::string* user, const std::string &server);
- void writeToken(int intValue);
- void writeBytes(unsigned char* bytes, int length);
- void writeInt24(int v);
- void writeInternal(const ProtocolTreeNode &node);
- void writeDummyHeader();
- void processBuffer();
-
-public:
- BinTreeNodeWriter(WAConnection* conn, ISocketConnection* connection, IMutex* mutex);
- ~BinTreeNodeWriter();
-
- void streamStart(std::string domain, std::string resource);
- void flushBuffer(bool flushNetwork);
- void streamEnd();
- void write(const ProtocolTreeNode &node);
-
- void setSecure() { bSecure = true; }
-};
-
-#endif /* BINTREENODEWRITER_H_ */
diff --git a/protocols/WhatsApp/src/WhatsAPI++/ByteArray.cpp b/protocols/WhatsApp/src/WhatsAPI++/ByteArray.cpp
deleted file mode 100644
index 8dbc044e67..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/ByteArray.cpp
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * ByteArray.cpp
- *
- * Created on: 26/06/2012
- * Author: Antonio
- */
-
-#include "../stdafx.h" // #TODO Remove Miranda-dependency
-
-#include "ByteArray.h"
-#include "WAException.h"
-#include "utilities.h"
-
-ByteArrayOutputStream::ByteArrayOutputStream(int size)
-{
- buf.reserve(size);
- position = 0;
-}
-
-void ByteArrayOutputStream::setLength(size_t length)
-{
- buf.resize(length);
-}
-
-void ByteArrayOutputStream::setPosition(size_t count)
-{
- position = count;
-}
-
-
-std::vector<unsigned char>& ByteArrayOutputStream::getBuffer()
-{
- return buf;
-}
-
-void ByteArrayOutputStream::write(int i)
-{
- if (this->position == this->buf.size())
- buf.push_back((unsigned char)i);
- else
- buf[position] = (unsigned char)i;
- position++;
-}
-
-void ByteArrayOutputStream::write(unsigned char* b, size_t len)
-{
- if (len == 0)
- return;
-
- for (size_t i = 0; i < len; i++)
- write(b[i]);
-}
-
-void ByteArrayOutputStream::write(const std::string &s)
-{
- for (size_t i = 0; i < s.size(); i++)
- write((unsigned char)s[i]);
-}
-
-ByteArrayOutputStream::~ByteArrayOutputStream()
-{
-}
-
-ByteArrayInputStream::ByteArrayInputStream(std::vector<unsigned char>* buf, size_t off, size_t length)
-{
- this->buf = buf;
- this->pos = off;
- this->count = min(off + length, buf->size());
-}
-
-ByteArrayInputStream::ByteArrayInputStream(std::vector<unsigned char>* buf)
-{
- this->buf = buf;
- this->pos = 0;
- this->count = buf->size();
-}
-
-int ByteArrayInputStream::read()
-{
- return (pos < count) ? ((*this->buf)[pos++]) : -1;
-}
-
-int ByteArrayInputStream::read(std::vector<unsigned char>& b, size_t off, size_t len)
-{
- if (len > (b.size() - off))
- throw new WAException("Index out of bounds");
-
- if (len == 0)
- return 0;
-
- int c = read();
- if (c == -1)
- return -1;
-
- b[off] = (unsigned char)c;
-
- size_t i = 1;
- try {
- for (; i < len; i++) {
- c = read();
- if (c == -1)
- break;
-
- b[off + i] = (unsigned char)c;
- }
- }
- catch (std::exception&) {
- }
- return (int)i;
-}
-
-ByteArrayInputStream::~ByteArrayInputStream()
-{}
diff --git a/protocols/WhatsApp/src/WhatsAPI++/ByteArray.h b/protocols/WhatsApp/src/WhatsAPI++/ByteArray.h
deleted file mode 100644
index d3375d1f3b..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/ByteArray.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * ByteArray.h
- *
- * Created on: 26/06/2012
- * Author: Antonio
- */
-
-
-
-#ifndef BYTEARRAY_H_
-#define BYTEARRAY_H_
-
-#include <vector>
-#include <string>
-
-class ByteArrayOutputStream {
-protected:
- std::vector<unsigned char> buf;
- size_t position;
-
-public:
- ByteArrayOutputStream(int size = 32);
- virtual ~ByteArrayOutputStream();
-
- std::vector<unsigned char>& getBuffer();
- void setPosition(size_t count);
- void write(int i);
- void write(unsigned char* c, size_t length);
- void write(const std::string &s);
- void setLength(size_t length);
-
- __forceinline size_t getCapacity() const { return buf.capacity(); }
- __forceinline size_t getLength() const { return buf.size(); }
- __forceinline size_t getPosition() const { return position; }
-};
-
-class ByteArrayInputStream {
-protected:
- std::vector<unsigned char>* buf;
- size_t pos;
- size_t mark;
- size_t count;
-
-public:
- ByteArrayInputStream(std::vector<unsigned char>* buf, size_t off, size_t length );
- ByteArrayInputStream(std::vector<unsigned char>* buf);
- int read();
- int read(std::vector<unsigned char>& b, size_t off, size_t length);
-
- virtual ~ByteArrayInputStream();
-};
-
-#endif /* BYTEARRAY_H_ */
diff --git a/protocols/WhatsApp/src/WhatsAPI++/FMessage.cpp b/protocols/WhatsApp/src/WhatsAPI++/FMessage.cpp
deleted file mode 100644
index 8358560f99..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/FMessage.cpp
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * FMessage.cpp
- *
- * Created on: 02/07/2012
- * Author: Antonio
- */
-
-#include "../stdafx.h" // #TODO Remove Miranda-dependency
-
-#include "utilities.h"
-
-FMessage::FMessage() :
- key("", false, "")
-{
- this->timestamp = 0;
- this->media_wa_type = 0;
- this->longitude = 0;
- this->latitude = 0;
- this->media_duration_seconds = 0;
- this->media_size = 0;
-}
-
-FMessage::FMessage(const std::string &remote_jid, bool from_me, const std::string &id) :
- key(remote_jid, from_me, id)
-{
- this->timestamp = time(NULL);
- this->media_wa_type = 0;
- this->longitude = 0;
- this->latitude = 0;
- this->media_duration_seconds = 0;
- this->media_size = 0;
-}
-
-std::string FMessage::getMessage_WA_Type_StrValue(unsigned char type)
-{
- switch (type) {
- case FMessage::WA_TYPE_UNDEFINED:
- return "";
- case FMessage::WA_TYPE_SYSTEM:
- return "system";
- case FMessage::WA_TYPE_AUDIO:
- return "audio";
- case FMessage::WA_TYPE_CONTACT:
- return "vcard";
- case FMessage::WA_TYPE_IMAGE:
- return "image";
- case FMessage::WA_TYPE_LOCATION:
- return "location";
- case FMessage::WA_TYPE_VIDEO:
- return "video";
- }
-
- return "";
-}
-
-FMessage::~FMessage()
-{
-}
-
-Key::Key(const std::string &remote_jid, bool from_me, const std::string &id)
-{
- this->remote_jid = remote_jid;
- this->from_me = from_me;
- this->id = id;
-}
-
-std::string Key::toString()
-{
- return "Key[id=" + id + ", from_me=" + (from_me ? "true" : "false") + ", remote_jid=" + remote_jid + "]";
-}
-
-
-unsigned char FMessage::getMessage_WA_Type(const std::string &type)
-{
- if (type.empty())
- return WA_TYPE_UNDEFINED;
-
- std::string typeLower = type;
- std::transform(typeLower.begin(), typeLower.end(), typeLower.begin(), ::tolower);
- if (typeLower.compare("system") == 0)
- return WA_TYPE_SYSTEM;
- if (typeLower.compare("image") == 0)
- return WA_TYPE_IMAGE;
- if (typeLower.compare("audio") == 0)
- return WA_TYPE_AUDIO;
- if (typeLower.compare("video") == 0)
- return WA_TYPE_VIDEO;
- if (typeLower.compare("vcard") == 0)
- return WA_TYPE_CONTACT;
- if (typeLower.compare("location") == 0)
- return WA_TYPE_LOCATION;
-
- return WA_TYPE_UNDEFINED;
-}
diff --git a/protocols/WhatsApp/src/WhatsAPI++/FMessage.h b/protocols/WhatsApp/src/WhatsAPI++/FMessage.h
deleted file mode 100644
index 0d55aa6804..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/FMessage.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * FMessage.h
- *
- * Created on: 02/07/2012
- * Author: Antonio
- */
-
-
-
-#ifndef FMESSAGE_H_
-#define FMESSAGE_H_
-
-#include <string>
-//#include <SDL.h>
-#include <time.h>
-#include "IMutex.h"
-
-struct Key
-{
- std::string remote_jid;
- bool from_me;
- std::string id;
-
- Key(const std::string &remote_jid, bool from_me, const std::string &id);
- std::string toString();
-
-};
-
-struct FMessage
-{
- Key key;
- unsigned char media_wa_type;
- std::string data;
- long long timestamp;
- std::string remote_resource;
- bool wants_receipt;
- unsigned char status;
- std::string notifyname;
- bool offline;
- std::string media_url;
- std::string media_name;
-
- long long media_size;
- int media_duration_seconds;
- double latitude;
- double longitude;
-
- enum {
- WA_TYPE_UNDEFINED = 0,
- WA_TYPE_IMAGE = 1,
- WA_TYPE_AUDIO = 2,
- WA_TYPE_VIDEO = 3,
- WA_TYPE_CONTACT = 4,
- WA_TYPE_LOCATION = 5,
- WA_TYPE_SYSTEM = 7
- };
-
- enum {
- STATUS_UNSENT = 0,
- STATUS_UPLOADING = 1,
- STATUS_UPLOADED = 2,
- STATUS_SENT_BY_CLIENT = 3,
- STATUS_RECEIVED_BY_SERVER = 4,
- STATUS_RECEIVED_BY_TARGET = 5,
- STATUS_NEVER_SEND = 6,
- STATUS_SERVER_BOUNCE = 7,
-
- STATUS_USER_ADDED = 191,
- STATUS_USER_REMOVED = 192,
- STATUS_SUBJECT_CHANGED = 193,
- STATUS_PICTURE_CHANGED_SET = 194,
- STATUS_PICTURE_CHANGED_DELETE = 195
- };
-
- static std::string getMessage_WA_Type_StrValue(unsigned char type);
- static unsigned char getMessage_WA_Type(const std::string &typeString);
-
- FMessage();
- FMessage(const std::string &remote_jid, bool from_me, const std::string &id);
- virtual ~FMessage();
-};
-
-#endif /* FMESSAGE_H_ */
diff --git a/protocols/WhatsApp/src/WhatsAPI++/IMutex.h b/protocols/WhatsApp/src/WhatsAPI++/IMutex.h
deleted file mode 100644
index 56a5492ac9..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/IMutex.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#if !defined(IMUTEX_H)
-#define IMUTEX_H
-
-class IMutex
-{
-public:
- IMutex() {}
- virtual ~IMutex() {}
-
- virtual void lock() = 0;
- virtual void unlock() = 0;
-};
-
-#endif \ No newline at end of file
diff --git a/protocols/WhatsApp/src/WhatsAPI++/ISocketConnection.h b/protocols/WhatsApp/src/WhatsAPI++/ISocketConnection.h
deleted file mode 100644
index b017df8cdc..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/ISocketConnection.h
+++ /dev/null
@@ -1,24 +0,0 @@
-#ifndef ISOCKETCONNECTION_H_
-#define ISOCKETCONNECTION_H_
-
-#include <vector>
-
-class ISocketConnection {
-
-public:
- ISocketConnection() {}
- virtual ~ISocketConnection() {}
-
- virtual void write(int i) = 0;
- virtual unsigned char read() = 0;
- virtual void flush() = 0;
- virtual void write(const std::vector<unsigned char>& b, int length) = 0;
- virtual int read(unsigned char*, int length) = 0;
- virtual int read(std::vector<unsigned char>& b, int off, int length) = 0;
- virtual void makeNonBlock() = 0;
- virtual void forceShutdown() = 0;
-
- virtual void log(const char *prefix, const char *str) = 0;
-};
-
-#endif /* ISOCKETCONNECTION_H_ */
diff --git a/protocols/WhatsApp/src/WhatsAPI++/KeyStream.cpp b/protocols/WhatsApp/src/WhatsAPI++/KeyStream.cpp
deleted file mode 100644
index 563e5ac7f1..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/KeyStream.cpp
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * WALogin.cpp
- *
- * Created on: 26/06/2012
- * Author: Antonio
- */
-
-#include "../stdafx.h" // #TODO Remove Miranda-dependency
-
-#include "WALogin.h"
-#include "ByteArray.h"
-#include "ProtocolTreeNode.h"
-#include "WAException.h"
-
-using namespace Utilities;
-
-KeyStream::KeyStream() :
- seq(0)
-{
- HMAC_CTX_init(&hmac);
-}
-
-KeyStream::~KeyStream()
-{
- HMAC_CTX_cleanup(&hmac);
-}
-
-void KeyStream::init(unsigned char* _key, unsigned char* _keyMac)
-{
- memcpy(key, _key, 20);
- memcpy(keyMac, _keyMac, 20);
-
- RC4_set_key(&this->rc4, 20, this->key);
-
- unsigned char drop[768];
- RC4(&this->rc4, sizeof(drop), drop, drop);
-}
-
-void KeyStream::keyFromPasswordAndNonce(const std::string &pass, const std::vector<unsigned char>& nonce, unsigned char *out)
-{
- size_t cbSize = nonce.size();
-
- uint8_t *pNonce = (uint8_t*)_alloca(cbSize + 1);
- memcpy(pNonce, nonce.data(), cbSize);
-
- for (int i = 0; i < 4; i++) {
- pNonce[cbSize] = i + 1;
- PKCS5_PBKDF2_HMAC_SHA1(pass.data(), (int)pass.size(), pNonce, (int)cbSize+1, 2, 20, out + i*20);
- }
-}
-
-void KeyStream::decodeMessage(unsigned char* buffer, int macOffset, int offset, const int length)
-{
- unsigned char digest[20];
- this->hmacsha1(buffer + offset, length, digest);
-
- if (memcmp(&buffer[macOffset], digest, 4))
- throw WAException("invalid MAC", WAException::CORRUPT_STREAM_EX, 0);
-
- unsigned char* out = (unsigned char*)_alloca(length);
- RC4(&this->rc4, length, buffer + offset, out);
- memcpy(buffer + offset, out, length);
-}
-
-void KeyStream::encodeMessage(unsigned char* buffer, int macOffset, int offset, const int length)
-{
- unsigned char* out = (unsigned char*)_alloca(length);
- RC4(&this->rc4, length, buffer + offset, out);
- memcpy(buffer + offset, out, length);
-
- unsigned char digest[20];
- this->hmacsha1(buffer + offset, length, digest);
- memcpy(buffer + macOffset, digest, 4);
-}
-
-void KeyStream::hmacsha1(unsigned char* text, int textLength, unsigned char *out)
-{
- HMAC_Init(&hmac, this->keyMac, 20, EVP_sha1());
- HMAC_Update(&hmac, text, textLength);
-
- unsigned char hmacInt[4];
- hmacInt[0] = (this->seq >> 24);
- hmacInt[1] = (this->seq >> 16);
- hmacInt[2] = (this->seq >> 8);
- hmacInt[3] = (this->seq);
- HMAC_Update(&hmac, hmacInt, sizeof(hmacInt));
-
- unsigned int mdLength;
- HMAC_Final(&hmac, out, &mdLength);
-
- this->seq++;
-}
diff --git a/protocols/WhatsApp/src/WhatsAPI++/LICENSE b/protocols/WhatsApp/src/WhatsAPI++/LICENSE
deleted file mode 100644
index cccee9ef01..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/LICENSE
+++ /dev/null
@@ -1,340 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/protocols/WhatsApp/src/WhatsAPI++/MediaUploader.cpp b/protocols/WhatsApp/src/WhatsAPI++/MediaUploader.cpp
deleted file mode 100644
index 34a99a9de4..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/MediaUploader.cpp
+++ /dev/null
@@ -1,134 +0,0 @@
-#include "../stdafx.h"
-#include "MediaUploader.h"
-
-// TODO get rid of unneeded headers added by NETLIBHTTPREQUEST. it sould look like this:
-//POST https://mmiXYZ.whatsapp.net/u/gOzeKj6U64LABC
-//Content-Type: multipart/form-data; boundary=zzXXzzYYzzXXzzQQ
-//Host: mmiXYZ.whatsapp.net
-//User-Agent: WhatsApp/2.12.96 S40Version/14.26 Device/Nokia302
-//Content-Length: 9999999999
-//
-//So remove these somehow:
-//Accept-Encoding: deflate, gzip
-//Connection: Keep-Alive
-//Proxy-Connection: Keep-Alive
-
-static NETLIBHTTPHEADER s_imageHeaders[] =
-{
- { "User-Agent", ACCOUNT_USER_AGENT },
- { "Content-Type", "multipart/form-data; boundary=zzXXzzYYzzXXzzQQ" }
-};
-
-static std::vector<unsigned char>* sttFileToMem(const wchar_t *ptszFileName)
-{
- HANDLE hFile = CreateFile(ptszFileName, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
- if (hFile == INVALID_HANDLE_VALUE)
- return NULL;
-
- DWORD upperSize, lowerSize = GetFileSize(hFile, &upperSize);
- std::vector<unsigned char> *result = new std::vector<unsigned char>(lowerSize);
- ReadFile(hFile, (void*)result->data(), lowerSize, &upperSize, NULL);
- CloseHandle(hFile);
- return result;
-}
-
-namespace MediaUploader
-{
- std::string sendData(std::string host, std::string head, std::string filePath, std::string tail)
- {
- // TODO string crap: can this be done more nicely?
- std::wstring stemp = std::wstring(filePath.begin(), filePath.end());
- LPCWSTR sw = stemp.c_str();
-
- vector<unsigned char> *dataVector = sttFileToMem(sw);
-
- vector<unsigned char> allVector(head.begin(), head.end());
- allVector.insert(allVector.end(), dataVector->begin(), dataVector->end());
- allVector.insert(allVector.end(), tail.begin(), tail.end());
-
- NETLIBHTTPREQUEST nlhr = { sizeof(NETLIBHTTPREQUEST) };
- nlhr.requestType = REQUEST_POST;
- nlhr.szUrl = (char*)host.c_str();
- nlhr.headers = s_imageHeaders;
- nlhr.headersCount = _countof(s_imageHeaders);
- nlhr.flags = NLHRF_HTTP11 | NLHRF_SSL;
- nlhr.pData = (char*)allVector.data();
- nlhr.dataLength = (int)allVector.size();
-
- NETLIBHTTPREQUEST *pnlhr = Netlib_HttpTransaction(g_hNetlibUser, &nlhr);
-
- string data = pnlhr->pData;
-
- if (!data.empty())
- return data;
- else return 0;
- }
-
- std::string pushfile(std::string url, FMessage * message, std::string from)
- {
- return getPostString(url, message, from);
- }
-
- std::string getPostString(std::string url, FMessage * message, std::string from)
- {
- string filePath = message->media_url;
- string to = message->key.remote_jid;
- string extension = split(filePath, '.')[1];
-
- uint8_t digest[16];
- md5_string(filePath, digest);
- char dest[33];
- bin2hex(digest, sizeof(digest), dest);
-
- string cryptoname = dest;
- cryptoname += "." + extension;
- string boundary = "zzXXzzYYzzXXzzQQ";
-
- string hBAOS = "--" + boundary + "\r\n";
- hBAOS += "Content-Disposition: form-data; name=\"to\"\r\n\r\n";
- hBAOS += to + "\r\n";
- hBAOS += "--" + boundary + "\r\n";
- hBAOS += "Content-Disposition: form-data; name=\"from\"\r\n\r\n";
- hBAOS += from + "\r\n";
- hBAOS += "--" + boundary + "\r\n";
- hBAOS += "Content-Disposition: form-data; name=\"file\"; filename=\"" + cryptoname + "\"\r\n";
- hBAOS += "Content-Type: " + getMimeFromExtension(extension) + "\r\n\r\n";
-
- string fBAOS = "\r\n--" + boundary + "--\r\n";
- return sendData(url, hBAOS, filePath, fBAOS);
- }
-
- static map<string, string> extensions;
-
- std::string getMimeFromExtension(const string &extension)
- {
- if (extensions.empty()) {
- extensions["audio/3gpp"] = "3gp";
- extensions["audio/x-caf"] = "caf";
- extensions["audio/wav"] = "wav";
- extensions["audio/mpeg"] = "mp3";
- extensions["audio/mpeg3"] = "mp3";
- extensions["audio/x-mpeg-32"] = "mp3";
- extensions["audio/x-ms-wma"] = "wma";
- extensions["audio/ogg"] = "ogg";
- extensions["audio/aiff"] = "aif";
- extensions["audio/x-aiff"] = "aif";
- extensions["audio/mp4"] = "m4a";
- extensions["image/jpeg"] = "jpg";
- extensions["image/gif"] = "gif";
- extensions["image/png"] = "png";
- extensions["video/3gpp"] = "3gp";
- extensions["video/mp4"] = "mp4";
- extensions["video/quicktime"] = "mov";
- extensions["video/avi"] = "avi";
- extensions["video/msvideo"] = "avi";
- extensions["video/x-msvideo"] = "avi";
- }
-
- for (auto it = extensions.begin(); it != extensions.end(); ++it)
- if ((*it).second == extension)
- return (*it).first;
-
- return "";
- }
-}
diff --git a/protocols/WhatsApp/src/WhatsAPI++/MediaUploader.h b/protocols/WhatsApp/src/WhatsAPI++/MediaUploader.h
deleted file mode 100644
index 7fb6612095..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/MediaUploader.h
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
-*
-*/
-#ifndef MEDIAUPLOADER_H_
-#define MEDIAUPLOADER_H_
-
-using namespace std;
-
-namespace MediaUploader
-{
- std::string pushfile(std::string url, FMessage * message, std::string from);
- std::string getPostString(std::string url, FMessage * message, std::string from);
- std::string sendData(std::string host, std::string head, std::string filePath, std::string tail);
- std::string getExtensionFromMime(string mime);
- std::string getMimeFromExtension(const string &extension);
-};
-
-#endif /* MEDIAUPLOADER_H_ */
diff --git a/protocols/WhatsApp/src/WhatsAPI++/PhoneNumber.cpp b/protocols/WhatsApp/src/WhatsAPI++/PhoneNumber.cpp
deleted file mode 100644
index dc5466321d..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/PhoneNumber.cpp
+++ /dev/null
@@ -1,298 +0,0 @@
-/*
- * PhoneNumber.cpp
- *
- */
-
-#include "../stdafx.h" // #TODO Remove Miranda-dependency
-
-#include "PhoneNumber.h"
-
-struct CountryDescr
-{
- char *name;
- int countryCode, mcc, mnc;
- char *ISO3166, *ISO639;
-}
-static countries[] =
-{
- { "Russia", 7, 250, 20, "RU", "ru" },
- { "Kazakhstan", 7, 401, 77, "KZ", "kk" },
- { "Afghanistan", 93, 412, 1, "AF", "ps" },
- { "Albania", 355, 276, 1, "AL", "sq" },
- { "Alberta", 1403, 302, 720, "CA", "en" },
- { "Alberta", 1780, 302, 720, "CA", "en" },
- { "Algeria", 213, 603, 1, "DZ", "ar" },
- { "Andorra", 376, 213, 3, "AD", "ca" },
- { "Angola", 244, 631, 2, "AO", "pt" },
- { "Anguilla", 1264, 365, 10, "AI", "en" },
- { "Antarctica (Australian bases)", 6721, 232, 1, "AQ", "en" },
- { "Antigua and Barbuda", 1268, 344, 50, "AG", "en" },
- { "Argentina", 54, 722, 10, "AR", "es" },
- { "Armenia", 374, 283, 10, "AM", "hy" },
- { "Aruba", 297, 363, 1, "AW", "nl" },
- { "Ascension", 247, 658, 1, "AC", "en" },
- { "Australia", 61, 505, 1, "AU", "en" },
- { "Austria", 43, 232, 3, "AT", "de" },
- { "Azerbaijan", 994, 400, 1, "AZ", "az" },
- { "Bahamas", 1242, 364, 39, "BS", "en" },
- { "Bahrain", 973, 426, 1, "BH", "ar" },
- { "Bangladesh", 880, 470, 1, "BD", "bn" },
- { "Barbados", 1246, 342, 750, "BB", "en" },
- { "Belarus", 375, 257, 1, "BY", "be" },
- { "Belgium", 32, 206, 1, "BE", "nl" },
- { "Belize", 501, 702, 67, "BZ", "es" },
- { "Benin", 229, 616, 1, "BJ", "fr" },
- { "Bermuda", 1441, 350, 1, "BM", "en" },
- { "Bhutan", 975, 402, 11, "BT", "dz" },
- { "Bolivia", 591, 736, 1, "BO", "es" },
- { "Bosnia and Herzegovina", 387, 218, 3, "BA", "bs" },
- { "Botswana", 267, 652, 4, "BW", "en" },
- { "Brazil", 55, 724, 2, "BR", "pt" },
- { "British Columbia", 1250, 302, 720, "CA", "en" },
- { "British Columbia", 1604, 302, 720, "CA", "en" },
- { "British Columbia", 1778, 302, 720, "CA", "en" },
- { "British Indian Ocean Territory", 246, 348, 1, "IO", "en" },
- { "British Virgin Islands", 1284, 348, 170, "GB", "en" },
- { "Brunei", 673, 528, 11, "BN", "ms" },
- { "Bulgaria", 359, 284, 3, "BG", "bg" },
- { "Burkina Faso", 226, 613, 1, "BF", "fr" },
- { "Burundi", 257, 642, 82, "BI", "rn" },
- { "Cambodia", 855, 456, 2, "KH", "km" },
- { "Cameroon", 237, 624, 1, "CM", "fr" },
- { "Cape Verde", 238, 625, 1, "CV", "pt" },
- { "Cayman Islands", 1345, 346, 50, "GB", "en" },
- { "Central African Republic", 236, 623, 3, "CF", "sg" },
- { "Chad", 235, 622, 4, "TD", "fr" },
- { "Chile", 56, 730, 2, "CL", "es" },
- { "China", 86, 460, 3, "CN", "en" },
- { "Colombia", 57, 732, 102, "CO", "es" },
- { "Comoros", 269, 654, 1, "KM", "fr" },
- { "Democratic Republic of the Congo", 243, 630, 1, "CD", "fr" },
- { "Republic of the Congo", 242, 629, 1, "CG", "fr" },
- { "Cook Islands", 682, 548, 1, "CK", "en" },
- { "Costa Rica", 506, 658, 4, "CR", "es" },
- { "Cote d'Ivoire", 712, 612, 1, "CI", "fr" },
- { "Croatia", 385, 219, 1, "HR", "hr" },
- { "Cuba", 53, 368, 1, "CU", "es" },
- { "Cyprus", 357, 280, 1, "CY", "el" },
- { "Czech Republic", 420, 230, 2, "CZ", "cs" },
- { "Denmark", 45, 238, 1, "DK", "da" },
- { "Djibouti", 253, 638, 1, "DJ", "fr" },
- { "Dominica", 1767, 366, 20, "DM", "en" },
- { "Dominican Republic", 1809, 370, 1, "DO", "es" },
- { "Dominican Republic", 1829, 370, 1, "DO", "en" },
- { "East Timor", 670, 514, 1, "TL", "pt" },
- { "Ecuador", 593, 740, 0, "EC", "es" },
- { "Egypt", 20, 602, 2, "EG", "ar" },
- { "El Salvador", 503, 706, 1, "SV", "es" },
- { "Equatorial Guinea", 240, 627, 3, "GQ", "es" },
- { "Eritrea", 291, 657, 1, "ER", "ti" },
- { "Estonia", 372, 248, 3, "EE", "et" },
- { "Ethiopia", 251, 636, 11, "ET", "am" },
- { "Falkland Islands", 500, 750, 1, "FK", "en" },
- { "Faroe Islands", 298, 288, 2, "FO", "fo" },
- { "Fiji", 679, 542, 1, "FJ", "en" },
- { "Finland", 358, 244, 5, "FI", "fi" },
- { "France", 33, 208, 9, "FR", "fr" },
- { "French Guiana", 594, 742, 1, "GF", "fr" },
- { "French Polynesia", 689, 547, 15, "PF", "fr" },
- { "Gabon", 241, 628, 1, "GA", "fr" },
- { "Gambia", 220, 607, 1, "GM", "en" },
- { "Gaza Strip", 970, 0, 0, "PS", "ar" },
- { "Georgia", 995, 282, 1, "GE", "ka" },
- { "Germany", 49, 262, 1, "DE", "de" },
- { "Ghana", 233, 620, 2, "GH", "ak" },
- { "Gibraltar", 350, 266, 9, "GI", "en" },
- { "Greece", 30, 202, 5, "GR", "el" },
- { "Greenland", 299, 290, 1, "GL", "kl" },
- { "Grenada", 1473, 352, 30, "GD", "en" },
- { "Guadeloupe", 590, 340, 1, "GP", "fr" },
- { "Guam", 1671, 535, 32, "GU", "en" },
- { "Guatemala", 502, 704, 1, "GT", "es" },
- { "Guinea", 224, 611, 1, "GN", "fr" },
- { "Guinea-Bissau", 245, 632, 3, "GW", "pt" },
- { "Guyana", 592, 738, 1, "GY", "pt" },
- { "Haiti", 509, 372, 2, "HT", "fr" },
- { "Honduras", 504, 708, 2, "HN", "es" },
- { "Hong Kong", 852, 454, 0, "HK", "zh" },
- { "Hungary", 36, 216, 70, "HU", "hu" },
- { "Iceland", 354, 274, 2, "IS", "is" },
- { "India", 91, 404, 30, "IN", "hi" },
- { "Indonesia", 62, 510, 10, "ID", "id" },
- { "Iraq", 964, 418, 20, "IQ", "ar" },
- { "Iran", 98, 432, 35, "IR", "fa" },
- { "Ireland (Eire)", 353, 272, 1, "IE", "en" },
- { "Israel", 972, 425, 1, "IL", "he" },
- { "Italy", 39, 222, 10, "IT", "it" },
- { "Jamaica", 1876, 338, 50, "JM", "en" },
- { "Japan", 81, 440, 1, "JP", "ja" },
- { "Jordan", 962, 416, 77, "JO", "ar" },
- { "Kenya", 254, 639, 7, "KE", "sw" },
- { "Kiribati", 686, 545, 1, "KI", "en" },
- { "Kuwait", 965, 419, 4, "KW", "ar" },
- { "Kyrgyzstan", 996, 437, 1, "KG", "ky" },
- { "Laos", 856, 457, 1, "LA", "lo" },
- { "Latvia", 371, 247, 2, "LV", "lv" },
- { "Lebanon", 961, 415, 1, "LB", "ar" },
- { "Lesotho", 266, 651, 1, "LS", "st" },
- { "Liberia", 231, 618, 7, "LR", "en" },
- { "Libya", 218, 606, 0, "LY", "ar" },
- { "Liechtenstein", 423, 295, 2, "LI", "de" },
- { "Lithuania", 370, 246, 3, "LT", "lt" },
- { "Luxembourg", 352, 270, 99, "LU", "fr" },
- { "Macau", 853, 455, 2, "MO", "pt" },
- { "Republic of Macedonia", 389, 294, 1, "MK", "mk" },
- { "Madagascar", 261, 646, 2, "MG", "mg" },
- { "Malawi", 265, 650, 1, "MW", "ny" },
- { "Malaysia", 60, 502, 16, "MY", "en" },
- { "Maldives", 960, 472, 1, "MV", "dv" },
- { "Mali", 223, 610, 2, "ML", "fr" },
- { "Malta", 356, 278, 1, "MT", "mt" },
- { "Manitoba", 1204, 302, 720, "CA", "en" },
- { "Marshall Islands", 692, 551, 1, "MH", "mh" },
- { "Martinique", 596, 340, 1, "MQ", "fr" },
- { "Mauritania", 222, 609, 2, "MR", "ar" },
- { "Mauritius", 230, 617, 1, "MU", "en" },
- { "Mayotte", 262, 654, 1, "YT", "fr" },
- { "Mexico", 52, 334, 3, "MX", "es" },
- { "Federated States of Micronesia", 691, 550, 1, "FM", "en" },
- { "Moldova", 373, 259, 1, "MD", "ru" },
- { "Monaco", 377, 212, 1, "MC", "fr" },
- { "Mongolia", 976, 428, 91, "MN", "mn" },
- { "Montenegro", 382, 297, 2, "ME", "sr" },
- { "Montserrat", 1664, 354, 860, "MS", "en" },
- { "Morocco", 212, 604, 0, "MA", "ar" },
- { "Mozambique", 258, 643, 4, "MZ", "pt" },
- { "Myanmar", 95, 414, 1, "MM", "my" },
- { "Namibia", 264, 649, 3, "NA", "en" },
- { "Nauru", 674, 536, 2, "NR", "na" },
- { "Netherlands", 31, 204, 4, "NL", "nl" },
- { "Netherlands Antilles", 599, 362, 51, "AN", "nl" },
- { "Nepal", 977, 429, 1, "NP", "ne" },
- { "New Brunswick", 1506, 302, 720, "CA", "en" },
- { "New Caledonia", 687, 546, 1, "NC", "fr" },
- { "New Zealand", 64, 530, 1, "NZ", "en" },
- { "Newfoundland", 1709, 302, 720, "CA", "en" },
- { "Nicaragua", 505, 710, 30, "NI", "es" },
- { "Niger", 227, 614, 4, "NE", "fr" },
- { "Nigeria", 234, 621, 20, "NG", "ha" },
- { "Niue", 683, 555, 1, "NU", "en" },
- { "Norfolk Island", 6723, 505, 10, "NF", "en" },
- { "North Korea", 850, 467, 193, "KP", "ko" },
- { "Northern Mariana Islands", 1670, 534, 1, "MP", "en" },
- { "Northwest Territories", 1867, 302, 720, "CA", "en" },
- { "Norway", 47, 242, 4, "NO", "nb" },
- { "Nova Scotia", 1902, 302, 720, "CA", "en" },
- { "Oman", 968, 422, 2, "OM", "ar" },
- { "Ontario", 1416, 302, 720, "CA", "en" },
- { "Ontario", 1519, 302, 720, "CA", "en" },
- { "Ontario", 1613, 302, 720, "CA", "en" },
- { "Ontario", 1647, 302, 720, "CA", "en" },
- { "Ontario", 1705, 302, 720, "CA", "en" },
- { "Ontario", 1807, 302, 720, "CA", "en" },
- { "Ontario", 1905, 302, 720, "CA", "en" },
- { "Pakistan", 92, 410, 1, "PK", "en" },
- { "Palau", 680, 552, 80, "PW", "en" },
- { "Palestine", 970, 425, 6, "PS", "ar" },
- { "Panama", 507, 714, 2, "PA", "es" },
- { "Papua New Guinea", 675, 537, 3, "PG", "ho" },
- { "Paraguay", 595, 744, 6, "PY", "es" },
- { "Peru", 51, 716, 6, "PE", "es" },
- { "Philippines", 63, 515, 2, "PH", "fil" },
- { "Poland", 48, 260, 3, "PL", "pl" },
- { "Portugal", 351, 268, 1, "PT", "pt" },
- { "Qatar", 974, 427, 2, "QA", "ar" },
- { "Quebec", 1418, 302, 720, "CA", "en" },
- { "Quebec", 1450, 302, 720, "CA", "en" },
- { "Quebec", 1514, 302, 720, "CA", "en" },
- { "Quebec", 1819, 302, 720, "CA", "en" },
- { "Reunion", 262, 647, 0, "RE", "fr" },
- { "Romania", 40, 226, 1, "RO", "ro" },
- { "Rwanda", 250, 635, 10, "RW", "rw" },
- { "Saint-Barthelemy", 590, 340, 1, "BL", "fr" },
- { "Saint Helena", 290, 658, 1, "SH", "en" },
- { "Saint Kitts and Nevis", 1869, 356, 50, "KN", "en" },
- { "Saint Lucia", 1758, 358, 50, "LC", "en" },
- { "Saint Martin (French side)", 590, 340, 1, "MF", "fr" },
- { "Saint Pierre and Miquelon", 508, 308, 2, "PM", "fr" },
- { "Saint Vincent and the Grenadines", 1670, 360, 70, "VC", "en" },
- { "Samoa", 685, 549, 1, "WS", "sm" },
- { "Sao Tome and Principe", 239, 626, 1, "ST", "pt" },
- { "Saskatchewan", 1306, 302, 720, "CA", "en" },
- { "Saudi Arabia", 966, 420, 4, "SA", "ar" },
- { "Senegal", 221, 608, 1, "SN", "wo" },
- { "Serbia", 381, 220, 1, "RS", "sr" },
- { "Seychelles", 248, 633, 10, "SC", "fr" },
- { "Sierra Leone", 232, 619, 4, "SL", "en" },
- { "Singapore", 65, 525, 1, "SG", "en" },
- { "Slovakia", 421, 231, 4, "SK", "sk" },
- { "Slovenia", 386, 293, 31, "SI", "sl" },
- { "Solomon Islands", 677, 540, 2, "SB", "en" },
- { "Somalia", 252, 637, 82, "SO", "so" },
- { "South Africa", 27, 655, 1, "ZA", "xh" },
- { "South Korea", 82, 450, 5, "KR", "ko" },
- { "South Sudan", 211, 659, 2, "SS", "en" },
- { "Spain", 34, 214, 1, "ES", "es" },
- { "Sri Lanka", 94, 413, 1, "LK", "si" },
- { "Sudan", 249, 634, 7, "SD", "ar" },
- { "Suriname", 597, 746, 3, "SR", "nl" },
- { "Swaziland", 268, 653, 10, "SZ", "ss" },
- { "Sweden", 46, 240, 7, "SE", "sv" },
- { "Switzerland", 41, 228, 3, "CH", "de" },
- { "Syria", 963, 417, 1, "SY", "ar" },
- { "Taiwan", 886, 466, 1, "TW", "cmn" },
- { "Tajikistan", 992, 436, 1, "TJ", "tg" },
- { "Tanzania", 255, 640, 4, "TZ", "sw" },
- { "Thailand", 66, 520, 0, "TH", "th" },
- { "Togo", 228, 615, 1, "TG", "fr" },
- { "Tokelau", 690, 690, 1, "TK", "tkl" },
- { "Tonga", 676, 539, 1, "TO", "to" },
- { "Trinidad and Tobago", 1868, 374, 12, "TT", "en" },
- { "Tunisia", 216, 605, 1, "TN", "ar" },
- { "Turkey", 90, 286, 2, "TR", "tr" },
- { "Turkmenistan", 993, 438, 1, "TM", "tk" },
- { "Turks and Caicos Islands", 1649, 376, 50, "TC", "en" },
- { "Tuvalu", 688, 553, 1, "TV", "tvl" },
- { "Uganda", 256, 641, 14, "UG", "sw" },
- { "Ukraine", 380, 255, 1, "UA", "uk" },
- { "United Arab Emirates", 971, 424, 2, "AE", "ar" },
- { "United Kingdom", 44, 234, 10, "GB", "en" },
- { "United States of America", 1, 310, 4, "US", "en" },
- { "Uruguay", 598, 748, 7, "UY", "es" },
- { "Uzbekistan", 998, 434, 7, "UZ", "uz" },
- { "Vanuatu", 678, 541, 5, "VU", "bi" },
- { "Venezuela", 58, 734, 4, "VE", "es" },
- { "Vietnam", 84, 452, 1, "VN", "vi" },
- { "U.S. Virgin Islands", 1340, 332, 4, "VI", "en" },
- { "Wallis and Futuna", 681, 543, 1, "WF", "fr" },
- { "West Bank", 970, 0, 1, "PS", "ar" },
- { "Yemen", 967, 421, 2, "YE", "ar" },
- { "Zambia", 260, 645, 2, "ZM", "en" },
- { "Zimbabwe", 263, 648, 2, "ZW", "en" }
-};
-
-PhoneNumber::PhoneNumber(const std::string &szNumber)
-{
- int cc1 = atoi(szNumber.substr(0, 1).c_str()), cc2 = atoi(szNumber.substr(0, 2).c_str()), cc3 = atoi(szNumber.substr(0, 3).c_str());
-
- for (int i = 0; i < _countof(countries); i++) {
- CountryDescr &p = countries[i];
- if (p.countryCode != cc1 && p.countryCode != cc2 && p.countryCode != cc3)
- continue;
-
- if (p.countryCode == 7)
- if (i == 0 && (cc2 == '77' || cc2 == '76'))
- continue;
-
- this->Country = p.name;
- this->countryCode = p.countryCode;
- this->Number = szNumber.substr(1 + (size_t)floor(log10(double(p.countryCode))));
- this->ISO3166 = p.ISO3166;
- this->ISO639 = p.ISO639;
- this->mcc = p.mcc;
- this->mnc = p.mnc;
- return;
- }
-
- throw new WAException("Could not dissect phone number " + szNumber);
-}
diff --git a/protocols/WhatsApp/src/WhatsAPI++/PhoneNumber.h b/protocols/WhatsApp/src/WhatsAPI++/PhoneNumber.h
deleted file mode 100644
index aa3dd16ef9..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/PhoneNumber.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * PhoneNumber.h
- *
- */
-
-#ifndef PHONENUMBER_H_
-#define PHONENUMBER_H_
-
-#include <string>
-
-struct PhoneNumber
-{
- PhoneNumber(const std::string &number);
-
- std::string Country;
- std::string Number;
-
- const char *ISO3166, *ISO639;
- int countryCode;
- int mcc, mnc;
-};
-
-#endif /* PHONENUMBER_H_ */
diff --git a/protocols/WhatsApp/src/WhatsAPI++/ProtocolTreeNode.cpp b/protocols/WhatsApp/src/WhatsAPI++/ProtocolTreeNode.cpp
deleted file mode 100644
index 2e04563fda..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/ProtocolTreeNode.cpp
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * ProtocolTreeNode.cpp
- *
- * Created on: 26/06/2012
- * Author: Antonio
- */
-
-#include "../stdafx.h" // #TODO Remove Miranda-dependency
-
-#include "WAException.h"
-#include "ProtocolTreeNode.h"
-
-static std::string nilstr;
-
-ProtocolTreeNode::ProtocolTreeNode(const string &_tag, vector<unsigned char>* _data, vector<ProtocolTreeNode*> *_children) :
- tag(_tag)
-{
- data = _data;
- attributes = NULL;
- children = _children;
-}
-
-ProtocolTreeNode::ProtocolTreeNode(const string &_tag, ProtocolTreeNode *_child) :
- tag(_tag)
-{
- this->data = NULL;
- this->attributes = NULL;
- this->children = new std::vector<ProtocolTreeNode*>();
- children->push_back(_child);
-}
-
-ProtocolTreeNode::~ProtocolTreeNode()
-{
- delete this->attributes;
-
- if (this->children != NULL) {
- for (size_t i = 0; i < this->children->size(); i++)
- if (this->children->at(i) != NULL)
- delete this->children->at(i);
- delete this->children;
- }
-
- delete data;
-}
-
-
-string ProtocolTreeNode::toString() const
-{
- string out;
- out += "<" + this->tag;
- if (this->attributes != NULL) {
- map<string, string>::iterator ii;
- for (ii = attributes->begin(); ii != attributes->end(); ii++)
- out += " " + ii->first + "=\"" + ii->second + "\"";
- }
- out += ">\n";
- out += getDataAsString();
-
- if (this->children != NULL) {
- vector<ProtocolTreeNode*>::iterator ii;
- for (ii = children->begin(); ii != children->end(); ii++)
- out += (*ii)->toString();
- }
-
- out += "</" + this->tag + ">\n";
-
- return out;
-}
-
-ProtocolTreeNode* ProtocolTreeNode::getChild(const string& id)
-{
- if (this->children == NULL || this->children->size() == 0)
- return NULL;
-
- for (std::size_t i = 0; i < this->children->size(); i++)
- if (id.compare((*children)[i]->tag) == 0)
- return (*children)[i];
-
- return NULL;
-}
-
-ProtocolTreeNode* ProtocolTreeNode::getChild(size_t id)
-{
- if (this->children == NULL || this->children->size() == 0)
- return NULL;
-
- if (children->size() > id)
- return (*children)[id];
-
- return NULL;
-}
-
-const string& ProtocolTreeNode::getAttributeValue(const string& attribute)
-{
- if (this->attributes == NULL)
- return nilstr;
-
- map<string, string>::iterator it = attributes->find(attribute);
- if (it == attributes->end())
- return nilstr;
-
- return it->second;
-}
-
-vector<ProtocolTreeNode*> ProtocolTreeNode::getAllChildren()
-{
- if (this->children == NULL)
- return vector<ProtocolTreeNode*>();
-
- return *this->children;
-}
-
-std::string ProtocolTreeNode::getDataAsString() const
-{
- if (this->data == NULL)
- return nilstr;
- return std::string(this->data->begin(), this->data->end());
-}
-
-vector<ProtocolTreeNode*> ProtocolTreeNode::getAllChildren(const string &tag)
-{
- vector<ProtocolTreeNode*> ret;
-
- if (this->children != NULL)
- for (size_t i = 0; i < this->children->size(); i++)
- if (tag.compare((*children)[i]->tag) == 0)
- ret.push_back((*children)[i]);
-
- return ret;
-}
-
-bool ProtocolTreeNode::tagEquals(ProtocolTreeNode *node, const string& tag)
-{
- return (node != NULL && node->tag.compare(tag) == 0);
-}
-
-void ProtocolTreeNode::require(ProtocolTreeNode *node, const string& tag)
-{
- if (!tagEquals(node, tag))
- throw WAException("failed require. node:" + node->toString() + "tag: " + tag, WAException::CORRUPT_STREAM_EX, 0);
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-
-ProtocolTreeNode& operator<<(ProtocolTreeNode &node, const XATTR &attr)
-{
- if (node.attributes == NULL)
- node.attributes = new map<string, string>;
-
- (*node.attributes)[attr.name] = attr.value;
- return node;
-}
-
-ProtocolTreeNode* operator<<(ProtocolTreeNode *node, const XATTR &attr)
-{
- if (node->attributes == NULL)
- node->attributes = new map<string, string>;
-
- (*node->attributes)[attr.name] = attr.value;
- return node;
-}
-
-ProtocolTreeNode& operator<<(ProtocolTreeNode &node, const XATTRI &attr)
-{
- if (node.attributes == NULL)
- node.attributes = new map<string, string>;
-
- char szValue[100];
- _itoa_s(attr.value, szValue, 10);
- (*node.attributes)[attr.name] = szValue;
- return node;
-}
-
-ProtocolTreeNode* operator<<(ProtocolTreeNode *node, const XATTRI &attr)
-{
- if (node->attributes == NULL)
- node->attributes = new map<string, string>;
-
- char szValue[100];
- _itoa_s(attr.value, szValue, 10);
- (*node->attributes)[attr.name] = szValue;
- return node;
-}
diff --git a/protocols/WhatsApp/src/WhatsAPI++/ProtocolTreeNode.h b/protocols/WhatsApp/src/WhatsAPI++/ProtocolTreeNode.h
deleted file mode 100644
index 50e0f4033d..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/ProtocolTreeNode.h
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
-* ProtocolTreeNode.h
-*
-* Created on: 26/06/2012
-* Author: Antonio
-*/
-
-#if !defined(PROTOCOLNODE_H)
-#define PROTOCOLNODE_H
-
-#include <string>
-#include <vector>
-#include <map>
-
-using namespace std;
-
-struct XATTR
-{
- __forceinline XATTR(const char *_name, const char *_value) :
- name(_name), value(_value)
- {}
-
- __forceinline XATTR(const char *_name, const std::string &_value) :
- name(_name), value(_value.c_str())
- {}
-
- __forceinline XATTR(const std::string &_name, const std::string &_value) :
- name(_name.c_str()), value(_value.c_str())
- {}
-
- const char *name, *value;
-};
-
-struct XATTRI
-{
- __forceinline XATTRI(const char *_name, int _value) :
- name(_name), value(_value)
- {}
-
- __forceinline XATTRI(const std::string &_name, int _value) :
- name(_name.c_str()), value(_value)
- {}
-
- const char *name;
- int value;
-};
-
-class ProtocolTreeNode
-{
- ProtocolTreeNode(const ProtocolTreeNode&); // to prevent copying
-
-public:
- vector<unsigned char>* data;
- string tag;
- map<string, string> *attributes;
- vector<ProtocolTreeNode*> *children;
-
- ProtocolTreeNode(const string &tag, ProtocolTreeNode *child);
- ProtocolTreeNode(const string &tag, vector<unsigned char> *data = NULL, vector<ProtocolTreeNode*> *children = NULL);
- ~ProtocolTreeNode();
-
- string toString() const;
- ProtocolTreeNode* getChild(const string &id);
- ProtocolTreeNode* getChild(size_t id);
- const string& getAttributeValue(const string &attribute);
-
- vector<ProtocolTreeNode*> getAllChildren();
- vector<ProtocolTreeNode*> getAllChildren(const string &tag);
- std::string getDataAsString() const;
-
- static bool tagEquals(ProtocolTreeNode *node, const string &tag);
- static void require(ProtocolTreeNode *node, const string &tag);
-};
-
-ProtocolTreeNode& operator<<(ProtocolTreeNode&, const XATTR&);
-ProtocolTreeNode* operator<<(ProtocolTreeNode*, const XATTR&);
-
-ProtocolTreeNode& operator<<(ProtocolTreeNode&, const XATTRI&);
-ProtocolTreeNode* operator<<(ProtocolTreeNode*, const XATTRI&);
-
-#endif /* PROTOCOLNODE_H_ */ \ No newline at end of file
diff --git a/protocols/WhatsApp/src/WhatsAPI++/README.md b/protocols/WhatsApp/src/WhatsAPI++/README.md
deleted file mode 100644
index 69e374a6ef..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/README.md
+++ /dev/null
@@ -1,30 +0,0 @@
-This library can be used for creating WhatsApp-clients and is based on the MojoWhatsup-project written by Antonio Morales. The original source code has been modified by Uli Hecht.
-
--------------------------------------------------------------------------------------------------
-ORIGINAL "README.MD" BELOW
--------------------------------------------------------------------------------------------------
-
-MojoWhatsup
-===========
-
-MojoWhatsup is an IM application for Webos that allows you to chat with your Whatsapp friends
-
-MojoWhatsup has been developed as a Webos hybrid app, i.e. a javascript webos app (based in Mojo framework)
-and a plugin (mojowhatsup_service_plugin) in C++. The plugin supports all Whatsapp communication API.
-
-Contact: Antonio Morales <amoralico@gmail.com>
-
-License:
-
- Copyright (c) 2012, Antonio Morales <amoralico@gmail.com>
-
- MojoWhatsup is free software: you can redistribute it and/or modify it under the terms
- of the GNU General Public License as published by the Free Software Foundation,
- either version 2 of the License, or (at your option) any later version.
-
- MojoWhatsup is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
- without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- See the GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along with MojoWhatsup.
- If not, see http://www.gnu.org/licenses/.
diff --git a/protocols/WhatsApp/src/WhatsAPI++/WAConnection.cpp b/protocols/WhatsApp/src/WhatsAPI++/WAConnection.cpp
deleted file mode 100644
index b760c58da4..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/WAConnection.cpp
+++ /dev/null
@@ -1,1125 +0,0 @@
-/*
- * WAConnection.cpp
- *
- * Created on: 26/06/2012
- * Author: Antonio
- */
-
-#include "../stdafx.h" // #TODO Remove Miranda-dependency
-
-#include "ProtocolTreeNode.h"
-#include "utilities.h"
-
-const char* dictionary[] = {
- "", "", "", "account", "ack", "action", "active", "add", "after", "all", "allow", "apple", "auth", "author", "available",
- "bad-protocol", "bad-request", "before", "body", "broadcast", "cancel", "category", "challenge", "chat", "clean", "code",
- "composing", "config", "contacts", "count", "create", "creation", "debug", "default", "delete", "delivery", "delta", "deny",
- "digest", "dirty", "duplicate", "elapsed", "enable", "encoding", "error", "event", "expiration", "expired", "fail", "failure",
- "false", "favorites", "feature", "features", "feature-not-implemented", "field", "first", "free", "from", "g.us", "get", "google",
- "group", "groups", "groups_v2", "http://etherx.jabber.org/streams", "http://jabber.org/protocol/chatstates", "ib", "id", "image",
- "img", "index", "internal-server-error", "ip", "iq", "item-not-found", "item", "jabber:iq:last", "jabber:iq:privacy", "jabber:x:event",
- "jid", "kind", "last", "leave", "list", "max", "mechanism", "media", "message_acks", "message", "method", "microsoft", "missing",
- "modify", "mute", "name", "nokia", "none", "not-acceptable", "not-allowed", "not-authorized", "notification", "notify", "off",
- "offline", "order", "owner", "owning", "p_o", "p_t", "paid", "participant", "participants", "participating", "paused", "picture",
- "pin", "ping", "platform", "port", "presence", "preview", "probe", "prop", "props", "query", "raw", "read", "readreceipts", "reason",
- "receipt", "relay", "remote-server-timeout", "remove", "request", "required", "resource-constraint", "resource", "response", "result",
- "retry", "rim", "s_o", "s_t", "s.us", "s.whatsapp.net", "seconds", "server-error", "server", "service-unavailable", "set", "show", "silent",
- "stat", "status", "stream:error", "stream:features", "subject", "subscribe", "success", "sync", "t", "text", "timeout", "timestamp", "to",
- "true", "type", "unavailable", "unsubscribe", "uri", "url", "urn:ietf:params:xml:ns:xmpp-sasl", "urn:ietf:params:xml:ns:xmpp-stanzas",
- "urn:ietf:params:xml:ns:xmpp-streams", "urn:xmpp:ping", "urn:xmpp:whatsapp:account", "urn:xmpp:whatsapp:dirty", "urn:xmpp:whatsapp:mms",
- "urn:xmpp:whatsapp:push", "urn:xmpp:whatsapp", "user", "user-not-found", "value", "version", "w:g", "w:p:r", "w:p", "w:profile:picture",
- "w", "wait", "WAUTH-2", "xmlns:stream", "xmlns", "1", "chatstate", "crypto", "phash", "enc", "class", "off_cnt", "w:g2", "promote",
- "demote", "creator", "Bell.caf", "Boing.caf", "Glass.caf", "Harp.caf", "TimePassing.caf", "Tri-tone.caf", "Xylophone.caf", "background",
- "backoff", "chunked", "context", "full", "in", "interactive", "out", "registration", "sid", "urn:xmpp:whatsapp:sync", "flt", "s16", "u8",
- "adpcm", "amrnb", "amrwb", "mp3", "pcm", "qcelp", "wma", "h263", "h264", "jpeg"
-};
-
-const char* extended_dict[] = {
- "mpeg4", "wmv", "audio/3gpp", "audio/aac", "audio/amr", "audio/mp4", "audio/mpeg", "audio/ogg", "audio/qcelp", "audio/wav",
- "audio/webm", "audio/x-caf", "audio/x-ms-wma", "image/gif", "image/jpeg", "image/png", "video/3gpp", "video/avi", "video/mp4",
- "video/mpeg", "video/quicktime", "video/x-flv", "video/x-ms-asf", "302", "400", "401", "402", "403", "404", "405", "406", "407",
- "409", "410", "500", "501", "503", "504", "abitrate", "acodec", "app_uptime", "asampfmt", "asampfreq", "audio", "clear", "conflict",
- "conn_no_nna", "cost", "currency", "duration", "extend", "file", "fps", "g_notify", "g_sound", "gcm", "gone", "google_play", "hash",
- "height", "invalid", "jid-malformed", "latitude", "lc", "lg", "live", "location", "log", "longitude", "max_groups", "max_participants",
- "max_subject", "mimetype", "mode", "napi_version", "normalize", "orighash", "origin", "passive", "password", "played",
- "policy-violation", "pop_mean_time", "pop_plus_minus", "price", "pricing", "redeem", "Replaced by new connection", "resume",
- "signature", "size", "sound", "source", "system-shutdown", "username", "vbitrate", "vcard", "vcodec", "video", "width",
- "xml-not-well-formed", "checkmarks", "image_max_edge", "image_max_kbytes", "image_quality", "ka", "ka_grow", "ka_shrink", "newmedia",
- "library", "caption", "forward", "c0", "c1", "c2", "c3", "clock_skew", "cts", "k0", "k1", "login_rtt", "m_id", "nna_msg_rtt",
- "nna_no_off_count", "nna_offline_ratio", "nna_push_rtt", "no_nna_con_count", "off_msg_rtt", "on_msg_rtt", "stat_name", "sts",
- "suspect_conn", "lists", "self", "qr", "web", "w:b", "recipient", "w:stats", "forbidden", "aurora.m4r", "bamboo.m4r", "chord.m4r",
- "circles.m4r", "complete.m4r", "hello.m4r", "input.m4r", "keys.m4r", "note.m4r", "popcorn.m4r", "pulse.m4r", "synth.m4r", "filehash",
- "max_list_recipients", "en-AU", "en-GB", "es-MX", "pt-PT", "zh-Hans", "zh-Hant", "relayelection", "relaylatency", "interruption",
- "Apex.m4r", "Beacon.m4r", "Bulletin.m4r", "By The Seaside.m4r", "Chimes.m4r", "Circuit.m4r", "Constellation.m4r", "Cosmic.m4r",
- "Crystals.m4r", "Hillside.m4r", "Illuminate.m4r", "Night Owl.m4r", "Opening.m4r", "Playtime.m4r", "Presto.m4r", "Radar.m4r",
- "Radiate.m4r", "Ripples.m4r", "Sencha.m4r", "Signal.m4r", "Silk.m4r", "Slow Rise.m4r", "Stargaze.m4r", "Summit.m4r", "Twinkle.m4r",
- "Uplift.m4r", "Waves.m4r", "voip", "eligible", "upgrade", "planned", "current", "future", "disable", "expire", "start", "stop",
- "accuracy", "speed", "bearing", "recording", "encrypt", "key", "identity", "w:gp2", "admin", "locked", "unlocked", "new", "battery",
- "archive", "adm", "plaintext_size", "compressed_size", "delivered", "msg", "pkmsg", "everyone", "v", "transport", "call-id"
-};
-
-static map<string, int> tokenMap1, tokenMap2;
-
-void WAConnection::globalInit()
-{
- for (int i = 0; i < _countof(dictionary); i++)
- if (*dictionary[i] != 0)
- tokenMap1[dictionary[i]] = i;
-
- for (int i = 0; i < _countof(extended_dict); i++)
- tokenMap2[extended_dict[i]] = i;
-}
-
-int WAConnection::tokenLookup(const std::string &str)
-{
- std::map<string, int>::iterator it = tokenMap1.find(str);
- if (it != tokenMap1.end())
- return it->second;
-
- it = tokenMap2.find(str);
- if (it != tokenMap2.end())
- return it->second + 0x100;
-
- return -1;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-
-void WAConnection::logData(const char *format, ...)
-{
- va_list args;
- va_start(args, format);
- char tmp[4000];
- vsprintf_s(tmp, format, args);
- rawConn->log(">> ", tmp);
- va_end(args);
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-
-WAConnection::WAConnection(const std::string &user, const std::string &resource, IMutex *mutex, IMutex *write_mutex, ISocketConnection *conn, WAListener *pEventHandler, WAGroupListener *pGroupEventHandler) :
- in(this, conn),
- out(this, conn, write_mutex)
-{
- m_pMutex = mutex;
- m_pEventHandler = pEventHandler;
- m_pGroupEventHandler = pGroupEventHandler;
-
- rawConn = conn;
-
- this->retry = true;
-
- this->user = user;
- this->resource = resource;
- this->domain = "s.whatsapp.net";
- this->jid = user + "@" + domain;
-
- this->supports_receipt_acks = false;
- this->iqid = 0;
- this->lastTreeRead = 0;
- this->expire_date = 0L;
- this->account_kind = -1;
-}
-
-WAConnection::~WAConnection()
-{
- m_pMutex->lock();
- for (auto it = pending_server_requests.begin(); it != pending_server_requests.end(); ++it)
- delete it->second;
- m_pMutex->unlock();
-}
-
-std::string WAConnection::gidToGjid(const std::string &gid)
-{
- return gid + "@g.us";
-}
-
-std::string WAConnection::makeId(const std::string &prefix)
-{
- return prefix + Utilities::itoa(++this->iqid, 16);
-}
-
-ProtocolTreeNode* WAConnection::getReceiptAck(const std::string &to, const std::string &id, const std::string &receiptType) throw(WAException)
-{
- ProtocolTreeNode *ackNode = new ProtocolTreeNode("ack")
- << XATTR("xmlns", "urn:xmpp:receipts") << XATTR("type", receiptType);
-
- return new ProtocolTreeNode("message", ackNode) << XATTR("to", to) << XATTR("type", "chat") << XATTR("id", id);
-}
-
-bool WAConnection::supportsReceiptAcks()
-{
- return supports_receipt_acks;
-}
-
-std::string WAConnection::removeResourceFromJid(const std::string &jid)
-{
- size_t slashidx = jid.find('/');
- if (slashidx == std::string::npos)
- return jid;
-
- return jid.substr(0, slashidx + 1);
-}
-
-void WAConnection::setLogin(WALogin* login)
-{
- if (login->m_tExpireDate != 0L)
- this->expire_date = login->m_tExpireDate;
-
- if (login->m_iAccountKind != -1)
- this->account_kind = login->m_iAccountKind;
-}
-
-bool WAConnection::read() throw(WAException)
-{
- ProtocolTreeNode *node;
- try {
- node = in.nextTree();
- this->lastTreeRead = time(NULL);
- }
- catch (exception& ex) {
- throw WAException(ex.what(), WAException::CORRUPT_STREAM_EX, 0);
- }
-
- if (node == NULL)
- return false;
-
- string tmp = node->toString();
- rawConn->log("XML received\n", tmp.c_str());
-
- if (ProtocolTreeNode::tagEquals(node, "iq"))
- parseIq(node);
- else if (ProtocolTreeNode::tagEquals(node, "presence"))
- parsePresense(node);
- else if (ProtocolTreeNode::tagEquals(node, "message"))
- parseMessage(node);
- else if (ProtocolTreeNode::tagEquals(node, "notification"))
- parseNotification(node);
- else if (ProtocolTreeNode::tagEquals(node, "ack"))
- parseAck(node);
- else if (ProtocolTreeNode::tagEquals(node, "receipt"))
- parseReceipt(node);
- else if (ProtocolTreeNode::tagEquals(node, "chatstate"))
- parseChatStates(node);
- else {
- rawConn->log("Warning: Node parsing not handled:\n", tmp.c_str());
- }
-
- delete node;
- return true;
-}
-
-void WAConnection::readGroupList(ProtocolTreeNode *node, std::vector<std::string>& groups) throw (WAException)
-{
- std::vector<ProtocolTreeNode*> nodes(node->getAllChildren("group"));
- for (size_t i = 0; i < nodes.size(); i++) {
- ProtocolTreeNode *groupNode = nodes[i];
- const string &gid = groupNode->getAttributeValue("id");
- string gjid = gidToGjid(gid);
- const string &owner = groupNode->getAttributeValue("owner");
- const string &subject = groupNode->getAttributeValue("subject");
- const string &subject_t = groupNode->getAttributeValue("s_t");
- const string &subject_owner = groupNode->getAttributeValue("s_o");
- const string &creation = groupNode->getAttributeValue("creation");
- if (m_pGroupEventHandler != NULL)
- m_pGroupEventHandler->onGroupInfo(gjid, owner, subject, subject_owner, atoi(subject_t.c_str()), atoi(creation.c_str()));
- groups.push_back(gjid);
- }
-}
-
-std::map<string, string> WAConnection::parseCategories(ProtocolTreeNode *dirtyNode) throw (WAException)
-{
- std::map<string, string> categories;
- if (dirtyNode->children != NULL) {
- for (size_t i = 0; i < dirtyNode->children->size(); i++) {
- ProtocolTreeNode *childNode = (*dirtyNode->children)[i];
- if (ProtocolTreeNode::tagEquals(childNode, "category")) {
- const string &categoryName = childNode->getAttributeValue("name");
- const string &timestamp = childNode->getAttributeValue("timestamp");
- categories[categoryName] = timestamp;
- }
- }
- }
-
- return categories;
-}
-
-void WAConnection::parseAck(ProtocolTreeNode *node) throw(WAException)
-{
- const string &from = node->getAttributeValue("from");
- const string &cls = node->getAttributeValue("class");
- const string &id = node->getAttributeValue("id");
- // const string &ts = node->getAttributeValue("t");
-
- if (cls == "message" && m_pEventHandler != NULL) {
- FMessage msg(from, true, id);
- msg.status = FMessage::STATUS_RECEIVED_BY_SERVER;
- m_pEventHandler->onMessageStatusUpdate(msg);
- }
-}
-
-void WAConnection::parseChatStates(ProtocolTreeNode *node) throw (WAException)
-{
- const string &from = node->getAttributeValue("from");
-
- std::vector<ProtocolTreeNode*> messageChildren(node->getAllChildren());
- for (size_t i = 0; i < messageChildren.size(); i++) {
- ProtocolTreeNode *childNode = messageChildren[i];
- if (ProtocolTreeNode::tagEquals(childNode, "composing")) {
- if (m_pEventHandler != NULL)
- m_pEventHandler->onIsTyping(from, true);
- }
- else if (ProtocolTreeNode::tagEquals(childNode, "paused")) {
- if (m_pEventHandler != NULL)
- m_pEventHandler->onIsTyping(from, false);
- }
- }
-}
-
-void WAConnection::parseIq(ProtocolTreeNode *node) throw(WAException)
-{
- const string &type = node->getAttributeValue("type");
- if (type.empty())
- throw WAException("missing 'type' attribute in iq stanza", WAException::CORRUPT_STREAM_EX, 0);
-
- const string &id = node->getAttributeValue("id");
- const string &from = node->getAttributeValue("from");
-
- if (type == "result") {
- if (id.empty())
- throw WAException("missing 'id' attribute in iq stanza", WAException::CORRUPT_STREAM_EX, 0);
-
- m_pMutex->lock();
- std::map<string, IqResultHandler*>::iterator it = this->pending_server_requests.find(id);
- if (it != this->pending_server_requests.end()) {
- it->second->parse(node, from);
- delete it->second;
- this->pending_server_requests.erase(id);
- m_pMutex->unlock();
- return;
- }
-
- m_pMutex->unlock();
- if (id.compare(0, this->user.size(), this->user) == 0) {
- ProtocolTreeNode *accountNode = node->getChild(0);
- ProtocolTreeNode::require(accountNode, "account");
- const string &kind = accountNode->getAttributeValue("kind");
- if (kind == "paid")
- this->account_kind = 1;
- else if (kind == "free")
- this->account_kind = 0;
- else
- this->account_kind = -1;
-
- const string &expiration = accountNode->getAttributeValue("expiration");
- if (expiration.empty())
- throw WAException("no expiration");
-
- this->expire_date = atol(expiration.c_str());
- if (this->expire_date == 0)
- throw WAException("invalid expire date: " + expiration);
- if (m_pEventHandler != NULL)
- m_pEventHandler->onAccountChange(this->account_kind, this->expire_date);
- }
- else {
- ProtocolTreeNode *childNode = node->getChild(0);
- if (ProtocolTreeNode::tagEquals(childNode, "leave")) {
- std::vector<ProtocolTreeNode*> nodes(childNode->getAllChildren("group"));
- for (size_t i = 0; i < nodes.size(); i++) {
- ProtocolTreeNode *groupNode = nodes[i];
- const string &gjid = groupNode->getAttributeValue("id");
- if (m_pGroupEventHandler != NULL)
- m_pGroupEventHandler->onLeaveGroup(gjid);
- }
- }
- }
- }
- else if (type == "error") {
- m_pMutex->lock();
- std::map<string, IqResultHandler*>::iterator it = this->pending_server_requests.find(id);
- if (it != this->pending_server_requests.end()) {
- it->second->error(node);
- delete it->second;
- this->pending_server_requests.erase(id);
- }
- m_pMutex->unlock();
- }
- else if (type == "get") {
- ProtocolTreeNode *childNode = node->getChild(0);
- if (ProtocolTreeNode::tagEquals(childNode, "ping")) {
- if (m_pEventHandler != NULL)
- m_pEventHandler->onPing(id);
- }
- else if ((ProtocolTreeNode::tagEquals(childNode, "query") && !from.empty()) ? false : (ProtocolTreeNode::tagEquals(childNode, "relay")) && !from.empty()) {
- const string &pin = childNode->getAttributeValue("pin");
- if (!pin.empty() && m_pEventHandler != NULL) {
- int timeoutSeconds = atoi(childNode->getAttributeValue("timeout").c_str());
- m_pEventHandler->onRelayRequest(pin, timeoutSeconds, id);
- }
- }
- }
- else if (type == "set") {
- ProtocolTreeNode *childNode = node->getChild(0);
- if (ProtocolTreeNode::tagEquals(childNode, "query")) {
- const string &xmlns = childNode->getAttributeValue("xmlns");
- if (xmlns == "jabber:iq:roster") {
- std::vector<ProtocolTreeNode*> itemNodes(childNode->getAllChildren("item"));
- for (size_t i = 0; i < itemNodes.size(); i++) {
- // ProtocolTreeNode *itemNode = itemNodes[i];
- // const string &jid = itemNode->getAttributeValue("jid");
- // const string &subscription = itemNode->getAttributeValue("subscription");
- // ask = itemNode->getAttributeValue("ask");
- }
- }
- }
- }
- else throw WAException("unknown iq type attribute: " + type, WAException::CORRUPT_STREAM_EX, 0);
-}
-
-void WAConnection::parseMessage(ProtocolTreeNode *messageNode) throw (WAException)
-{
- const string &id = messageNode->getAttributeValue("id");
- const string &attribute_t = messageNode->getAttributeValue("t");
- const string &from = messageNode->getAttributeValue("from");
-
- const string &typeAttribute = messageNode->getAttributeValue("type");
- if (typeAttribute.empty())
- return;
-
- const string &participant = messageNode->getAttributeValue("participant");
- if (typeAttribute == "error") {
- int errorCode = 0;
- std::vector<ProtocolTreeNode*> errorNodes(messageNode->getAllChildren("error"));
- for (size_t i = 0; i < errorNodes.size(); i++) {
- ProtocolTreeNode *errorNode = errorNodes[i];
- errorCode = atoi(errorNode->getAttributeValue("code").c_str());
- }
-
- FMessage message(from, true, id);
- message.status = FMessage::STATUS_SERVER_BOUNCE;
-
- if (m_pEventHandler != NULL)
- m_pEventHandler->onMessageError(message, errorCode);
- return;
- }
-
- if (from.empty() || id.empty())
- return;
- FMessage fmessage(from, false, id);
-
- if (typeAttribute == "text") {
- ProtocolTreeNode *body = messageNode->getChild("body");
- if (body == NULL || body->data == NULL || body->data->empty())
- return;
-
- fmessage.wants_receipt = false;
- fmessage.timestamp = atoi(attribute_t.c_str());
- fmessage.remote_resource = participant;
- fmessage.notifyname = messageNode->getAttributeValue("notify");
- fmessage.data = body->getDataAsString();
- fmessage.status = FMessage::STATUS_UNSENT;
- if (fmessage.timestamp == 0) {
- fmessage.timestamp = time(NULL);
- fmessage.offline = false;
- }
- }
- else if (typeAttribute == "media") {
- ProtocolTreeNode *media = messageNode->getChild("media");
- if (media == NULL)
- return;
-
- fmessage.wants_receipt = false;
- fmessage.timestamp = atoi(attribute_t.c_str());
- fmessage.notifyname = messageNode->getAttributeValue("notify");
- fmessage.remote_resource = messageNode->getAttributeValue("participant");
- fmessage.media_wa_type = FMessage::getMessage_WA_Type(media->getAttributeValue("type"));
- fmessage.media_url = media->getAttributeValue("url");
- fmessage.media_name = media->getAttributeValue("file");
- fmessage.media_size = Utilities::parseLongLong(media->getAttributeValue("size"));
- fmessage.media_duration_seconds = atoi(media->getAttributeValue("seconds").c_str());
-
- if (fmessage.media_wa_type == FMessage::WA_TYPE_LOCATION) {
- const string &name = media->getAttributeValue("name");
- const string &latitudeString = media->getAttributeValue("latitude");
- const string &longitudeString = media->getAttributeValue("longitude");
- if (latitudeString.empty() || longitudeString.empty())
- throw WAException("location message missing lat or long attribute", WAException::CORRUPT_STREAM_EX, 0);
-
- fmessage.latitude = atof(latitudeString.c_str());
- fmessage.longitude = atof(longitudeString.c_str());
- if (!name.empty())
- fmessage.data = name;
- }
- else if (fmessage.media_wa_type == FMessage::WA_TYPE_CONTACT) {
- ProtocolTreeNode *contactChildNode = media->getChild(0);
- if (contactChildNode != NULL) {
- fmessage.media_name = contactChildNode->getAttributeValue("name");
- fmessage.data = contactChildNode->getDataAsString();
- size_t off = fmessage.data.find("TEL;");
- if (off != string::npos) {
- if ((off = fmessage.data.find(":", off)) != string::npos) {
- std::string number;
- for (off++;; off++) {
- char c = fmessage.data[off];
- if (isdigit(c))
- number += c;
- else if (c == '+' || c == ' ')
- continue;
- else
- break;
- }
- if (!number.empty())
- fmessage.media_url = number;
- }
- }
- }
- }
- else {
- const string &encoding = media->getAttributeValue("encoding");
- if (encoding.empty() || encoding == "text")
- fmessage.data = media->getDataAsString();
- else
- fmessage.data = media->getAttributeValue("caption");
- }
- }
- else return;
-
- if (fmessage.remote_resource.empty()) {
- if (m_pEventHandler != NULL)
- m_pEventHandler->onMessageForMe(fmessage);
- }
- else if (m_pGroupEventHandler != NULL)
- m_pGroupEventHandler->onGroupMessage(fmessage);
-}
-
-void WAConnection::parseNotification(ProtocolTreeNode *node) throw(WAException)
-{
- const string &id = node->getAttributeValue("id");
- const string &from = node->getAttributeValue("from");
- const string &type = node->getAttributeValue("type");
- if (type.empty() || from.empty() || m_pEventHandler == NULL)
- return;
-
- const string &participant = node->getAttributeValue("participant");
- int ts = atoi(node->getAttributeValue("t").c_str());
-
- if (type == "contacts") {
- std::vector<ProtocolTreeNode*> children(node->getAllChildren());
- for (size_t i = 0; i < children.size(); i++) {
- ProtocolTreeNode *child = children[i];
-
- const string &jid = node->getAttributeValue("jid");
- if (jid.empty()) continue;
-
- bool bAdded;
- if (ProtocolTreeNode::tagEquals(child, "add"))
- bAdded = true;
- else if (ProtocolTreeNode::tagEquals(child, "delete"))
- bAdded = false;
- else
- continue;
-
- m_pEventHandler->onContactChanged(jid, bAdded);
- }
- }
- else if (type == "picture") {
- std::vector<ProtocolTreeNode*> children2(node->getAllChildren());
- for (unsigned j = 0; j < children2.size(); j++) {
- ProtocolTreeNode *child2 = children2[j];
- if (ProtocolTreeNode::tagEquals(child2, "set")) {
- const string &id = child2->getAttributeValue("id");
- const string &jid = child2->getAttributeValue("jid");
- if (!id.empty())
- m_pEventHandler->onPictureChanged(jid, id, true);
- }
- else if (ProtocolTreeNode::tagEquals(child2, "delete")) {
- const string &jid = child2->getAttributeValue("jid");
- m_pEventHandler->onPictureChanged(jid, id, false);
- }
- }
- }
- // group chats
- else if (type == "participant") {
- ProtocolTreeNode *subNode = node->getChild("add");
- if (subNode != NULL) {
- const string &jid = subNode->getAttributeValue("jid");
- if (m_pGroupEventHandler)
- m_pGroupEventHandler->onGroupAddUser(from, jid, ts);
- }
- else if ((subNode = node->getChild("remove")) != NULL) {
- const string &jid = subNode->getAttributeValue("jid");
- if (m_pGroupEventHandler)
- m_pGroupEventHandler->onGroupRemoveUser(from, jid, ts);
- }
- else return;
-
- }
- else if (type == "subject") {
- ProtocolTreeNode *bodyNode = node->getChild("body");
- if (bodyNode != NULL && m_pGroupEventHandler != NULL)
- m_pGroupEventHandler->onGroupNewSubject(from, participant, bodyNode->getDataAsString(), ts);
- }
- else {
- rawConn->log("Warning: Unknown Notification received:\n", node->toString().c_str());
- }
-
- sendAck(node, "notification");
-}
-
-void WAConnection::parsePresense(ProtocolTreeNode *node) throw(WAException)
-{
- const string &xmlns = node->getAttributeValue("xmlns");
- const string &from = node->getAttributeValue("from");
- if (from.empty())
- return;
-
- int ts = atoi(node->getAttributeValue("t").c_str());
- if (xmlns == "w" && !from.empty()) {
- const string &add = node->getAttributeValue("add");
- const string &remove = node->getAttributeValue("remove");
- const string &status = node->getAttributeValue("status");
- if (!add.empty()) {
- if (m_pGroupEventHandler != NULL)
- m_pGroupEventHandler->onGroupAddUser(from, add, ts);
- }
- else if (!remove.empty()) {
- if (m_pGroupEventHandler != NULL)
- m_pGroupEventHandler->onGroupRemoveUser(from, remove, ts);
- }
- else if (status == "dirty") {
- std::map<string, string> categories = parseCategories(node);
- if (m_pEventHandler != NULL)
- m_pEventHandler->onDirty(categories);
- }
- return;
- }
-
- if (m_pEventHandler != NULL) {
- const string &type = node->getAttributeValue("type");
- if (type == "unavailable") {
- const string &lastSeen = node->getAttributeValue("last");
- m_pEventHandler->onAvailable(from, false, (lastSeen == "deny") ? 0 : stoul(lastSeen));
- }
- else if (type == "available" || type == "")
- m_pEventHandler->onAvailable(from, true);
- }
-}
-
-void WAConnection::parseReceipt(ProtocolTreeNode *node) throw(WAException)
-{
- const string &from = node->getAttributeValue("from");
- const string &id = node->getAttributeValue("id");
-
- if (m_pEventHandler != NULL) {
- FMessage msg(from, false, id);
- msg.status = FMessage::STATUS_RECEIVED_BY_TARGET;
- m_pEventHandler->onMessageStatusUpdate(msg);
- }
-
- sendAck(node,"receipt");
-}
-
-std::vector<ProtocolTreeNode*>* WAConnection::processGroupSettings(const std::vector<GroupSetting>& groups)
-{
- std::vector<ProtocolTreeNode*>* result = new std::vector<ProtocolTreeNode*>(groups.size());
- if (!groups.empty()) {
- time_t now = time(NULL);
- for (size_t i = 0; i < groups.size(); i++) {
- (*result)[i] = new ProtocolTreeNode("item")
- << XATTR("jid", groups[i].jid) << XATTR("notify", (groups[i].enabled ? "1" : "0"))
- << XATTRI("mute", (groups[i].muteExpiry > now) ? groups[i].muteExpiry - now : 0);
- }
- }
-
- return result;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// Send* functions
-
-void WAConnection::sendActive() throw(WAException)
-{
- ProtocolTreeNode n("presence");
- out.write(n << XATTR("type", "active"));
-}
-
-void WAConnection::sendAvailableForChat() throw(WAException)
-{
- ProtocolTreeNode n("presence");
- out.write(n << XATTR("name", this->nick));
-}
-
-void WAConnection::sendClientConfig(const std::string &sound, const std::string &pushID, bool preview, const std::string &platform) throw(WAException)
-{
- m_pMutex->lock();
- std::string id = makeId("config_");
- this->pending_server_requests[id] = new IqSendClientConfigHandler(this);
- m_pMutex->unlock();
-
- ProtocolTreeNode iq("iq", new ProtocolTreeNode("config")
- << XATTR("xmlns", "urn:xmpp:whatsapp:push") << XATTR("sound", sound) << XATTR("id", pushID) << XATTR("preview", preview ? "1" : "0") << XATTR("platform", platform));
- out.write(iq << XATTR("id", id) << XATTR("type", "set") << XATTR("to", this->domain));
-}
-
-void WAConnection::sendClientConfig(const std::string &pushID, bool preview, const std::string &platform, bool defaultSettings, bool groupSettings, const std::vector<GroupSetting>& groups) throw(WAException)
-{
- ProtocolTreeNode *configNode = new ProtocolTreeNode("config", NULL, this->processGroupSettings(groups))
- << XATTR("xmlns", "urn:xmpp:whatsapp:push") << XATTR("id", pushID) << XATTR("lg", "en") << XATTR("lc", "US") << XATTR("clear", "0")
- << XATTR("preview", preview ? "1" : "0") << XATTR("platform", platform)
- << XATTR("default", defaultSettings ? "1" : "0") << XATTR("groups", groupSettings ? "1" : "0");
-
- std::string id = makeId("config_");
- ProtocolTreeNode iq("iq", configNode);
- out.write(iq << XATTR("id", id) << XATTR("type", "set") << XATTR("to", this->domain));
-}
-
-void WAConnection::sendClose() throw(WAException)
-{
- ProtocolTreeNode n("presence");
- out.write(n << XATTR("type", "unavailable"));
- out.streamEnd();
-}
-
-void WAConnection::sendComposing(const std::string &to) throw(WAException)
-{
- ProtocolTreeNode n("chatstate", new ProtocolTreeNode("composing"));
- out.write(n << XATTR("to", to));
-}
-
-void WAConnection::sendDeleteAccount() throw (WAException)
-{
- m_pMutex->lock();
- std::string id = makeId("del_acct_");
- this->pending_server_requests[id] = new IqResultSendDeleteAccount(this);
- m_pMutex->unlock();
-
- ProtocolTreeNode iq("iq", new ProtocolTreeNode("remove") << XATTR("xmlns", "urn:xmpp:whatsapp:account"));
- out.write(iq << XATTR("id", id) << XATTR("type", "get") << XATTR("to", "s.whatsapp.net"));
-}
-
-void WAConnection::sendGetGroups() throw (WAException)
-{
- m_pMutex->lock();
- std::string id = makeId("iq_");
- this->pending_server_requests[id] = new IqResultGetGroupsHandler(this, "participating");
- m_pMutex->unlock();
-
- ProtocolTreeNode iq("iq", new ProtocolTreeNode("list") << XATTR("type", "participating"));
- out.write(iq << XATTR("xmlns", "w:g") << XATTR("id", id) << XATTR("type", "get") << XATTR("to", "g.us"));
-}
-
-void WAConnection::sendGetPicture(const char *jid, const char *type) throw (WAException)
-{
- m_pMutex->lock();
- std::string id = makeId("iq_");
- this->pending_server_requests[id] = new IqResultGetPhotoHandler(this, jid);
- m_pMutex->unlock();
-
- ProtocolTreeNode iq("iq", new ProtocolTreeNode("picture") << XATTR("type", type));
- out.write(iq << XATTR("id", id) << XATTR("to", jid) << XATTR("xmlns", "w:profile:picture") << XATTR("type", "get"));
-}
-
-void WAConnection::sendGetPrivacyList() throw (WAException)
-{
- m_pMutex->lock();
- std::string id = makeId("privacylist_");
- this->pending_server_requests[id] = new IqResultPrivayListHandler(this);
- m_pMutex->unlock();
-
- ProtocolTreeNode iq("iq", new ProtocolTreeNode("query",
- new ProtocolTreeNode("list") << XATTR("name", "default")) << XATTR("xmlns", "jabber:iq:privacy"));
- out.write(iq << XATTR("id", id) << XATTR("type", "get"));
-}
-
-void WAConnection::sendGetServerProperties() throw (WAException)
-{
- m_pMutex->lock();
- std::string id = makeId("get_server_properties_");
- this->pending_server_requests[id] = new IqResultServerPropertiesHandler(this);
- m_pMutex->unlock();
-
- ProtocolTreeNode iq("iq", new ProtocolTreeNode("list") << XATTR("type", "props"));
- out.write(iq << XATTR("xmlns", "w:g2") << XATTR("id", id) << XATTR("type", "get") << XATTR("to", "g.us"));
-}
-
-void WAConnection::sendInactive() throw(WAException)
-{
- ProtocolTreeNode n("presence");
- out.write(n << XATTR("type", "inactive"));
-}
-
-void WAConnection::sendAck(ProtocolTreeNode *node, const char *classType)
-{
- const string &from = node->getAttributeValue("from");
- const string &to = node->getAttributeValue("to");
- const string &participant = node->getAttributeValue("participant");
- const string &id = node->getAttributeValue("id");
- const string &type = node->getAttributeValue("type");
-
- ProtocolTreeNode sendNode("ack");
- sendNode << XATTR("to", from) << XATTR("id", id) << XATTR("class", classType);
- if (!to.empty())
- sendNode << XATTR("from", to);
- if (!participant.empty())
- sendNode << XATTR("participant", participant);
- if (!type.empty())
- sendNode << XATTR("type", type);
-
- out.write(sendNode);
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-
-ProtocolTreeNode* WAConnection::getMessageNode(FMessage* message, ProtocolTreeNode *child)
-{
- std::vector<ProtocolTreeNode*>* messageChildren = new std::vector<ProtocolTreeNode*>();
- messageChildren->push_back(new ProtocolTreeNode("x", new ProtocolTreeNode("server")) << XATTR("xmlns", "jabber:x:event"));
- messageChildren->push_back(child);
-
- return new ProtocolTreeNode("message", NULL, messageChildren) <<
- XATTR("to", message->key.remote_jid) << XATTR("type", "text") << XATTR("id", message->key.id) << XATTRI("t", message->timestamp);
-}
-
-void WAConnection::sendMessage(FMessage* message) throw(WAException)
-{
- if (message->media_wa_type != 0)
- sendMessageWithMedia(message);
- else
- sendMessageWithBody(message);
-}
-
-void WAConnection::sendMessageWithMedia(FMessage* message) throw (WAException)
-{
- logData("Send message with media %s %d", message->media_name.c_str(), message->media_size);
- logData("media-url:%s", message->media_url.c_str());
- if (message->media_wa_type == FMessage::WA_TYPE_SYSTEM)
- throw new WAException("Cannot send system message over the network");
-
- // request node for image, audio or video upload
- if (message->media_wa_type == FMessage::WA_TYPE_IMAGE || message->media_wa_type == FMessage::WA_TYPE_AUDIO || message->media_wa_type == FMessage::WA_TYPE_VIDEO) {
- m_pMutex->lock();
- std::string id = makeId("iq_");
- this->pending_server_requests[id] = new MediaUploadResponseHandler(this, *message);
- m_pMutex->unlock();
-
- ProtocolTreeNode *mediaNode = new ProtocolTreeNode("media");
- mediaNode << XATTR("hash", message->media_name) << XATTR("type", FMessage::getMessage_WA_Type_StrValue(message->media_wa_type)) << XATTR("size", std::to_string(message->media_size));
-
- ProtocolTreeNode *n = new ProtocolTreeNode("iq", mediaNode);
- n << XATTR("id", id) << XATTR("to", this->domain) << XATTR("type", "set") << XATTR("xmlns", "w:m");
- out.write(*n);
- delete n;
- return;
- }
-
- ProtocolTreeNode *mediaNode;
- if (message->media_wa_type == FMessage::WA_TYPE_CONTACT && !message->media_name.empty()) {
- ProtocolTreeNode *vcardNode = new ProtocolTreeNode("vcard", new std::vector<unsigned char>(message->data.begin(), message->data.end()))
- << XATTR("name", message->media_name);
- mediaNode = new ProtocolTreeNode("media", vcardNode);
- }
- else {
- mediaNode = new ProtocolTreeNode("media", new std::vector<unsigned char>(message->data.begin(), message->data.end()), NULL)
- << XATTR("encoding", "text");
- }
-
- mediaNode << XATTR("xmlns", "urn:xmpp:whatsapp:mms") << XATTR("type", FMessage::getMessage_WA_Type_StrValue(message->media_wa_type));
-
- if (message->media_wa_type == FMessage::WA_TYPE_LOCATION)
- mediaNode << XATTR("latitude", Utilities::doubleToStr(message->latitude)) << XATTR("longitude", Utilities::doubleToStr(message->longitude));
- else {
- mediaNode << XATTR("file", message->media_name) << XATTRI("size", message->media_size) << XATTR("url", message->media_url);
- if (message->media_wa_type == FMessage::WA_TYPE_CONTACT || message->media_name.empty() || message->media_url.empty() || message->media_size <= 0)
- mediaNode << XATTRI("seconds", message->media_duration_seconds);
- }
-
- ProtocolTreeNode *n = WAConnection::getMessageNode(message, mediaNode);
- out.write(*n);
- delete n;
-
-}
-
-// TODO remove this code from WA purple
-static std::string query_field(std::string work, std::string lo, bool integer = false)
-{
- size_t p = work.find("\"" + lo + "\"");
- if (p == std::string::npos)
- return "";
-
- work = work.substr(p + ("\"" + lo + "\"").size());
-
- p = work.find("\"");
- if (integer)
- p = work.find(":");
- if (p == std::string::npos)
- return "";
-
- work = work.substr(p + 1);
-
- p = 0;
- while (p < work.size()) {
- if (work[p] == '"' && (p == 0 || work[p - 1] != '\\'))
- break;
- p++;
- }
- if (integer) {
- p = 0;
- while (p < work.size() && work[p] >= '0' && work[p] <= '9')
- p++;
- }
- if (p == std::string::npos)
- return "";
-
- work = work.substr(0, p);
-
- return work;
-}
-
-void WAConnection::processUploadResponse(ProtocolTreeNode * node, FMessage * message)
-{
- ProtocolTreeNode* duplicate = node->getChild("duplicate");
-
- // setup vars for media message
- string fileType;
- string caption, url, fileName, fileSize, filePath, fileHash;
- caption = message->data;
-
- // parse node
- if (duplicate != NULL) {
- url = duplicate->getAttributeValue("url");
- fileSize = duplicate->getAttributeValue("size");
- fileHash = duplicate->getAttributeValue("filehash");
- fileType = duplicate->getAttributeValue("type");
- string tempfileName = duplicate->getAttributeValue("url");
- size_t index = tempfileName.find_last_of('/')+1;
- fileName = tempfileName.substr(index);
- }
- else {
- ProtocolTreeNode *media = node->getChild("media");
- if (media == NULL)
- return;
-
- string url = media->getAttributeValue("url");
- if(url.empty())
- return;
-
- string json = MediaUploader::pushfile(url,message, this->user);
- if (json.empty())
- return;
-
- //TODO why does the JSONNode not work? -> Throws some exception when trying to access elements after parsing.
-
- /*JSONNode resp = JSONNode::parse(json.c_str());
- fileName = resp["name"].as_string();
- url = resp["url"].as_string();
- fileSize = resp["size"].as_string();
- fileHash = resp["filehash"].as_string();
- fileType = resp["type"].as_string();
- */
-
- // TODO remove this code from WA purple
- size_t offset = json.find("{");
- if (offset == std::string::npos)
- return;
- json = json.substr(offset + 1);
-
- /* Look for closure */
- size_t cl = json.find("{");
- if (cl == std::string::npos)
- cl = json.size();
- std::string work = json.substr(0, cl);
-
- fileName = query_field(work, "name");
- url = query_field(work, "url");
- fileSize = query_field(work, "size");
- fileHash = query_field(work, "filehash");
- fileType = query_field(work, "type");
-
- }
-
- // TODO show caption and(?) link to media file in message window and history
- ProtocolTreeNode *mediaNode = new ProtocolTreeNode("media");
- mediaNode << XATTR("type", fileType)
- << XATTR("url", url) << XATTR("encoding", "raw") << XATTR("file", fileName)
- << XATTR("size", fileSize)<< XATTR("caption", caption);
-
- ProtocolTreeNode * messageNode = new ProtocolTreeNode("message", mediaNode);
- messageNode << XATTR("to", message->key.remote_jid) << XATTR("type", "media")
- << XATTR("id", message->key.id) << XATTRI("t", (int)time(0));
- out.write(*messageNode);
- delete messageNode;
-}
-
-void WAConnection::sendMessageWithBody(FMessage* message) throw (WAException)
-{
- ProtocolTreeNode *bodyNode = new ProtocolTreeNode("body", new std::vector<unsigned char>(message->data.begin(), message->data.end()));
- ProtocolTreeNode *n = WAConnection::getMessageNode(message, bodyNode);
- out.write(*n);
- delete n;
-}
-
-void WAConnection::sendMessageReceived(const FMessage &message) throw(WAException)
-{
- ProtocolTreeNode n("receipt");
- out.write(n << XATTR("type", "read") << XATTR("to", message.key.remote_jid) << XATTR("id", message.key.id));
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-
-void WAConnection::sendPaused(const std::string &to) throw(WAException)
-{
- ProtocolTreeNode n("chatstate", new ProtocolTreeNode("paused"));
- out.write(n << XATTR("to", to));
-}
-
-void WAConnection::sendPing() throw(WAException)
-{
- m_pMutex->lock();
- std::string id = makeId("ping_");
- this->pending_server_requests[id] = new IqResultPingHandler(this);
- m_pMutex->unlock();
-
- ProtocolTreeNode iq("iq", new ProtocolTreeNode("ping"));
- out.write(iq << XATTR("id", id) << XATTR("xmlns", "w:p") << XATTR("type", "get") << XATTR("to", "s.whatsapp.net"));
-}
-
-void WAConnection::sendPong(const std::string &id) throw(WAException)
-{
- ProtocolTreeNode iq("iq");
- out.write(iq << XATTR("type", "result") << XATTR("to", this->domain) << XATTR("id", id));
-}
-
-void WAConnection::sendPresenceSubscriptionRequest(const std::string &to) throw(WAException)
-{
- ProtocolTreeNode n("presence");
- out.write(n << XATTR("type", "subscribe") << XATTR("to", to));
-}
-
-void WAConnection::sendSetPicture(const char *jid, std::vector<unsigned char>* data, std::vector<unsigned char>* preview) throw (WAException)
-{
- m_pMutex->lock();
- std::string id = this->makeId("set_photo_");
- this->pending_server_requests[id] = new IqResultSetPhotoHandler(this, jid);
- m_pMutex->unlock();
-
- std::vector<ProtocolTreeNode*>* messageChildren = new std::vector<ProtocolTreeNode*>();
- if (preview)
- messageChildren->push_back(new ProtocolTreeNode("picture", preview, NULL) << XATTR("type", "preview"));
- if (data)
- messageChildren->push_back(new ProtocolTreeNode("picture", data, NULL) << XATTR("type", "image"));
-
- ProtocolTreeNode iq("iq", NULL, messageChildren);
- out.write(iq << XATTR("id", id) << XATTR("type", "set") << XATTR("to", jid) << XATTR("xmlns", "w:profile:picture"));
-}
-
-void WAConnection::sendStatusUpdate(std::string& status) throw (WAException)
-{
- std::string id = this->makeId(Utilities::intToStr((int)time(NULL)));
- FMessage message("s.us", true, id);
- ProtocolTreeNode *body = new ProtocolTreeNode("body", new std::vector<unsigned char>(status.begin(), status.end()), NULL);
- ProtocolTreeNode *n = getMessageNode(&message, body);
- out.write(*n);
- delete n;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// Group chats
-
-void WAConnection::sendGetGroupInfo(const std::string &gjid) throw (WAException)
-{
- m_pMutex->lock();
- std::string id = makeId("iq_");
- this->pending_server_requests[id] = new IqResultGetGroupInfoHandler(this);
- m_pMutex->unlock();
-
- ProtocolTreeNode iq("iq", new ProtocolTreeNode("query") << XATTR("request", "interactive"));
- out.write(iq << XATTR("xmlns", "w:g2") << XATTR("id", id) << XATTR("type", "get") << XATTR("to", gjid));
-}
-
-void WAConnection::sendGetParticipants(const std::string &gjid) throw (WAException)
-{
- m_pMutex->lock();
- std::string id = makeId("iq_");
- this->pending_server_requests[id] = new IqResultGetGroupParticipantsHandler(this);
- m_pMutex->unlock();
-
- ProtocolTreeNode iq("iq", new ProtocolTreeNode("list"));
- out.write(iq << XATTR("xmlns", "w:g") << XATTR("id", id) << XATTR("type", "get") << XATTR("to", gjid));
-}
-
-void WAConnection::readAttributeList(ProtocolTreeNode *node, std::vector<std::string>& vector, const std::string &tag, const std::string &attribute) throw (WAException)
-{
- std::vector<ProtocolTreeNode*> nodes(node->getAllChildren(tag));
- for (size_t i = 0; i < nodes.size(); i++) {
- ProtocolTreeNode *tagNode = nodes[i];
- vector.push_back(tagNode->getAttributeValue(attribute));
- }
-}
-
-void WAConnection::sendCreateGroupChat(const std::string &subject) throw (WAException)
-{
- logData("sending create group: %s", subject.c_str());
-
- m_pMutex->lock();
- std::string id = makeId("create_group_");
- this->pending_server_requests[id] = new IqResultCreateGroupChatHandler(this, subject);
- m_pMutex->unlock();
-
- ProtocolTreeNode iq("iq", new ProtocolTreeNode("group") << XATTR("action", "create") << XATTR("subject", subject));
- out.write(iq << XATTR("xmlns", "w:g") << XATTR("id", id) << XATTR("type", "set") << XATTR("to", "g.us"));
-}
-
-void WAConnection::sendClearDirty(const std::string &category) throw (WAException)
-{
- m_pMutex->lock();
- std::string id = makeId("clean_dirty_");
- this->pending_server_requests[id] = new IqResultClearDirtyHandler(this);
- m_pMutex->unlock();
-
- ProtocolTreeNode *categoryNode = new ProtocolTreeNode("category") << XATTR("name", category);
- ProtocolTreeNode *cleanNode = new ProtocolTreeNode("clean", categoryNode) << XATTR("xmlns", "urn:xmpp:whatsapp:dirty");
- ProtocolTreeNode iq("iq", cleanNode);
- out.write(iq << XATTR("id", id) << XATTR("type", "set") << XATTR("to", "s.whatsapp.net"));
-}
-
-void WAConnection::sendJoinLeaveGroup(const char *gjid, bool bJoin) throw (WAException)
-{
- std::string id = makeId("iq_");
-
- ProtocolTreeNode *groupNode = new ProtocolTreeNode("group") << XATTR("id", gjid);
- ProtocolTreeNode *leaveNode = new ProtocolTreeNode((bJoin) ? "join" : "leave", groupNode);
- ProtocolTreeNode iq("iq", leaveNode);
- out.write(iq << XATTR("xmlns", "w:g2") << XATTR("id", id) << XATTR("type", "set") << XATTR("to", "g.us"));
-}
-
-void WAConnection::sendAddParticipants(const std::string &gjid, const std::vector<std::string> &participants) throw (WAException)
-{
- sendVerbParticipants(gjid, participants, "add");
-}
-
-void WAConnection::sendRemoveParticipants(const std::string &gjid, const std::vector<std::string> &participants) throw (WAException)
-{
- sendVerbParticipants(gjid, participants, "remove");
-}
-
-void WAConnection::sendVerbParticipants(const std::string &gjid, const std::vector<std::string> &participants, const std::string &inner_tag) throw (WAException)
-{
- std::string id = makeId("iq_");
-
- size_t size = participants.size();
- std::vector<ProtocolTreeNode*>* children = new std::vector<ProtocolTreeNode*>(size);
- for (size_t i = 0; i < size; i++)
- (*children)[i] = new ProtocolTreeNode("participant") << XATTR("jid", participants[i]);
-
- ProtocolTreeNode iq("iq", new ProtocolTreeNode(inner_tag, NULL, children));
- out.write(iq << XATTR("xmlns", "w:g") << XATTR("id", id) << XATTR("type", "set") << XATTR("to", gjid));
-}
-
-void WAConnection::sendSetNewSubject(const std::string &gjid, const std::string &subject) throw (WAException)
-{
- std::string id = this->makeId("iq_");
-
- std::vector<unsigned char> *data = new std::vector<unsigned char>(subject.begin(), subject.end());
- ProtocolTreeNode iq("iq", new ProtocolTreeNode("subject", data));
- out.write(iq << XATTR("xmlns", "w:g2") << XATTR("id", id) << XATTR("type", "set") << XATTR("to", gjid));
-}
diff --git a/protocols/WhatsApp/src/WhatsAPI++/WAConnection.h b/protocols/WhatsApp/src/WhatsAPI++/WAConnection.h
deleted file mode 100644
index 0756a77abe..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/WAConnection.h
+++ /dev/null
@@ -1,415 +0,0 @@
-/*
- * WAConnection.h
- *
- * Created on: 26/06/2012
- * Author: Antonio
- */
-
-
-
-
-#ifndef WACONNECTION_H_
-#define WACONNECTION_H_
-
-#include <string>
-#include <time.h>
-#include <map>
-#include "WAException.h"
-#include "FMessage.h"
-#include "WALogin.h"
-#include "utilities.h"
-#include "BinTreeNodeReader.h"
-#include "BinTreeNodeWriter.h"
-#include "MediaUploader.h"
-
-#pragma warning(disable : 4290)
-
-class WALogin;
-class WASocketConnection;
-class KeyStream;
-class BinTreeNodeReader;
-
-class WAListener {
-public:
- virtual void onMessageForMe(const FMessage &paramFMessage) throw (WAException) = 0;
- virtual void onMessageStatusUpdate(const FMessage &paramFMessage) = 0;
- virtual void onMessageError(const FMessage &message, int paramInt) = 0;
- virtual void onPing(const std::string &paramString) throw (WAException) = 0;
- virtual void onPingResponseReceived() = 0;
- virtual void onAvailable(const std::string &paramString, bool paramBoolean, DWORD lastSeenTime = 0) = 0;
- virtual void onClientConfigReceived(const std::string &paramString) = 0;
- virtual void onIsTyping(const std::string &paramString, bool paramBoolean) = 0;
- virtual void onAccountChange(int paramInt, time_t paramLong) = 0;
- virtual void onPrivacyBlockListAdd(const std::string &paramString) = 0;
- virtual void onPrivacyBlockListClear() = 0;
- virtual void onDirty(const std::map<string, string>& paramHashtable) = 0;
- virtual void onDirtyResponse(int paramHashtable) = 0;
- virtual void onRelayRequest(const std::string &paramString1, int paramInt, const std::string &paramString2) = 0;
- virtual void onSendGetPicture(const std::string &jid, const std::vector<unsigned char>& data, const std::string &id) = 0;
- virtual void onContactChanged(const std::string &jid, bool added) = 0;
- virtual void onPictureChanged(const std::string &jid, const std::string &id, bool set) = 0;
- virtual void onDeleteAccount(bool result) = 0;
-};
-
-class WAGroupListener {
-public:
- virtual void onGroupAddUser(const std::string &gjid, const std::string &ujid, int ts) = 0;
- virtual void onGroupRemoveUser(const std::string &gjid, const std::string &ujid, int ts) = 0;
- virtual void onGroupNewSubject(const std::string &from, const std::string &author, const std::string &newSubject, int paramInt) = 0;
- virtual void onGroupMessage(const FMessage &paramFMessage) = 0;
- virtual void onServerProperties(std::map<std::string, std::string>* nameValueMap) = 0;
- virtual void onGroupCreated(const std::string &gjid, const std::string &nick) = 0;
- virtual void onGroupInfo(const std::string &jid, const std::string &owner, const std::string &subject, const std::string &subject_owner, int time_subject, int time_created) = 0;
- virtual void onSetSubject(const std::string &paramString) = 0;
- virtual void onAddGroupParticipants(const std::string &paramString, const std::vector<string> &paramVector, int paramHashtable) = 0;
- virtual void onRemoveGroupParticipants(const std::string &paramString, const std::vector<string> &paramVector, int paramHashtable) = 0;
- virtual void onGetParticipants(const std::string &gjid, const std::vector<string> &participants) = 0;
- virtual void onLeaveGroup(const std::string &paramString) = 0;
-};
-
-class GroupSetting {
-public:
- std::string jid;
- bool enabled;
- time_t muteExpiry;
-
- GroupSetting() {
- enabled = true;
- jid = "";
- muteExpiry = 0;
- }
-};
-
-class WAConnection
-{
- class IqResultHandler {
- protected:
- WAConnection* con;
- public:
- IqResultHandler(WAConnection* con) {this->con = con;}
- virtual void parse(ProtocolTreeNode* paramProtocolTreeNode, const std::string &paramString) throw (WAException)=0;
- void error(ProtocolTreeNode* node, int code) {
- con->logData("WAConnection: error node %s: code = %d", node->getAttributeValue("id").c_str(), code);
- }
- void error(ProtocolTreeNode* node) throw (WAException) {
- std::vector<ProtocolTreeNode*> nodes(node->getAllChildren("error"));
- for (size_t i = 0; i < nodes.size(); i++) {
- ProtocolTreeNode* errorNode = nodes[i];
- if (errorNode != NULL) {
- const string &errorCodeString = errorNode->getAttributeValue("code");
- if (!errorCodeString.empty()) {
- int errorCode = atoi(errorCodeString.c_str());
- error(node, errorCode);
- }
- }
- }
- }
-
- virtual ~IqResultHandler() {}
- };
-
- class IqResultPingHandler: public IqResultHandler {
- public:
- IqResultPingHandler(WAConnection* con):IqResultHandler(con) {}
- virtual void parse(ProtocolTreeNode*, const std::string&) throw (WAException) {
- if (this->con->m_pEventHandler != NULL)
- this->con->m_pEventHandler->onPingResponseReceived();
- }
-
- void error(ProtocolTreeNode*) throw (WAException) {
- if (this->con->m_pEventHandler != NULL)
- this->con->m_pEventHandler->onPingResponseReceived();
- }
- };
-
- class IqResultGetGroupsHandler: public IqResultHandler {
- private:
- std::string type;
- public:
- IqResultGetGroupsHandler(WAConnection* con, const std::string &type ):IqResultHandler(con) {this->type = type;}
- virtual void parse(ProtocolTreeNode* node, const std::string&) throw (WAException) {
- std::vector<std::string> groups;
- this->con->readGroupList(node, groups);
- }
- };
-
- class IqResultServerPropertiesHandler: public IqResultHandler {
- public:
- IqResultServerPropertiesHandler(WAConnection* con):IqResultHandler(con) {}
- virtual void parse(ProtocolTreeNode* node, const std::string&) throw (WAException) {
- std::vector<ProtocolTreeNode*> nodes(node->getAllChildren("prop"));
- std::map<std::string,std::string> nameValueMap;
- for (size_t i = 0; i < nodes.size();i++) {
- ProtocolTreeNode* propNode = nodes[i];
- const string &nameAttr = propNode->getAttributeValue("name");
- const string &valueAttr = propNode->getAttributeValue("value");
- nameValueMap[nameAttr] = valueAttr;
- }
-
- if (this->con->m_pGroupEventHandler != NULL)
- this->con->m_pGroupEventHandler->onServerProperties(&nameValueMap);
- }
- };
-
- class IqResultPrivayListHandler: public IqResultHandler {
- public:
- IqResultPrivayListHandler(WAConnection* con):IqResultHandler(con) {}
- virtual void parse(ProtocolTreeNode* node, const std::string&) throw (WAException) {
- ProtocolTreeNode* queryNode = node->getChild(0);
- ProtocolTreeNode::require(queryNode, "query");
- ProtocolTreeNode* listNode = queryNode->getChild(0);
- ProtocolTreeNode::require(listNode, "list");
- if (this->con->m_pEventHandler != NULL)
- this->con->m_pEventHandler->onPrivacyBlockListClear();
- if (listNode->children != NULL) {
- for (size_t i = 0; i < listNode->children->size(); i++) {
- ProtocolTreeNode* itemNode = (*listNode->children)[i];
- ProtocolTreeNode::require(itemNode, "item");
- if (itemNode->getAttributeValue("type").compare("jid") == 0) {
- const string &jid = itemNode->getAttributeValue("value");
- if (!jid.empty() && this->con->m_pEventHandler != NULL)
- this->con->m_pEventHandler->onPrivacyBlockListAdd(jid);
- }
- }
- }
- }
- };
-
- class IqResultGetGroupInfoHandler: public IqResultHandler {
- public:
- IqResultGetGroupInfoHandler(WAConnection* con):IqResultHandler(con) {}
- virtual void parse(ProtocolTreeNode* node, const std::string &from) throw (WAException) {
- ProtocolTreeNode* groupNode = node->getChild(0);
- ProtocolTreeNode::require(groupNode, "group");
- const string &owner = groupNode->getAttributeValue("owner");
- const string &subject = groupNode->getAttributeValue("subject");
- const string &subject_t = groupNode->getAttributeValue("s_t");
- const string &subject_owner = groupNode->getAttributeValue("s_o");
- const string &creation = groupNode->getAttributeValue("creation");
- if (this->con->m_pGroupEventHandler != NULL)
- this->con->m_pGroupEventHandler->onGroupInfo(from, owner, subject, subject_owner, atoi(subject_t.c_str()), atoi(creation.c_str()));
- }
- };
-
- class IqResultGetGroupParticipantsHandler: public IqResultHandler {
- public:
- IqResultGetGroupParticipantsHandler(WAConnection* con):IqResultHandler(con) {}
- virtual void parse(ProtocolTreeNode* node, const std::string &from) throw (WAException) {
- if (this->con->m_pGroupEventHandler != NULL) {
- std::vector<std::string> participants;
- this->con->readAttributeList(node, participants, "participant", "jid");
- this->con->m_pGroupEventHandler->onGetParticipants(from, participants);
- }
- }
- };
-
- class IqResultCreateGroupChatHandler: public IqResultHandler {
- std::string subject;
- public:
- IqResultCreateGroupChatHandler(WAConnection* con, const std::string &_subject) :
- IqResultHandler(con),
- subject(_subject) {}
- virtual void parse(ProtocolTreeNode* node, const std::string &from) throw (WAException) {
- ProtocolTreeNode* groupNode = node->getChild(0);
- ProtocolTreeNode::require(groupNode, "group");
- const string &groupId = groupNode->getAttributeValue("id");
- if (!groupId.empty() && con->m_pGroupEventHandler != NULL)
- this->con->m_pGroupEventHandler->onGroupCreated(groupId + "@" + from, subject);
- }
- };
-
- class IqResultGetPhotoHandler: public IqResultHandler {
- private:
- std::string jid;
- std::string oldId;
- std::string newId;
- public:
- IqResultGetPhotoHandler(WAConnection* con, const std::string &jid):IqResultHandler(con) {
- this->jid = jid;
- }
- virtual void parse(ProtocolTreeNode* node, const std::string&) throw (WAException) {
- const string &attributeValue = node->getAttributeValue("type");
-
- if (!attributeValue.empty() && attributeValue == "result" && this->con->m_pEventHandler != NULL) {
- std::vector<ProtocolTreeNode*> children(node->getAllChildren("picture"));
- for (size_t i = 0; i < children.size(); i++) {
- ProtocolTreeNode* current = children[i];
- const string &id = current->getAttributeValue("id");
- if (!id.empty() && current->data != NULL && current->data->size() > 0) {
- if (current->data != NULL)
- this->con->m_pEventHandler->onSendGetPicture(this->jid, *current->data, id);
- break;
- }
- }
- }
- }
- void error(ProtocolTreeNode*) throw (WAException) {
- if (this->con->m_pEventHandler != NULL) {
- std::vector<unsigned char> v;
- this->con->m_pEventHandler->onSendGetPicture("error", v, "");
- }
- }
- };
-
- class IqResultSetPhotoHandler: public IqResultHandler {
- private:
- std::string jid;
- public:
- IqResultSetPhotoHandler(WAConnection* con, const std::string &jid):IqResultHandler(con) {this->jid = jid;}
- virtual void parse(ProtocolTreeNode* node, const std::string&) throw (WAException) {
- if (this->con->m_pEventHandler != NULL) {
- ProtocolTreeNode* child = node->getChild("picture");
- if (child != NULL)
- this->con->m_pEventHandler->onPictureChanged(this->jid, "", true);
- else
- this->con->m_pEventHandler->onPictureChanged(this->jid, "", false);
- }
- }
- };
-
- class IqResultSendDeleteAccount: public IqResultHandler {
- public:
- IqResultSendDeleteAccount(WAConnection* con):IqResultHandler(con) {}
- virtual void parse(ProtocolTreeNode*, const std::string&) throw (WAException) {
- if (this->con->m_pEventHandler != NULL)
- this->con->m_pEventHandler->onDeleteAccount(true);
- }
-
- void error(ProtocolTreeNode*) throw (WAException) {
- if (this->con->m_pEventHandler != NULL)
- this->con->m_pEventHandler->onDeleteAccount(false);
- }
- };
-
- class IqResultClearDirtyHandler: public IqResultHandler {
- public:
- IqResultClearDirtyHandler(WAConnection* con):IqResultHandler(con) {}
- virtual void parse(ProtocolTreeNode*, const std::string&) throw (WAException) {
- }
- };
-
- class IqSendClientConfigHandler: public IqResultHandler {
- public:
- IqSendClientConfigHandler(WAConnection* con):IqResultHandler(con) {}
- virtual void parse(ProtocolTreeNode* node, const std::string&) throw (WAException) {
- con->logData("Clientconfig response %s", node->toString().c_str());
- }
-
- void error(ProtocolTreeNode* node) throw (WAException) {
- con->logData("Clientconfig response error %s", node->toString().c_str());
- }
- };
-
- class MediaUploadResponseHandler : public IqResultHandler {
- private:
- FMessage message;
- public:
- MediaUploadResponseHandler(WAConnection* con, const FMessage &message) :IqResultHandler(con) { this->message = message; }
- virtual void parse(ProtocolTreeNode* node, const std::string&) throw (WAException) {
- this->con->processUploadResponse(node, &message);
- }
- void error(ProtocolTreeNode* node) throw (WAException) {
- con->logData("Error on Media Upload Request: %s", node->toString().c_str());
- }
- };
-
- friend class WALogin;
-
-private:
- ISocketConnection *rawConn;
- BinTreeNodeReader in;
- BinTreeNodeWriter out;
- WAListener *m_pEventHandler;
- WAGroupListener *m_pGroupEventHandler;
- int iqid;
- std::map<string, IqResultHandler*> pending_server_requests;
- IMutex *m_pMutex;
-
- void parseAck(ProtocolTreeNode *node) throw (WAException);
- void parseChatStates(ProtocolTreeNode *node) throw (WAException);
- void parseIq(ProtocolTreeNode *node) throw(WAException);
- void parseMessage(ProtocolTreeNode* node) throw(WAException);
- void parseNotification(ProtocolTreeNode *node) throw(WAException);
- void parsePresense(ProtocolTreeNode*) throw(WAException);
- void parseReceipt(ProtocolTreeNode *node) throw (WAException);
- std::map<string, string> parseCategories(ProtocolTreeNode* node) throw(WAException);
-
- void processUploadResponse(ProtocolTreeNode *node, FMessage *message);
-
- void sendMessageWithMedia(FMessage* message) throw(WAException);
- void sendMessageWithBody(FMessage* message) throw(WAException);
- ProtocolTreeNode* getReceiptAck(const std::string &to, const std::string &id, const std::string &receiptType) throw(WAException);
- std::string makeId(const std::string &prefix);
- void readGroupList(ProtocolTreeNode* node, std::vector<std::string>& groups) throw (WAException);
- std::string gidToGjid(const std::string &gid);
- void readAttributeList(ProtocolTreeNode* node, std::vector<std::string> &vector, const std::string &tag, const std::string &attribute) throw (WAException);
- void sendVerbParticipants(const std::string &gjid, const std::vector<std::string> &participants, const std::string &inner_tag) throw (WAException);
- bool supportsReceiptAcks();
- static ProtocolTreeNode* getMessageNode(FMessage* message, ProtocolTreeNode* node);
- std::vector<ProtocolTreeNode*>* processGroupSettings(const std::vector<GroupSetting>& gruops);
-
-public:
- WAConnection(const std::string &user, const std::string &resource, IMutex* mutex, IMutex *write_mutex, ISocketConnection *conn, WAListener* m_pEventHandler, WAGroupListener* m_pGroupEventHandler);
- virtual ~WAConnection();
-
- std::string user;
- std::string domain;
- std::string resource;
- std::string jid;
- std::string nick;
-
- KeyStream inputKey, outputKey;
-
- bool retry;
- bool supports_receipt_acks;
- time_t expire_date;
- int account_kind;
- time_t lastTreeRead;
-
- static void globalInit(void);
- static int tokenLookup(const std::string&);
-
- void logData(const char *format, ...);
- void flush() { out.flushBuffer(true); }
-
- static std::string removeResourceFromJid(const std::string &jid);
-
- void setFlush(bool _flush) { if (out.bFlush = _flush) out.flushBuffer(true); }
-
- void setLogin(WALogin *login);
- void sendMessage(FMessage* message) throw(WAException);
- void sendAvailableForChat() throw(WAException);
-
- bool read() throw(WAException);
-
- void sendAck(ProtocolTreeNode * node, const char *classType);
- void sendPing() throw(WAException);
- void sendPong(const std::string &id) throw(WAException);
- void sendComposing(const std::string &to) throw(WAException);
- void sendActive() throw(WAException);
- void sendInactive() throw(WAException);
- void sendPaused(const std::string &to) throw(WAException);
- void sendMessageReceived(const FMessage &message) throw(WAException);
- void sendPresenceSubscriptionRequest(const std::string &to) throw (WAException);
- void sendClientConfig(const std::string &sound, const std::string &pushID, bool preview, const std::string &platform) throw(WAException);
- void sendClientConfig(const std::string &pushID, bool preview, const std::string &platform, bool defaultSettings, bool groupSettings, const std::vector<GroupSetting>& groups) throw(WAException);
- void sendClose() throw (WAException);
- void sendAvailable() throw (WAException); // U.H.
- void sendGetPrivacyList() throw (WAException);
- void sendGetServerProperties() throw (WAException);
- void sendGetGroups() throw (WAException);
- void sendCreateGroupChat(const std::string &subject) throw (WAException);
- void sendGetGroupInfo(const std::string &gjid) throw (WAException);
- void sendGetParticipants(const std::string &gjid) throw (WAException);
- void sendClearDirty(const std::string &category) throw (WAException);
- void sendJoinLeaveGroup(const char *gjid, bool bJoin) throw (WAException);
- void sendAddParticipants(const std::string &gjid, const std::vector<std::string> &participants) throw (WAException);
- void sendRemoveParticipants(const std::string &gjid, const std::vector<std::string> &participant) throw (WAException);
- void sendSetNewSubject(const std::string &gjid, const std::string &subject) throw (WAException);
- void sendStatusUpdate(std::string& status) throw (WAException);
- void sendGetPicture(const char *jid, const char *type) throw (WAException);
- void sendSetPicture(const char *jid, std::vector<unsigned char>* data, std::vector<unsigned char>* preview) throw (WAException);
- void sendDeleteAccount() throw(WAException);
-};
-
-#endif /* WACONNECTION_H_ */
diff --git a/protocols/WhatsApp/src/WhatsAPI++/WAException.h b/protocols/WhatsApp/src/WhatsAPI++/WAException.h
deleted file mode 100644
index 4255850ffc..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/WAException.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * WAException.h
- *
- * Created on: 27/06/2012
- * Author: Antonio
- */
-
-
-
-#ifndef WAEXCEPTION_H_
-#define WAEXCEPTION_H_
-
-#include <stdexcept>
-#include <string>
-
-class WAException: public std::runtime_error {
-public:
- int type;
- int subtype;
- time_t expire_date; // in seconds
-
- static const int LOGIN_FAILURE_EX = 1;
- static const int LOGIN_FAILURE_EX_TYPE_PASSWORD = 0;
- static const int LOGIN_FAILURE_EX_TYPE_EXPIRED = 1;
-
- static const int CORRUPT_STREAM_EX = 2;
-
- static const int SOCKET_EX = 3;
- static const int SOCKET_EX_RESOLVE_HOST = 0;
- static const int SOCKET_EX_OPEN = 1;
- static const int SOCKET_EX_INIT = 2;
- static const int SOCKET_EX_SEND = 3;
- static const int SOCKET_EX_RECV = 4;
-
- WAException(const std::string &err): runtime_error(err) {this->type = 0; this->subtype = 0; this->expire_date = 0;};
- WAException(const std::string &err, int type, int subtype): runtime_error(err), type(type), subtype(subtype), expire_date(0) {};
- WAException(const std::string &err, int type, int subtype, time_t expireDate): runtime_error(err), type(type), subtype(subtype), expire_date(expireDate) {};
-};
-
-#endif /* WAEXCEPTION_H_ */
diff --git a/protocols/WhatsApp/src/WhatsAPI++/WALogin.cpp b/protocols/WhatsApp/src/WhatsAPI++/WALogin.cpp
deleted file mode 100644
index 12f7c7a863..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/WALogin.cpp
+++ /dev/null
@@ -1,182 +0,0 @@
-/*
- * WALogin.cpp
- *
- * Created on: 26/06/2012
- * Author: Antonio
- */
-
-#include "WALogin.h"
-#include "ByteArray.h"
-#include "ProtocolTreeNode.h"
-#include <iostream>
-#include <vector>
-#include <map>
-#include <stdlib.h>
-
-#include "../stdafx.h" // #TODO Remove Miranda-dependency
-
-using namespace Utilities;
-
-WALogin::WALogin(WAConnection* connection, const std::string &password)
-{
- m_pConnection = connection;
- m_szPassword = password;
- m_iAccountKind = -1;
- m_tExpireDate = 0L;
-}
-
-std::vector<unsigned char> WALogin::login(const std::vector<unsigned char>& authBlob)
-{
- m_pConnection->out.streamStart(m_pConnection->domain, m_pConnection->resource);
-
- m_pConnection->logData("sent stream start");
-
- sendFeatures();
-
- m_pConnection->logData("sent features");
-
- sendAuth(authBlob);
-
- m_pConnection->logData("send auth, auth blob size %d", authBlob.size());
-
- m_pConnection->in.streamStart();
-
- m_pConnection->logData("read stream start");
-
- return this->readFeaturesUntilChallengeOrSuccess();
-}
-
-void WALogin::sendResponse(const std::vector<unsigned char>& challengeData)
-{
- std::vector<unsigned char>* authBlob = this->getAuthBlob(challengeData);
- m_pConnection->out.write(ProtocolTreeNode("response", authBlob));
-}
-
-void WALogin::sendFeatures()
-{
- std::vector<ProtocolTreeNode*>* children = new std::vector<ProtocolTreeNode*>();
- ProtocolTreeNode* receiptsChild = new ProtocolTreeNode("readreceipts");
- children->push_back(receiptsChild);
-
- ProtocolTreeNode* groupsChild = new ProtocolTreeNode("groups_v2");
- children->push_back(groupsChild);
-
- ProtocolTreeNode* privacyChild = new ProtocolTreeNode("privacy");
- children->push_back(privacyChild);
-
- ProtocolTreeNode* presenceChild = new ProtocolTreeNode("presence");
- children->push_back(presenceChild);
-
- m_pConnection->out.write(ProtocolTreeNode("stream:features", NULL, children));
-}
-
-void WALogin::sendAuth(const std::vector<unsigned char>& existingChallenge)
-{
- std::vector<unsigned char>* data = NULL;
- if (!existingChallenge.empty())
- data = getAuthBlob(existingChallenge);
-
- ProtocolTreeNode n("auth", data);
- m_pConnection->out.write(n << XATTR("mechanism", "WAUTH-2") << XATTR("user", m_pConnection->user));
-}
-
-std::vector<unsigned char>* WALogin::getAuthBlob(const std::vector<unsigned char>& nonce)
-{
- unsigned char out[4*20];
- KeyStream::keyFromPasswordAndNonce(m_szPassword, nonce, out);
-
- m_pConnection->inputKey.init(out + 40, out + 60);
- m_pConnection->outputKey.init(out, out + 20);
-
- std::vector<unsigned char>* list = new std::vector<unsigned char>(0);
- for (int i = 0; i < 4; i++)
- list->push_back(0);
-
- list->insert(list->end(), m_pConnection->user.begin(), m_pConnection->user.end());
- list->insert(list->end(), nonce.begin(), nonce.end());
-
- m_pConnection->outputKey.encodeMessage(&((*list)[0]), 0, 4, (int)list->size() - 4);
- return list;
-}
-
-std::vector<unsigned char> WALogin::readFeaturesUntilChallengeOrSuccess()
-{
- while (ProtocolTreeNode *root = m_pConnection->in.nextTree()) {
- if (ProtocolTreeNode::tagEquals(root, "challenge")) {
- std::vector<unsigned char> challengedata(root->data->begin(), root->data->end());
- delete root;
-
- this->sendResponse(challengedata);
- m_pConnection->logData("Send response");
- std::vector<unsigned char> data = this->readSuccess();
- m_pConnection->logData("Read success");
- return std::vector<unsigned char>(data.begin(), data.end());
- }
-
- if (ProtocolTreeNode::tagEquals(root, "success")) {
- std::vector<unsigned char> ret(root->data->begin(), root->data->end());
- this->parseSuccessNode(root);
- delete root;
- return ret;
- }
-
- if (ProtocolTreeNode::tagEquals(root, "stream:features"))
- m_pConnection->supports_receipt_acks = root->getChild("receipt_acks") != NULL;
-
- delete root;
- }
- throw WAException("fell out of loop in readFeaturesAndChallenge", WAException::CORRUPT_STREAM_EX, 0);
-}
-
-void WALogin::parseSuccessNode(ProtocolTreeNode* node)
-{
- m_pConnection->out.setSecure();
-
- const string &expiration = node->getAttributeValue("expiration");
- if (!expiration.empty()) {
- m_tExpireDate = atol(expiration.c_str());
- if (m_tExpireDate == 0)
- throw WAException("invalid expire date: " + expiration);
- }
-
- const string &kind = node->getAttributeValue("kind");
- if (kind == "paid")
- m_iAccountKind = 1;
- else if (kind == "free")
- m_iAccountKind = 0;
- else
- m_iAccountKind = -1;
-}
-
-std::vector<unsigned char> WALogin::readSuccess()
-{
- ProtocolTreeNode *node = m_pConnection->in.nextTree();
-
- if (ProtocolTreeNode::tagEquals(node, "failure")) {
- delete node;
- throw WAException("Login failure", WAException::LOGIN_FAILURE_EX, WAException::LOGIN_FAILURE_EX_TYPE_PASSWORD);
- }
-
- ProtocolTreeNode::require(node, "success");
- this->parseSuccessNode(node);
-
- const string &status = node->getAttributeValue("status");
- if (status == "expired") {
- delete node;
- throw WAException("Account expired on" + std::string(ctime(&m_tExpireDate)), WAException::LOGIN_FAILURE_EX, WAException::LOGIN_FAILURE_EX_TYPE_EXPIRED, m_tExpireDate);
- }
- if (status == "active") {
- if (node->getAttributeValue("expiration").empty()) {
- delete node;
- throw WAException("active account with no expiration");
- }
- }
- else m_iAccountKind = -1;
-
- std::vector<unsigned char> data = *node->data;
- delete node;
- return data;
-}
-
-WALogin::~WALogin()
-{}
diff --git a/protocols/WhatsApp/src/WhatsAPI++/WALogin.h b/protocols/WhatsApp/src/WhatsAPI++/WALogin.h
deleted file mode 100644
index 0d4d30af5b..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/WALogin.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * WALogin.h
- *
- * Created on: 26/06/2012
- * Author: Antonio
- */
-
-#ifndef WALOGIN_H_
-#define WALOGIN_H_
-
-#include "BinTreeNodeReader.h"
-#include "BinTreeNodeWriter.h"
-#include "WAConnection.h"
-#include <string>
-
-#include "../OpenSSL/rc4.h"
-#include "../OpenSSL/hmac.h"
-
-class WAConnection;
-class BinTreeNodeReader;
-class BinTreeNodeWriter;
-
-class KeyStream {
-private:
- RC4_KEY rc4;
- unsigned char key[20], keyMac[20];
- int seq;
- HMAC_CTX hmac;
-
- void hmacsha1(unsigned char* text, int textLength, unsigned char *out);
-
-public:
- KeyStream();
- ~KeyStream();
-
- void init(unsigned char *_key, unsigned char *_keyMac);
-
- static void keyFromPasswordAndNonce(const std::string &pass, const std::vector<unsigned char>& nonce, unsigned char *out);
- void decodeMessage(unsigned char* buffer, int macOffset, int offset, const int length);
- void encodeMessage(unsigned char* buffer, int macOffset, int offset, const int length);
-};
-
-
-class WALogin {
-private:
- WAConnection *m_pConnection;
-
- std::vector<unsigned char>* getAuthBlob(const std::vector<unsigned char>& nonce);
- void sendResponse(const std::vector<unsigned char>& challengeData);
- void sendFeatures();
- void sendAuth(const std::vector<unsigned char>& nonce);
- std::vector<unsigned char> readFeaturesUntilChallengeOrSuccess();
- void parseSuccessNode(ProtocolTreeNode *node);
- std::vector<unsigned char> readSuccess();
-
-public:
- time_t m_tExpireDate;
- int m_iAccountKind;
- std::string m_szPassword;
-
- WALogin(WAConnection* connection, const std::string &password);
- ~WALogin();
-
- std::vector<unsigned char> login(const std::vector<unsigned char> &blob);
-};
-
-#endif /* WALOGIN_H_ */
diff --git a/protocols/WhatsApp/src/WhatsAPI++/WARegister.cpp b/protocols/WhatsApp/src/WhatsAPI++/WARegister.cpp
deleted file mode 100644
index f7371c7fc8..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/WARegister.cpp
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * WARegister.cpp
- *
- */
-
-#include "../stdafx.h" // #TODO Remove Miranda-dependency
-
-#include "WARegister.h"
-#include "PhoneNumber.h"
-
-using namespace Utilities;
-
-static char WaToken[] = WHATSAPP_TOKEN;
-
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// Token generation
-//
-std::string WAToken::GenerateToken(const string &number)
-{
- uint8_t digest[16];
- md5_string(WaToken + number, digest);
-
- char dest[33];
- bin2hex(digest, sizeof(digest), dest);
- return dest;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// Account registration
-//
-CMStringA WARegister::RequestCodeUrl(const std::string &phoneNumber, const std::string &code)
-{
- try {
- std::string id = GenerateIdentity(phoneNumber);
-
- PhoneNumber pn(phoneNumber);
- std::string token = WAToken::GenerateToken(pn.Number);
-
- const char *n = pn.Number.c_str();
-
- if (!code.empty() && code != "voice" && code != "sms")
- return CMStringA(FORMAT, "https://v.whatsapp.net/v2/register?cc=%d&in=%s&id=%s&code=%s", pn.countryCode, n, id.c_str(), code.c_str());
-
- return CMStringA(FORMAT, "https://v.whatsapp.net/v2/code?cc=%d&in=%s&to=%d%s&method=%s&mcc=%03d&mnc=%03d&token=%s&id=%s&lg=%s&lc=%s",
- pn.countryCode, n, pn.countryCode, n, code.c_str(), pn.mcc, pn.mnc, token.c_str(), id.c_str(), pn.ISO639, pn.ISO3166);
- }
- catch (...)
- {}
-
- return CMStringA();
-}
-
-
-std::string WARegister::GenerateIdentity(const std::string &phone)
-{
- std::string id = phone;
- std::reverse(id.begin(), id.end());
-
- BYTE hash[MIR_SHA1_HASH_SIZE];
- mir_sha1_hash((PBYTE)id.c_str(), (int)id.length(), hash);
-
- id.clear();
- for (int i = 0; i < sizeof(hash); i++) {
- char buf[10];
- sprintf_s(buf, "%%%02x", hash[i]);
- id += buf;
- }
-
- return id;
-}
diff --git a/protocols/WhatsApp/src/WhatsAPI++/WARegister.h b/protocols/WhatsApp/src/WhatsAPI++/WARegister.h
deleted file mode 100644
index f2fe0e230b..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/WARegister.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * WARegister.h
- */
-
-#ifndef WAREGISTER_H_
-#define WAREGISTER_H_
-
-#include <string>
-
-struct WAToken
-{
- static std::string GenerateToken(const std::string &number);
-};
-
-class WARegister
-{
- static std::string GenerateIdentity(const std::string &phone);
-
-public:
- static CMStringA RequestCodeUrl(const std::string &phone, const std::string &code);
-};
-
-#endif /* WAREGISTER_H_ */
diff --git a/protocols/WhatsApp/src/WhatsAPI++/targetver.h b/protocols/WhatsApp/src/WhatsAPI++/targetver.h
deleted file mode 100644
index 343ce14c2f..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/targetver.h
+++ /dev/null
@@ -1,8 +0,0 @@
-#pragma once
-
-// Durch Einbeziehen von"SDKDDKVer.h" wird die hцchste verfьgbare Windows-Plattform definiert.
-
-// Wenn Sie die Anwendung fьr eine frьhere Windows-Plattform erstellen mцchten, schlieЯen Sie "WinSDKVer.h" ein, und
-// legen Sie das _WIN32_WINNT-Makro auf die zu unterstьtzende Plattform fest, bevor Sie "SDKDDKVer.h" einschlieЯen.
-
-#include <SDKDDKVer.h>
diff --git a/protocols/WhatsApp/src/WhatsAPI++/utilities.cpp b/protocols/WhatsApp/src/WhatsAPI++/utilities.cpp
deleted file mode 100644
index 9c56a0c7dd..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/utilities.cpp
+++ /dev/null
@@ -1,386 +0,0 @@
-#include "../stdafx.h" // #TODO Remove Miranda-dependency
-
-#include "utilities.h"
-#include "WAException.h"
-
-namespace Utilities {
-
-const static char digits[] = {
- '0', '1', '2', '3', '4', '5',
- '6', '7', '8', '9', 'a', 'b',
- 'c', 'd', 'e', 'f', 'g', 'h',
- 'i', 'j', 'k', 'l', 'm', 'n',
- 'o', 'p', 'q', 'r', 's', 't',
- 'u', 'v', 'w', 'x', 'y', 'z'
-};
-
-std::string reverseString(const std::string &str)
-{
- return std::string(str.rbegin(), str.rend());
-}
-
-std::string itoa(int value, unsigned int base)
-{
- const char digitMap[] = "0123456789abcdef";
-
- std::string buf;
- // Guard:
- if (base == 0 || base > 16) {
-
- // Error: may add more trace/log output here
- return buf;
- }
- // Take care of negative int:
- std::string sign;
- int _value = value;
- // Check for case when input is zero:
- if (_value == 0) return "0";
- if (value < 0) {
- _value = -value;
- sign = "-";
- }
-
- // Translating number to string with base:
-
- for (int i = 30; _value && i; --i) {
- buf = digitMap[_value % base] + buf;
- _value /= base;
- }
-
- return sign.append(buf);
-}
-
-
-std::string processIdentity(const std::string &id)
-{
- std::string buffer_str = reverseString(id);
-
- unsigned char digest[16];
- md5_string(buffer_str, digest);
- buffer_str.clear();
-
- for (int i = 0; i < 16; i++) {
- int tmp = digest[i] + 128;
- int f = tmp & 0xff;
-
- buffer_str = buffer_str.append(itoa(f, 16));
- }
-
- return buffer_str;
-}
-
-void debug(const std::string &msg)
-{
-#ifdef _LOGWIN32
- cout << "DEBUG: " << msg << endl;
-#else
- syslog(LOG_ERR, msg.c_str());
-#endif
-}
-
-std::string str(int64_t i, int radix)
-{
- if (radix < 2 || radix > 36)
- throw WAException("radix must be in 2..36");
- char buf[65];
- int charPos = 64;
- bool negative = (i < 0);
-
- if (!negative) {
- i = -i;
- }
-
- while (i <= -radix) {
- buf[charPos--] = digits[(int)(-(i % radix))];
- i = i / radix;
- }
- buf[charPos] = digits[(int)(-i)];
-
- if (negative) {
- buf[--charPos] = '-';
- }
-
- std::string aux(buf, 65);
-
- return std::string(aux, charPos, (65 - charPos));
-}
-
-int64_t randLong()
-{
- std::srand((unsigned)time(NULL));
- int64_t r = (int64_t)((char)(std::rand() % 256));
-
- for (int i = 0; i < 7; i++)
- r = (r << 8) + ((char)(std::rand() % 256));
-
- return r;
-}
-
-int64_t absLong(int64_t num)
-{
- return (num >= 0 ? num : -num);
-}
-
-
-std::string intToStr(int i)
-{
- std::stringstream convert;
- convert << i;
- return convert.str();
-}
-
-std::string doubleToStr(double d)
-{
- std::stringstream convert;
- convert << d;
- return convert.str();
-}
-
-time_t parseBBDate(const string& s)
-{
- if (s.length() < 17)
- return time(NULL);
-
- struct tm timeinfo;
- timeinfo.tm_year = atoi(s.substr(0, 4).c_str()) - 1900;
- timeinfo.tm_mon = atoi(s.substr(4, 2).c_str()) - 1;
- timeinfo.tm_mday = atoi(s.substr(6, 2).c_str());
- timeinfo.tm_hour = atoi(s.substr(9, 2).c_str());
- timeinfo.tm_min = atoi(s.substr(12, 2).c_str());
- timeinfo.tm_sec = atoi(s.substr(15, 2).c_str());
-
- //return timegm(&timeinfo);
- return mktime(&timeinfo);
-}
-
-long long parseLongLong(const std::string &str)
-{
- std::stringstream sstr(str);
- long long val;
- sstr >> val;
-
- return val;
-}
-
-string bytesToHex(unsigned char* bytes, int length)
-{
- string ret(length * 2, ' ');
- string::iterator p = ret.begin();
- for (int c = 0; c < length; c++) {
- int ub = bytes[c];
- *p++ = forDigit(ub >> 4);
- *p++ = forDigit(ub % 16);
- }
-
- return ret;
-}
-
-unsigned char forDigit(int b)
-{
- if (b < 10)
- return (unsigned char)(48 + b);
- return (unsigned char)(97 + b - 10);
-}
-
-bool saveStringToFile(const string& data, const string& filePath)
-{
- std::ofstream out(filePath.c_str());
- if (out.fail()) return false;
- out << data;
- if (out.fail()) return false;
- out.close();
- if (out.fail()) return false;
- return true;
-}
-
-bool saveBytesToFile(const std::vector<unsigned char>& data, const string& filePath)
-{
- std::fstream out(filePath.c_str(), ios::out | ios::binary);
- if (out.fail()) return false;
- out.write((const char*)&data[0], data.size());
- if (out.fail()) return false;
- out.close();
- if (out.fail()) return false;
- return true;
-}
-
-
-bool saveBytesToFile(const string& data, const string& filePath)
-{
- std::fstream out(filePath.c_str(), ios::out | ios::binary);
- if (out.fail()) return false;
- out.write(data.c_str(), data.length());
- if (out.fail()) return false;
- out.close();
- if (out.fail()) return false;
- return true;
-}
-
-vector<unsigned char>* loadFileToBytes(const string& path)
-{
- vector<unsigned char>* bytes = NULL;
- std::ifstream in(path.c_str(), ios::in | ios::binary | ios::ate);
- size_t size = in.tellg();
- if (in.fail()) return NULL;
-
- in.seekg(0, ios::beg);
- char *buffer = new char[size];
- in.read(buffer, size);
- bytes = new vector<unsigned char>(buffer, buffer + size);
- delete[] buffer;
- in.close();
- if (in.fail()) return NULL;
-
- return bytes;
-}
-
-bool fileExists(const std::string &path)
-{
- return _access(path.c_str(), 0) == 0;
-}
-
-
-string removeWaDomainFromJid(const string& jid)
-{
- string result = jid;
-
- size_t index = jid.find("@s.whatsapp.net");
- if (index != string::npos) {
- result.replace(index, 15, "");
- return result;
- }
-
- index = jid.find("@g.us");
- if (index != string::npos) {
- result.replace(index, 5, "");
- return result;
- }
-
- return jid;
-}
-
-string getNameFromPath(const std::string &path)
-{
- size_t i = path.rfind('/');
- if (i == string::npos)
- i = 0;
- else
- i = i + 1;
- return path.substr(i);
-}
-
-vector<unsigned char>* getChallengeData(const std::string &challengeFile)
-{
- return loadFileToBytes(challengeFile);
-}
-
-bool saveChallengeData(const std::vector<unsigned char>& data, const std::string &challengeFile)
-{
- return saveBytesToFile(data, challengeFile);
-}
-
-std::string utf8_to_utf16(const std::string &utf8)
-{
- std::vector<unsigned long> unicode;
- for (size_t i = 0; i < utf8.size();) {
- unsigned long uni;
- size_t todo;
- unsigned char ch = utf8[i++];
- if (ch <= 0x7F) {
- uni = ch;
- todo = 0;
- }
- else if (ch <= 0xBF) {
- throw std::logic_error("not a UTF-8 string");
- }
- else if (ch <= 0xDF) {
- uni = ch & 0x1F;
- todo = 1;
- }
- else if (ch <= 0xEF) {
- uni = ch & 0x0F;
- todo = 2;
- }
- else if (ch <= 0xF7) {
- uni = ch & 0x07;
- todo = 3;
- }
- else {
- throw std::logic_error("not a UTF-8 string");
- }
- for (size_t j = 0; j < todo; ++j) {
- if (i == utf8.size())
- throw std::logic_error("not a UTF-8 string");
- ch = utf8[i++];
- if (ch < 0x80 || ch > 0xBF)
- throw std::logic_error("not a UTF-8 string");
- uni <<= 6;
- uni += ch & 0x3F;
- }
- if (uni >= 0xD800 && uni <= 0xDFFF)
- throw std::logic_error("not a UTF-8 string");
- if (uni > 0x10FFFF)
- throw std::logic_error("not a UTF-8 string");
- unicode.push_back(uni);
- }
- std::string utf16;
- for (size_t i = 0; i < unicode.size(); ++i) {
- unsigned long uni = unicode[i];
- if (uni <= 0x7F) {
- utf16 += (char)uni;
- }
- else
- if (uni <= 0xFFFF) {
- stringstream value;
- value << std::setw(4) << std::setfill('0') << Utilities::itoa(uni, 16).c_str();
- utf16 += "\\u" + value.str();
- }
- else {
- stringstream value1, value2;
- uni -= 0x10000;
- value1 << std::setw(4) << std::setfill('0') << Utilities::itoa(((uni >> 10) + 0xD800), 16);
- utf16 += "\\u" + value1.str();
-
- value2 << std::setw(4) << std::setfill('0') << Utilities::itoa(((uni & 0x3FF) + 0xDC00), 16);
- utf16 += "\\u" + value2.str();
- }
- }
- return utf16;
-}
-
-std::string string_format(const char* fmt, va_list ap)
-{
- int size = 100;
- std::string str;
- while (true) {
- str.resize(size);
- //va_start(ap, fmt);
- int n = vsnprintf((char *)str.c_str(), size, fmt, ap);
- //va_end(ap);
- if (n > -1 && n < size) {
- str.resize(n);
- return str;
- }
- if (n > -1)
- size = n + 1;
- else
- size *= 2;
- }
- return str;
-}
-
-std::string string_format(const std::string fmt, va_list ap)
-{
- return string_format(fmt.c_str(), ap);
-}
-
-std::string string_format(const std::string fmt, ...)
-{
- va_list ap;
- va_start(ap, fmt);
- std::string ret = string_format(fmt, ap);
- va_end(ap);
- return ret;
-}
-
-}
diff --git a/protocols/WhatsApp/src/WhatsAPI++/utilities.h b/protocols/WhatsApp/src/WhatsAPI++/utilities.h
deleted file mode 100644
index 5f5dd5713a..0000000000
--- a/protocols/WhatsApp/src/WhatsAPI++/utilities.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/***************************************************************************
-**
-** Copyright (c) 2012, Tarek Galal <tarek@wazapp.im>
-**
-** This file is part of Wazapp, an IM application for Meego Harmattan
-** platform that allows communication with Whatsapp users.
-**
-** Wazapp is free software: you can redistribute it and/or modify it under
-** the terms of the GNU General Public License as published by the
-** Free Software Foundation, either version 2 of the License, or
-** (at your option) any later version.
-**
-** Wazapp is distributed in the hope that it will be useful,
-** but WITHOUT ANY WARRANTY; without even the implied warranty of
-** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-** See the GNU General Public License for more details.
-**
-** You should have received a copy of the GNU General Public License
-** along with Wazapp. If not, see http://www.gnu.org/licenses/.
-**
-****************************************************************************/
-
-#ifndef WA_UTILITIES
-#define WA_UTILITIES
-
-#include <stdio.h>
-#include <stdint.h>
-#include <string>
-#include <time.h>
-#include <vector>
-
-#define _LOGWIN32 // #TODO
-#ifndef _LOGWIN32
-#include <syslog.h>
-#endif
-
-using namespace std;
-
-// these functions must be declared somewhere in the same linking module
-std::string base64_encode(void*, size_t);
-void md5_string(const std::string &data, unsigned char digest[16]);
-
-namespace Utilities{
- string getMcc();
- string getMnc();
- string reverseString(const string& str);
- string processIdentity(const std::string &password);
- int64_t randLong();
- int64_t absLong(int64_t num);
- string str(int64_t number, int radix);
- std::string itoa(int value, unsigned int base);
- std::string intToStr(int i);
- std::string doubleToStr(double d);
- long long parseLongLong(const std::string &str);
- time_t parseBBDate(const string& s);
- long long getCurrentTimeMillis();
- std::string bytesToHex(unsigned char* bytes, int length);
- unsigned char forDigit(int b);
- bool saveStringToFile(const string& data, const string& filePath);
- bool saveBytesToFile(const string& data, const string& filePath);
- bool saveBytesToFile(const std::vector<unsigned char>& data, const string& filePath);
- string removeWaDomainFromJid(const string& jid);
- string getNameFromPath(const std::string &path);
- vector<unsigned char>* loadFileToBytes(const string& path);
- bool fileExists(const std::string &path);
- std::vector<unsigned char>* getChallengeData(const std::string &file);
- bool saveChallengeData(const std::vector<unsigned char>& data, const std::string &file);
- std::string utf8_to_utf16(const std::string &utf8);
-}
-#endif
diff --git a/protocols/WhatsApp/src/avatars.cpp b/protocols/WhatsApp/src/avatars.cpp
deleted file mode 100644
index 4a7bf6e310..0000000000
--- a/protocols/WhatsApp/src/avatars.cpp
+++ /dev/null
@@ -1,134 +0,0 @@
-#include "stdafx.h"
-
-INT_PTR WhatsAppProto::GetAvatarInfo(WPARAM wParam, LPARAM lParam)
-{
- PROTO_AVATAR_INFORMATION *pai = (PROTO_AVATAR_INFORMATION*)lParam;
-
- ptrA id(getStringA(pai->hContact, isChatRoom(pai->hContact) ? "ChatRoomID" : WHATSAPP_KEY_ID));
- if (id == NULL)
- return GAIR_NOAVATAR;
-
- std::wstring tszFileName = GetAvatarFileName(pai->hContact);
- wcsncpy_s(pai->filename, tszFileName.c_str(), _TRUNCATE);
- pai->format = PA_FORMAT_JPEG;
-
- ptrA szAvatarId(getStringA(pai->hContact, WHATSAPP_KEY_AVATAR_ID));
- if (szAvatarId == NULL || (wParam & GAIF_FORCE) != 0)
- if (pai->hContact != NULL && m_pConnection != nullptr) {
- m_pConnection->sendGetPicture(id, "image");
- return GAIR_WAITFOR;
- }
-
- debugLogA("No avatar");
- return GAIR_NOAVATAR;
-}
-
-INT_PTR WhatsAppProto::GetAvatarCaps(WPARAM wParam, LPARAM lParam)
-{
- switch (wParam) {
- case AF_PROPORTION:
- return PIP_SQUARE;
-
- case AF_FORMATSUPPORTED: // Jabber supports avatars of virtually all formats
- return PA_FORMAT_JPEG;
-
- case AF_ENABLED:
- return TRUE;
-
- case AF_MAXSIZE:
- POINT *size = (POINT*)lParam;
- if (size)
- size->x = size->y = 640;
- return 0;
- }
- return -1;
-}
-
-std::wstring WhatsAppProto::GetAvatarFileName(MCONTACT hContact)
-{
- std::wstring result = m_tszAvatarFolder + L"\\";
-
- std::string jid;
- if (hContact != NULL) {
- ptrA szId(getStringA(hContact, isChatRoom(hContact) ? "ChatRoomID" : WHATSAPP_KEY_ID));
- if (szId == NULL)
- return L"";
-
- jid = szId;
- }
- else jid = m_szJid;
-
- return result + std::wstring(_A2T(jid.c_str())) + L".jpg";
-}
-
-INT_PTR WhatsAppProto::GetMyAvatar(WPARAM wParam, LPARAM lParam)
-{
- std::wstring tszOwnAvatar(m_tszAvatarFolder + L"\\myavatar.jpg");
- wcsncpy_s((wchar_t*)wParam, lParam, tszOwnAvatar.c_str(), _TRUNCATE);
- return 0;
-}
-
-static std::vector<unsigned char>* sttFileToMem(const wchar_t *ptszFileName)
-{
- HANDLE hFile = CreateFile(ptszFileName, GENERIC_READ, FILE_SHARE_READ, nullptr, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, nullptr);
- if (hFile == INVALID_HANDLE_VALUE)
- return nullptr;
-
- DWORD upperSize, lowerSize = GetFileSize(hFile, &upperSize);
- std::vector<unsigned char> *result = new std::vector<unsigned char>(lowerSize);
- ReadFile(hFile, (void*)result->data(), lowerSize, &upperSize, nullptr);
- CloseHandle(hFile);
- return result;
-}
-
-int WhatsAppProto::InternalSetAvatar(MCONTACT hContact, const char *szJid, const wchar_t *ptszFileName)
-{
- if (!isOnline() || ptszFileName == nullptr)
- return 1;
-
- if (_waccess(ptszFileName, 4) != 0)
- return errno;
-
- ResizeBitmap resize = { 0 };
- if ((resize.hBmp = Bitmap_Load(ptszFileName)) == nullptr)
- return 2;
- resize.size = sizeof(resize);
- resize.fit = RESIZEBITMAP_KEEP_PROPORTIONS;
- resize.max_height = resize.max_width = 96;
-
- HBITMAP hbmpPreview = (HBITMAP)CallService(MS_IMG_RESIZE, (LPARAM)&resize, 0);
- if (hbmpPreview == nullptr)
- return 3;
-
- wchar_t tszTempFile[MAX_PATH], tszMyFile[MAX_PATH];
- if (hContact == NULL) {
- mir_snwprintf(tszMyFile, L"%s\\myavatar.jpg", m_tszAvatarFolder.c_str());
- mir_snwprintf(tszTempFile, L"%s\\myavatar.preview.jpg", m_tszAvatarFolder.c_str());
- }
- else {
- std::wstring tszContactAva = GetAvatarFileName(hContact);
- wcsncpy_s(tszMyFile, tszContactAva.c_str(), _TRUNCATE);
- wcsncpy_s(tszTempFile, (tszContactAva + L".preview").c_str(), _TRUNCATE);
- }
-
- IMGSRVC_INFO saveInfo = { sizeof(saveInfo), nullptr };
- saveInfo.hbm = hbmpPreview;
- saveInfo.tszName = tszTempFile;
- saveInfo.dwMask = IMGI_HBITMAP;
- saveInfo.fif = FIF_JPEG;
- CallService(MS_IMG_SAVE, (WPARAM)&saveInfo, IMGL_WCHAR);
-
- if (hbmpPreview != resize.hBmp)
- DeleteObject(hbmpPreview);
- DeleteObject(resize.hBmp);
-
- CopyFile(ptszFileName, tszMyFile, FALSE);
-
- m_pConnection->sendSetPicture(szJid, sttFileToMem(ptszFileName), sttFileToMem(tszTempFile));
- return 0;
-}
-
-INT_PTR WhatsAppProto::SetMyAvatar(WPARAM, LPARAM lParam)
-{
- return InternalSetAvatar(NULL, m_szJid.c_str(), (const wchar_t*)lParam);
-}
diff --git a/protocols/WhatsApp/src/chat.cpp b/protocols/WhatsApp/src/chat.cpp
deleted file mode 100644
index 24cdc5a177..0000000000
--- a/protocols/WhatsApp/src/chat.cpp
+++ /dev/null
@@ -1,522 +0,0 @@
-#include "stdafx.h"
-
-static const wchar_t *sttStatuses[] = { LPGENW("Members"), LPGENW("Owners") };
-
-enum
-{
- IDM_CANCEL,
-
- IDM_INVITE, IDM_LEAVE, IDM_TOPIC,
-
- IDM_AVATAR, IDM_KICK,
- IDM_CPY_NICK, IDM_CPY_TOPIC,
- IDM_ADD_RJID, IDM_CPY_RJID
-};
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// protocol menu handler - create a new group
-
-INT_PTR __cdecl WhatsAppProto::OnCreateGroup(WPARAM, LPARAM)
-{
- ENTER_STRING es = { 0 };
- es.cbSize = sizeof(es);
- es.type = ESF_MULTILINE;
- es.caption = L"Enter a subject for new group";
- es.szModuleName = m_szModuleName;
- if (EnterString(&es)) {
- if (isOnline()) {
- std::string groupName(T2Utf(es.ptszResult));
- m_pConnection->sendCreateGroupChat(groupName);
- }
- mir_free(es.ptszResult);
- }
-
- return FALSE;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// handler to pass events from SRMM to WAConnection
-
-int WhatsAppProto::onGroupChatEvent(WPARAM, LPARAM lParam)
-{
- GCHOOK *gch = (GCHOOK*)lParam;
- if (mir_strcmp(gch->pszModule, m_szModuleName))
- return 0;
-
- std::string chat_id(T2Utf(gch->ptszID));
- WAChatInfo *pInfo = SafeGetChat(chat_id);
- if (pInfo == nullptr)
- return 0;
-
- switch (gch->iType) {
- case GC_USER_LOGMENU:
- ChatLogMenuHook(pInfo, gch);
- break;
-
- case GC_USER_NICKLISTMENU:
- NickListMenuHook(pInfo, gch);
- break;
-
- case GC_USER_MESSAGE:
- if (isOnline()) {
- std::string msg(T2Utf(gch->ptszText));
-
- try {
- int msgId = GetSerial();
- time_t now = time(nullptr);
- std::string id = Utilities::intToStr(now) + "-" + Utilities::intToStr(msgId);
-
- FMessage fmsg(chat_id, true, id);
- fmsg.timestamp = now;
- fmsg.data = msg;
- m_pConnection->sendMessage(&fmsg);
-
- pInfo->m_unsentMsgs[id] = gch->ptszText;
- }
- CODE_BLOCK_CATCH_ALL
- }
- break;
-
- case GC_USER_PRIVMESS:
- string jid = string(_T2A(gch->ptszUID)) + "@s.whatsapp.net";
- MCONTACT hContact = ContactIDToHContact(jid);
- if (hContact == 0) {
- hContact = AddToContactList(jid, (char*)_T2A(gch->ptszUID));
- setWord(hContact, "Status", ID_STATUS_ONLINE);
-
- db_set_b(hContact, "CList", "Hidden", 1);
- setWString(hContact, "Nick", gch->ptszUID);
- db_set_dw(hContact, "Ignore", "Mask1", 0);
- }
- CallService(MS_MSG_SENDMESSAGE, hContact, 0);
- break;
- }
-
- return 0;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// chat log menu event handler
-
-static gc_item sttLogListItems[] =
-{
- { LPGENW("&Invite a user"), IDM_INVITE, MENU_ITEM },
- { nullptr, 0, MENU_SEPARATOR },
- { LPGENW("&Room options"), 0, MENU_NEWPOPUP },
- { LPGENW("View/change &topic"), IDM_TOPIC, MENU_POPUPITEM },
- { LPGENW("&Quit chat session"), IDM_LEAVE, MENU_POPUPITEM },
-#ifdef _DEBUG
- { LPGENW("Set &avatar"), IDM_AVATAR, MENU_POPUPITEM }, // doesn't work, therefore commented out
-#endif
- { nullptr, 0, MENU_SEPARATOR },
- { LPGENW("Copy room &JID"), IDM_CPY_RJID, MENU_ITEM },
- { LPGENW("Copy room topic"), IDM_CPY_TOPIC, MENU_ITEM },
-};
-
-void WhatsAppProto::ChatLogMenuHook(WAChatInfo *pInfo, struct GCHOOK *gch)
-{
- switch (gch->dwData) {
- case IDM_INVITE:
- InviteChatUser(pInfo);
- break;
-
- case IDM_TOPIC:
- EditChatSubject(pInfo);
- break;
-
- case IDM_CPY_RJID:
- utils::copyText(pcli->hwndContactList, pInfo->tszJid);
- break;
-
- case IDM_CPY_TOPIC:
- utils::copyText(pcli->hwndContactList, pInfo->tszNick);
- break;
-
- case IDM_LEAVE:
- if (isOnline())
- m_pConnection->sendJoinLeaveGroup(_T2A(pInfo->tszJid), false);
- break;
-
- case IDM_AVATAR:
- SetChatAvatar(pInfo);
- break;
- }
-}
-
-void WhatsAppProto::EditChatSubject(WAChatInfo *pInfo)
-{
- CMStringW title(FORMAT, TranslateT("Set new subject for %s"), pInfo->tszNick);
- ptrW tszOldValue(getWStringA(pInfo->hContact, WHATSAPP_KEY_NICK));
-
- ENTER_STRING es = { 0 };
- es.cbSize = sizeof(es);
- es.type = ESF_RICHEDIT;
- es.szModuleName = m_szModuleName;
- es.ptszInitVal = tszOldValue;
- es.caption = title;
- es.szDataPrefix = "setSubject_";
- if (EnterString(&es)) {
- T2Utf gjid(pInfo->tszJid);
- T2Utf gsubject(es.ptszResult);
- m_pConnection->sendSetNewSubject(std::string(gjid), std::string(gsubject));
- mir_free(es.ptszResult);
- }
-}
-
-void WhatsAppProto::SetChatAvatar(WAChatInfo *pInfo)
-{
- wchar_t tszFileName[MAX_PATH], filter[256];
- Bitmap_GetFilter(filter, _countof(filter));
-
- OPENFILENAME ofn = { 0 };
- ofn.lStructSize = OPENFILENAME_SIZE_VERSION_400;
- ofn.lpstrFilter = filter;
- ofn.hwndOwner = nullptr;
- ofn.lpstrFile = tszFileName;
- ofn.nMaxFile = ofn.nMaxFileTitle = _countof(tszFileName);
- ofn.Flags = OFN_HIDEREADONLY;
- ofn.lpstrInitialDir = L".";
- ofn.lpstrDefExt = L"";
- if (GetOpenFileName(&ofn))
- if (_waccess(tszFileName, 4) != -1)
- InternalSetAvatar(pInfo->hContact, _T2A(pInfo->tszJid), tszFileName);
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// nicklist menu event handler
-
-static gc_item sttNickListItems[] =
-{
- { LPGENW("&Add to roster"), IDM_ADD_RJID, MENU_POPUPITEM },
- { nullptr, 0, MENU_SEPARATOR },
- { LPGENW("&Kick"), IDM_KICK, MENU_ITEM },
- { nullptr, 0, MENU_SEPARATOR },
- { LPGENW("Copy &nickname"), IDM_CPY_NICK, MENU_ITEM },
- { LPGENW("Copy real &JID"), IDM_CPY_RJID, MENU_ITEM },
-};
-
-void WhatsAppProto::NickListMenuHook(WAChatInfo *pInfo, struct GCHOOK *gch)
-{
- switch (gch->dwData) {
- case IDM_ADD_RJID:
- AddChatUser(pInfo, gch->ptszUID);
- break;
-
- case IDM_KICK:
- KickChatUser(pInfo, gch->ptszUID);
- break;
-
- case IDM_CPY_NICK:
- utils::copyText(pcli->hwndContactList, ptrW(GetChatUserNick(std::string((char*)_T2A(gch->ptszUID)))));
- break;
-
- case IDM_CPY_RJID:
- utils::copyText(pcli->hwndContactList, gch->ptszUID);
- break;
- }
-}
-
-void WhatsAppProto::AddChatUser(WAChatInfo*, const wchar_t *ptszJid)
-{
- std::string jid((char*)_T2A(ptszJid));
- MCONTACT hContact = ContactIDToHContact(jid);
- if (hContact && !db_get_b(hContact, "CList", "NotInList", 0))
- return;
-
- PROTOSEARCHRESULT psr = { 0 };
- psr.cbSize = sizeof(psr);
- psr.flags = PSR_UNICODE;
- psr.id.w = (wchar_t*)ptszJid;
- psr.nick.w = GetChatUserNick(jid);
-
- ADDCONTACTSTRUCT acs = { 0 };
- acs.handleType = HANDLE_SEARCHRESULT;
- acs.szProto = m_szModuleName;
- acs.psr = &psr;
- CallService(MS_ADDCONTACT_SHOW, (WPARAM)pcli->hwndContactList, (LPARAM)&acs);
-}
-
-void WhatsAppProto::KickChatUser(WAChatInfo *pInfo, const wchar_t *ptszJid)
-{
- if (!isOnline())
- return;
-
- std::string gjid((char*)_T2A(pInfo->tszJid));
- std::vector<std::string> jids(1);
- jids[0] = (char*)_T2A(ptszJid);
- m_pConnection->sendRemoveParticipants(gjid, jids);
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// Leave groupchat emulator for contact's deletion
-
-int WhatsAppProto::OnDeleteChat(WPARAM hContact, LPARAM)
-{
- if (isChatRoom(hContact) && isOnline()) {
- ptrW tszID(getWStringA(hContact, WHATSAPP_KEY_ID));
- if (tszID)
- m_pConnection->sendJoinLeaveGroup(_T2A(tszID), false);
- }
-
- return 0;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// handler to customize chat menus
-
-int WhatsAppProto::OnChatMenu(WPARAM, LPARAM lParam)
-{
- GCMENUITEMS *gcmi = (GCMENUITEMS*)lParam;
- if (gcmi == nullptr)
- return 0;
-
- if (mir_strcmpi(gcmi->pszModule, m_szModuleName))
- return 0;
-
- if (gcmi->Type == MENU_ON_LOG)
- Chat_AddMenuItems(gcmi->hMenu, _countof(sttLogListItems), sttLogListItems);
- else if (gcmi->Type == MENU_ON_NICKLIST)
- Chat_AddMenuItems(gcmi->hMenu, _countof(sttNickListItems), sttNickListItems);
-
- return 0;
-}
-
-///////////////////////////////////////////////////////////////////////////////
-// chat helpers
-
-WAChatInfo* WhatsAppProto::InitChat(const std::string &jid, const std::string &nick)
-{
- wchar_t *ptszJid = str2t(jid), *ptszNick = str2t(nick);
-
- WAChatInfo *pInfo = new WAChatInfo(ptszJid, ptszNick);
- m_chats[jid] = pInfo;
-
- MCONTACT hOldContact = ContactIDToHContact(jid);
- if (hOldContact && !isChatRoom(hOldContact)) {
- delSetting(hOldContact, "ID");
- setByte(hOldContact, "ChatRoom", 1);
- setString(hOldContact, "ChatRoomID", jid.c_str());
- }
-
- Chat_NewSession(GCW_CHATROOM, m_szModuleName, ptszJid, ptszNick);
-
- pInfo->hContact = (hOldContact != NULL) ? hOldContact : ContactIDToHContact(jid);
-
- for (int i = _countof(sttStatuses) - 1; i >= 0; i--)
- Chat_AddGroup(m_szModuleName, ptszJid, TranslateW(sttStatuses[i]));
-
- Chat_Control(m_szModuleName, ptszJid, getBool(WHATSAPP_KEY_AUTORUNCHATS, true) ? SESSION_INITDONE : WINDOW_HIDDEN);
- Chat_Control(m_szModuleName, ptszJid, SESSION_ONLINE);
-
- if (m_pConnection)
- m_pConnection->sendGetParticipants(jid);
-
- return pInfo;
-}
-
-wchar_t* WhatsAppProto::GetChatUserNick(const std::string &jid)
-{
- wchar_t* tszNick;
- if (m_szJid != jid) {
- MCONTACT hContact = ContactIDToHContact(jid);
- tszNick = (hContact == 0) ? utils::removeA(str2t(jid)) : mir_wstrdup(pcli->pfnGetContactDisplayName(hContact, 0));
- }
- else tszNick = str2t(m_szNick);
-
- if (tszNick == nullptr)
- tszNick = mir_wstrdup(TranslateT("Unknown user"));
- return tszNick;
-}
-
-WAChatInfo* WhatsAppProto::SafeGetChat(const std::string &jid)
-{
- mir_cslock lck(m_csChats);
- return m_chats[jid];
-}
-
-///////////////////////////////////////////////////////////////////////////////
-// WAGroupListener members
-
-void WhatsAppProto::onGroupInfo(const std::string &jid, const std::string &owner, const std::string &subject, const std::string &subject_owner, int time_subject, int)
-{
- WAChatInfo *pInfo = SafeGetChat(jid);
- if (pInfo == nullptr) {
- pInfo = InitChat(jid, subject);
- pInfo->bActive = true;
- time_subject = 0;
- }
- else Chat_Control(m_szModuleName, pInfo->tszJid, SESSION_ONLINE);
-
- if (!subject.empty()) {
- pInfo->tszOwner = str2t(owner);
-
- onGroupNewSubject(jid, subject_owner, subject, time_subject);
- }
-}
-
-void WhatsAppProto::onGroupMessage(const FMessage &pMsg)
-{
- // we need to add a contact, so there's no difference at all
- if (pMsg.media_wa_type == FMessage::WA_TYPE_CONTACT) {
- onMessageForMe(pMsg);
- return;
- }
-
- WAChatInfo *pInfo = SafeGetChat(pMsg.key.remote_jid);
- if (pInfo == nullptr) {
- pInfo = InitChat(pMsg.key.remote_jid, "");
- pInfo->bActive = true;
- }
-
- std::string msg(pMsg.data);
- if (!pMsg.media_url.empty()) {
- if (!msg.empty())
- msg.append("\n");
- msg += pMsg.media_url;
- }
-
- ptrW tszText(str2t(msg));
- ptrW tszUID(str2t(pMsg.remote_resource));
- ptrW tszNick(GetChatUserNick(pMsg.remote_resource));
-
- GCEVENT gce = { m_szModuleName, pInfo->tszJid, GC_EVENT_MESSAGE };
- gce.dwFlags = GCEF_ADDTOLOG;
- gce.ptszUID = tszUID;
- gce.ptszNick = tszNick;
- gce.time = pMsg.timestamp;
- gce.ptszText = tszText;
- gce.bIsMe = m_szJid == pMsg.remote_resource;
- Chat_Event(&gce);
-
- if (isOnline())
- m_pConnection->sendMessageReceived(pMsg);
-}
-
-void WhatsAppProto::onGroupNewSubject(const std::string &gjid, const std::string &author, const std::string &newSubject, int ts)
-{
- WAChatInfo *pInfo = SafeGetChat(gjid);
- if (pInfo == nullptr)
- return;
-
- ptrW tszText(str2t(newSubject));
- ptrW tszTextDb(getWStringA(pInfo->hContact, WHATSAPP_KEY_NICK));
- if (!mir_wstrcmp(tszText, tszTextDb)) // notify about subject change only if differs from the stored one
- return;
-
- ptrW tszUID(str2t(author));
- ptrW tszNick(GetChatUserNick(author));
-
- GCEVENT gce = { m_szModuleName, pInfo->tszJid, GC_EVENT_TOPIC };
- gce.dwFlags = GCEF_ADDTOLOG + ((ts == 0) ? GCEF_NOTNOTIFY : 0);
- gce.ptszUID = tszUID;
- gce.ptszNick = tszNick;
- gce.time = ts;
- gce.ptszText = tszText;
- Chat_Event(&gce);
-
- setWString(pInfo->hContact, WHATSAPP_KEY_NICK, tszText);
-}
-
-void WhatsAppProto::onGroupAddUser(const std::string &gjid, const std::string &ujid, int ts)
-{
- WAChatInfo *pInfo = SafeGetChat(gjid);
- if (pInfo == nullptr || !pInfo->bActive)
- return;
-
- ptrW tszUID(str2t(ujid));
- ptrW tszNick(GetChatUserNick(ujid));
-
- GCEVENT gce = { m_szModuleName, pInfo->tszJid, GC_EVENT_JOIN };
- gce.dwFlags = GCEF_ADDTOLOG;
- gce.ptszUID = tszUID;
- gce.ptszNick = tszNick;
- gce.time = ts;
- Chat_Event(&gce);
-}
-
-void WhatsAppProto::onGroupRemoveUser(const std::string &gjid, const std::string &ujid, int ts)
-{
- WAChatInfo *pInfo = SafeGetChat(gjid);
- if (pInfo == nullptr)
- return;
-
- ptrW tszUID(str2t(ujid));
- ptrW tszNick(GetChatUserNick(ujid));
-
- GCEVENT gce = { m_szModuleName, pInfo->tszJid, GC_EVENT_PART };
- gce.dwFlags = GCEF_ADDTOLOG;
- gce.ptszUID = tszUID;
- gce.ptszNick = tszNick;
- gce.time = ts;
- Chat_Event(&gce);
-}
-
-void WhatsAppProto::onLeaveGroup(const std::string &gjid)
-{
- WAChatInfo *pInfo = SafeGetChat(gjid);
- if (pInfo == nullptr)
- return;
-
- Chat_Terminate(m_szModuleName, pInfo->tszJid);
-
- db_delete_contact(pInfo->hContact);
- m_chats.erase((char*)_T2A(pInfo->tszJid));
-}
-
-void WhatsAppProto::onGetParticipants(const std::string &gjid, const std::vector<string> &participants)
-{
- mir_cslock lck(m_csChats);
-
- WAChatInfo *pInfo = m_chats[gjid];
- if (pInfo == nullptr)
- return;
-
- pInfo->bActive = true;
- for (size_t i = 0; i < participants.size(); i++) {
- std::string curr = participants[i];
-
- ptrW ujid(str2t(curr)), nick(GetChatUserNick(curr));
- bool bIsOwner = !mir_wstrcmp(ujid, pInfo->tszOwner);
-
- GCEVENT gce = { m_szModuleName, pInfo->tszJid, GC_EVENT_JOIN };
- gce.ptszNick = nick;
- gce.ptszUID = utils::removeA(ujid);
- gce.ptszStatus = (bIsOwner) ? L"Owners" : L"Members";
- Chat_Event(&gce);
- }
-}
-
-void WhatsAppProto::onGroupCreated(const std::string &gjid, const std::string &subject)
-{
- WAChatInfo *pInfo = InitChat(gjid, subject);
- pInfo->tszOwner = str2t(m_szJid);
-
- // also set new subject if it's present
- if (!subject.empty())
- onGroupNewSubject(gjid, "Server", subject, 0);
-}
-
-void WhatsAppProto::onGroupMessageReceived(const FMessage &msg)
-{
- WAChatInfo *pInfo = SafeGetChat(msg.key.remote_jid);
- if (pInfo == nullptr)
- return;
-
- auto p = pInfo->m_unsentMsgs.find(msg.key.id);
- if (p == pInfo->m_unsentMsgs.end())
- return;
-
- ptrW tszUID(str2t(m_szJid));
- ptrW tszNick(str2t(m_szNick));
-
- GCEVENT gce = { m_szModuleName, pInfo->tszJid, GC_EVENT_MESSAGE };
- gce.dwFlags = GCEF_ADDTOLOG;
- gce.ptszUID = tszUID;
- gce.ptszNick = tszNick;
- gce.time = time(nullptr);
- gce.ptszText = p->second.c_str();
- gce.bIsMe = m_szJid == msg.remote_resource;
- Chat_Event(&gce);
-
- pInfo->m_unsentMsgs.erase(p);
-}
diff --git a/protocols/WhatsApp/src/connection.cpp b/protocols/WhatsApp/src/connection.cpp
deleted file mode 100644
index a7fa47958f..0000000000
--- a/protocols/WhatsApp/src/connection.cpp
+++ /dev/null
@@ -1,145 +0,0 @@
-#include "stdafx.h"
-
-void WhatsAppProto::stayConnectedLoop(void*)
-{
- ptrA cc(getStringA(WHATSAPP_KEY_CC));
- if (mir_strlen(cc) == 0) {
- NotifyEvent(m_tszUserName, TranslateT("Please enter a country code."), NULL, WHATSAPP_EVENT_CLIENT);
- return;
- }
-
- ptrA in(getStringA(WHATSAPP_KEY_LOGIN));
- if (mir_strlen(in) == 0) {
- NotifyEvent(m_tszUserName, TranslateT("Please enter a phone number without country code."), NULL, WHATSAPP_EVENT_CLIENT);
- return;
- }
-
- m_szPhoneNumber = std::string(cc) + std::string(in);
- m_szJid = m_szPhoneNumber + "@s.whatsapp.net";
-
- ptrA szNick(getStringA(WHATSAPP_KEY_NICK));
- if (mir_strlen(szNick) == 0) {
- NotifyEvent(m_tszUserName, TranslateT("Please enter a nickname."), NULL, WHATSAPP_EVENT_CLIENT);
- return;
- }
- m_szNick = szNick;
-
- ptrA szPassword(getStringA(WHATSAPP_KEY_PASS));
- if (mir_strlen(szPassword) == 0) {
- NotifyEvent(m_tszUserName, TranslateT("Please enter a password."), NULL, WHATSAPP_EVENT_CLIENT);
- return;
- }
-
- // -----------------------------
- Mutex writerMutex;
- bool error = false;
-
- m_pSocket = nullptr;
-
- while (true) {
- if (m_pConnection != nullptr) {
- delete m_pConnection;
- m_pConnection = nullptr;
- }
- if (m_pSocket != nullptr) {
- delete m_pSocket;
- m_pSocket = nullptr;
- }
-
- if (m_iDesiredStatus == ID_STATUS_OFFLINE || error) {
- debugLogA("Set status to offline");
- SetAllContactStatuses(ID_STATUS_OFFLINE, true);
- ToggleStatusMenuItems(false);
- int prevStatus = m_iStatus;
- m_iStatus = m_iDesiredStatus = ID_STATUS_OFFLINE;
- ProtoBroadcastAck(0, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)prevStatus, m_iStatus);
- break;
- }
-
- debugLogA("Connecting...");
-
- try {
- unsigned passLen;
- ptrA passBin((char*)mir_base64_decode(szPassword, &passLen));
- std::string password(passBin, passLen), resource = ACCOUNT_RESOURCE;
- int portNumber;
- if (getByte(WHATSAPP_KEY_SSL, 0))
- portNumber = 443, resource += "-443";
- else
- portNumber = 5222, resource += "-5222";
-
- m_pSocket = new WASocketConnection("c.whatsapp.net", portNumber);
- m_pConnection = new WAConnection(m_szPhoneNumber, resource, &connMutex, &writerMutex, m_pSocket, this, this);
- {
- WALogin login(m_pConnection, password);
-
- m_Challenge = login.login(m_Challenge);
- m_pConnection->setLogin(&login);
- }
- m_pConnection->nick = m_szNick;
- if (m_iDesiredStatus != ID_STATUS_INVISIBLE)
- m_pConnection->sendAvailableForChat();
-
- debugLogA("Set status to online");
- m_iStatus = m_iDesiredStatus;
- ProtoBroadcastAck(0, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)ID_STATUS_CONNECTING, m_iStatus);
- ToggleStatusMenuItems(true);
-
- ForkThread(&WhatsAppProto::ProcessBuddyList, nullptr);
-
- // #TODO Move out of try block. Exception is expected on disconnect
- while (true) {
- m_tLastWriteTime = time(nullptr);
- if (!m_pConnection->read())
- break;
- }
- debugLogA("Exit from read-loop");
- }
- catch (WAException &e) {
- debugLogA("Exception: %s", e.what());
- error = true;
- }
- catch (exception &e) {
- debugLogA("Exception: %s", e.what());
- error = true;
- }
- catch (...) {
- debugLogA("Unknown exception");
- error = true;
- }
- }
- debugLogA("Break out from loop");
-}
-
-void WhatsAppProto::sentinelLoop(void*)
-{
- while (WaitForSingleObjectEx(update_loop_lock_, 1000, true) == WAIT_TIMEOUT) {
- if (m_iStatus != ID_STATUS_OFFLINE && m_pConnection != nullptr && m_iDesiredStatus == m_iStatus) {
- // #TODO Quiet after pong or tree read?
- int quietInterval = difftime(time(nullptr), m_tLastWriteTime);
- if (quietInterval >= MAX_SILENT_INTERVAL) {
- try {
- debugLogA("send ping");
- m_tLastWriteTime = time(nullptr);
- m_pConnection->sendPing();
- }
- catch (exception &e) {
- debugLogA("Exception: %s", e.what());
- }
- }
- }
- }
- ResetEvent(update_loop_lock_);
- debugLogA("Exiting sentinel loop");
-}
-
-void WhatsAppProto::onPing(const std::string &id)
-{
- if (isOnline()) {
- try {
- debugLogA("Sending pong with id %s", id.c_str());
- m_pConnection->sendPong(id);
- }
- CODE_BLOCK_CATCH_ALL
- }
-}
diff --git a/protocols/WhatsApp/src/constants.h b/protocols/WhatsApp/src/constants.h
deleted file mode 100644
index 963ae3c7ce..0000000000
--- a/protocols/WhatsApp/src/constants.h
+++ /dev/null
@@ -1,51 +0,0 @@
-#if !defined(CONSTANTS_H)
-#define CONSTANTS_H
-
-// Version management
-#define PRODUCT_NAME L"WhatsApp Protocol"
-
-// Limits
-#define WHATSAPP_GROUP_NAME_LIMIT 420
-
-// Defaults
-#define DEFAULT_MAP_STATUSES 0
-#define DEFAULT_SYSTRAY_NOTIFY 0
-
-#define DEFAULT_EVENT_NOTIFICATIONS_ENABLE 1
-#define DEFAULT_EVENT_FEEDS_ENABLE 1
-#define DEFAULT_EVENT_OTHER_ENABLE 1
-#define DEFAULT_EVENT_CLIENT_ENABLE 1
-#define DEFAULT_EVENT_COLBACK 0x00ffffff
-#define DEFAULT_EVENT_COLTEXT 0x00000000
-#define DEFAULT_EVENT_TIMEOUT_TYPE 0
-#define DEFAULT_EVENT_TIMEOUT -1
-
-// #TODO Move constants below to WhatsAPI++
-
-// WhatsApp
-#define WHATSAPP_TOKEN "PdA2DJyKoUrwLw1Bg6EIhzh502dF9noR9uFCllGk1478194306452"
-#define WHATSAPP_LOGIN_SERVER "c.whatsapp.net"
-#define ACCOUNT_USER_AGENT "WhatsApp/2.16.11 S40Version/14.26 Device/Nokia302"
-#define ACCOUNT_URL_CODEREQUESTV2 "https://v.whatsapp.net/v2/code"
-#define ACCOUNT_URL_REGISTERREQUESTV2 "https://v.whatsapp.net/v2/register"
-#define ACCOUNT_URL_EXISTSV2 "https://v.whatsapp.net/v2/exist"
-
-// WhatsApp Samsung Galaxy S3
-#define ACCOUNT_RESOURCE "S40"
-
-#define WHATSAPP_RECV_MESSAGE 1
-#define WHATSAPP_SEND_MESSAGE 2
-
-#define MAX_SILENT_INTERVAL 55
-
-// Event flags
-#define WHATSAPP_EVENT_CLIENT 0x10000000 // WhatsApp error or info message
-#define WHATSAPP_EVENT_NOTIFICATION 0x40000000 // WhatsApp notification
-#define WHATSAPP_EVENT_OTHER 0x80000000 // WhatsApp other event - friend requests/new messages
-
-#define IS_CHAT 1
-
-#define REG_STATE_REQ_CODE 1
-#define REG_STATE_REG_CODE 2
-
-#endif
diff --git a/protocols/WhatsApp/src/contacts.cpp b/protocols/WhatsApp/src/contacts.cpp
deleted file mode 100644
index 7674985311..0000000000
--- a/protocols/WhatsApp/src/contacts.cpp
+++ /dev/null
@@ -1,191 +0,0 @@
-#include "stdafx.h"
-
-MCONTACT WhatsAppProto::AddToContactList(const std::string &jid, const char *new_name)
-{
- if (jid == m_szJid)
- return NULL;
-
- // First, check if this contact exists
- MCONTACT hContact = ContactIDToHContact(jid);
- if (hContact) {
- if (new_name != nullptr) {
- DBVARIANT dbv;
- string oldName;
- if (db_get_utf(hContact, m_szModuleName, WHATSAPP_KEY_NICK, &dbv))
- oldName = jid.c_str();
- else {
- oldName = dbv.pszVal;
- db_free(&dbv);
- }
-
- if (oldName.compare(string(new_name)) != 0) {
- db_set_utf(hContact, m_szModuleName, WHATSAPP_KEY_NICK, new_name);
-
- CMStringW tmp(FORMAT, TranslateT("is now known as '%s'"), ptrW(mir_utf8decodeW(new_name)));
- this->NotifyEvent(_A2T(oldName.c_str()), tmp, hContact, WHATSAPP_EVENT_OTHER);
- }
- }
-
- if (db_get_b(hContact, "CList", "Hidden", 0) > 0)
- db_unset(hContact, "CList", "Hidden");
-
- return hContact;
- }
-
- // If not, make a new contact!
- if ((hContact = db_add_contact()) == 0)
- return INVALID_CONTACT_ID;
-
- Proto_AddToContact(hContact, m_szModuleName);
- setString(hContact, "ID", jid.c_str());
- debugLogA("Added contact %s", jid.c_str());
- setString(hContact, "MirVer", "WhatsApp");
- db_unset(hContact, "CList", "MyHandle");
- db_set_b(hContact, "CList", "NotOnList", 1);
- db_set_ws(hContact, "CList", "Group", m_tszDefaultGroup);
-
- if (new_name != nullptr)
- db_set_utf(hContact, m_szModuleName, WHATSAPP_KEY_NICK, new_name);
-
- return hContact;
-}
-
-MCONTACT WhatsAppProto::ContactIDToHContact(const std::string &phoneNumber)
-{
- // Cache
- std::map<string, MCONTACT>::iterator it = m_hContactByJid.find(phoneNumber);
- if (it != m_hContactByJid.end())
- return it->second;
-
- for (MCONTACT hContact = db_find_first(m_szModuleName); hContact; hContact = db_find_next(hContact, m_szModuleName)) {
- const char *id = isChatRoom(hContact) ? "ChatRoomID" : WHATSAPP_KEY_ID;
-
- ptrA szId(getStringA(hContact, id));
- if (!mir_strcmp(phoneNumber.c_str(), szId)) {
- m_hContactByJid[phoneNumber] = hContact;
- return hContact;
- }
- }
-
- return 0;
-}
-
-void WhatsAppProto::SetAllContactStatuses(int status, bool reset_client)
-{
- for (MCONTACT hContact = db_find_first(m_szModuleName); hContact; hContact = db_find_next(hContact, m_szModuleName)) {
- if (reset_client) {
- ptrW tszMirVer(getWStringA(hContact, "MirVer"));
- if (mir_wstrcmp(tszMirVer, L"WhatsApp"))
- setWString(hContact, "MirVer", L"WhatsApp");
-
- db_set_ws(hContact, "CList", "StatusMsg", L"");
- }
-
- if (getWord(hContact, "Status", ID_STATUS_OFFLINE) != status)
- setWord(hContact, "Status", status);
- }
-}
-
-void WhatsAppProto::ProcessBuddyList(void*)
-{
- // m_pConnection->setFlush(false);
-
- // for (MCONTACT hContact = db_find_first(m_szModuleName); hContact; hContact = db_find_next(hContact, m_szModuleName)) {
- // ptrA jid(getStringA(hContact, WHATSAPP_KEY_ID));
- // if (jid)
- // m_pConnection->sendQueryLastOnline((char*)jid);
- // }
-
- // m_pConnection->setFlush(true);
-
- try {
- m_pConnection->sendGetGroups();
- }
- CODE_BLOCK_CATCH_ALL
-}
-
-void WhatsAppProto::onAvailable(const std::string &paramString, bool paramBoolean, DWORD lastSeenTime)
-{
- MCONTACT hContact = AddToContactList(paramString);
- if (hContact != NULL) {
- if (paramBoolean) {
- setWord(hContact, "Status", ID_STATUS_ONLINE);
- setDword(hContact, WHATSAPP_KEY_LAST_SEEN, time(nullptr));
- }
- else {
- setWord(hContact, "Status", ID_STATUS_OFFLINE);
- if (lastSeenTime != 0) {
- setDword(hContact, WHATSAPP_KEY_LAST_SEEN, lastSeenTime);
- setByte(hContact, WHATSAPP_KEY_LAST_SEEN_DENIED, 0);
- }
- else
- setByte(hContact, WHATSAPP_KEY_LAST_SEEN_DENIED, 1);
- }
- UpdateStatusMsg(hContact);
- }
-}
-
-void WhatsAppProto::UpdateStatusMsg(MCONTACT hContact)
-{
- std::wstringstream ss;
- DWORD lastSeen = getDword(hContact, WHATSAPP_KEY_LAST_SEEN, 0);
- WORD status = getWord(hContact, "Status", ID_STATUS_OFFLINE);
- bool denied = getBool(hContact, WHATSAPP_KEY_LAST_SEEN_DENIED, false);
- if (lastSeen > 0) {
- time_t ts = lastSeen;
- wchar_t stzLastSeen[MAX_PATH];
- if (status == ID_STATUS_ONLINE)
- wcsftime(stzLastSeen, _countof(stzLastSeen), TranslateT("Last online on %x at %X"), localtime(&ts));
- else
- wcsftime(stzLastSeen, _countof(stzLastSeen), denied ? TranslateT("Denied: Last online on %x at %X") : TranslateT("Last seen on %x at %X"), localtime(&ts));
-
- ss << stzLastSeen;
- }
-
- db_set_ws(hContact, "CList", "StatusMsg", ss.str().c_str());
-}
-
-void WhatsAppProto::onContactChanged(const std::string&, bool)
-{
-}
-
-void WhatsAppProto::onPictureChanged(const std::string &jid, const std::string&, bool)
-{
- if (isOnline())
- m_pConnection->sendGetPicture(jid.c_str(), "image");
-}
-
-void WhatsAppProto::onSendGetPicture(const std::string &jid, const std::vector<unsigned char>& data, const std::string &id)
-{
- MCONTACT hContact = ContactIDToHContact(jid);
- if (hContact) {
- debugLogA("Updating avatar for jid %s", jid.c_str());
-
- // Save avatar
- std::wstring filename = GetAvatarFileName(hContact);
- FILE *f = _wfopen(filename.c_str(), L"wb");
- size_t r = fwrite(std::string(data.begin(), data.end()).c_str(), 1, data.size(), f);
- fclose(f);
-
- PROTO_AVATAR_INFORMATION ai = { 0 };
- ai.hContact = hContact;
- ai.format = PA_FORMAT_JPEG;
- wcsncpy_s(ai.filename, filename.c_str(), _TRUNCATE);
-
- int ackResult;
- if (r > 0) {
- setString(hContact, WHATSAPP_KEY_AVATAR_ID, id.c_str());
- ackResult = ACKRESULT_SUCCESS;
- }
- else {
- ackResult = ACKRESULT_FAILED;
- }
- ProtoBroadcastAck(ai.hContact, ACKTYPE_AVATAR, ackResult, (HANDLE)&ai, 0);
- }
-}
-
-wchar_t* WhatsAppProto::GetContactDisplayName(const string& jid)
-{
- MCONTACT hContact = ContactIDToHContact(jid);
- return (hContact) ? pcli->pfnGetContactDisplayName(hContact, 0) : L"none";
-}
diff --git a/protocols/WhatsApp/src/db.h b/protocols/WhatsApp/src/db.h
deleted file mode 100644
index 22936d4f64..0000000000
--- a/protocols/WhatsApp/src/db.h
+++ /dev/null
@@ -1,33 +0,0 @@
-// DB keys
-#define WHATSAPP_KEY_ID "ID"
-#define WHATSAPP_KEY_LOGIN "Login"
-#define WHATSAPP_KEY_CC "CountryCode"
-#define WHATSAPP_KEY_NICK "Nick"
-#define WHATSAPP_KEY_PASS "Password"
-#define WHATSAPP_KEY_IDX "DeviceID"
-#define WHATSAPP_KEY_MAP_STATUSES "MapStatuses"
-#define WHATSAPP_KEY_LOGGING_ENABLE "LoggingEnable"
-#define WHATSAPP_KEY_NAME "RealName"
-#define WHATSAPP_KEY_LAST_SEEN "LastSeen"
-#define WHATSAPP_KEY_LAST_SEEN_DENIED "LastSeenDenied"
-#define WHATSAPP_KEY_AVATAR_ID "AvatarId"
-#define WHATSAPP_KEY_SYSTRAY_NOTIFY "UseSystrayNotify"
-#define WHATSAPP_KEY_DEF_GROUP "DefaultGroup"
-#define WHATSAPP_KEY_REG_CODE "RegistrationCode"
-#define WHATSAPP_KEY_SSL "UseSSL"
-#define WHATSAPP_KEY_AUTORUNCHATS "AutoRunChats"
-#define WHATSAPP_KEY_USE_REMOTE_TIME "UseRemoteTime"
-
-#define WHATSAPP_KEY_EVENT_CLIENT_ENABLE "EventClientEnable"
-#define WHATSAPP_KEY_EVENT_OTHER_ENABLE "EventOtherEnable"
-
-#define WHATSAPP_KEY_EVENT_CLIENT_COLBACK "PopupClientColorBack"
-#define WHATSAPP_KEY_EVENT_CLIENT_COLTEXT "PopupClientColorText"
-#define WHATSAPP_KEY_EVENT_CLIENT_TIMEOUT "PopupClientTimeout"
-#define WHATSAPP_KEY_EVENT_CLIENT_DEFAULT "PopupClientColorDefault"
-
-#define WHATSAPP_KEY_EVENT_OTHER_COLBACK "PopupOtherColorBack"
-#define WHATSAPP_KEY_EVENT_OTHER_COLTEXT "PopupOtherColorText"
-#define WHATSAPP_KEY_EVENT_OTHER_TIMEOUT "PopupOtherTimeout"
-#define WHATSAPP_KEY_EVENT_OTHER_DEFAULT "PopupOtherColorDefault"
-
diff --git a/protocols/WhatsApp/src/definitions.h b/protocols/WhatsApp/src/definitions.h
deleted file mode 100644
index 7f8f8a7222..0000000000
--- a/protocols/WhatsApp/src/definitions.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#if !defined(DEFINITIONS_H)
-#define DEFINITIONS_H
-
-#define FLAG_CONTAINS(x,y) ( ( x & y ) == y )
-#define REMOVE_FLAG(x,y) ( x = ( x & ~y ))
-
-#define CODE_BLOCK_CATCH_ALL \
- catch (WAException& e) { debugLogA("Exception: %s", e.what()); \
- } catch (exception& e) { debugLogA("Exception: %s", e.what()); \
- } catch (...) { debugLogA("Unknown exception"); }
-
-#define NIIF_INTERN_TCHAR NIIF_INTERN_UNICODE
-
-#endif \ No newline at end of file
diff --git a/protocols/WhatsApp/src/dialogs.cpp b/protocols/WhatsApp/src/dialogs.cpp
deleted file mode 100644
index 1083463564..0000000000
--- a/protocols/WhatsApp/src/dialogs.cpp
+++ /dev/null
@@ -1,235 +0,0 @@
-#include "stdafx.h"
-
-#define szAskSendSms LPGENW("An SMS with registration code will be sent to your mobile phone.\nNotice that you are not able to use the real WhatsApp and this plugin simultaneously!\nContinue?")
-#define szAskCall LPGENW("A call with registration code will be made to your mobile phone.\nNotice that you are not able to use the real WhatsApp and this plugin simultaneously!\nContinue?")
-#define szPasswordSet LPGENW("Your password has been set automatically. You can proceed with login now.")
-#define szSpecifyCode LPGENW("Please correctly specify your registration code received by SMS/Voice.")
-
-class COptionsDlg : public CProtoDlgBase<WhatsAppProto>
-{
- CCtrlEdit m_pw1, m_pw2, m_cc, m_login, m_nick, m_group;
- CCtrlCheck m_ssl, m_autorun, m_remoteTime;
- CCtrlButton m_requestSMS, m_requestVoice, m_register;
-
-public:
- COptionsDlg(WhatsAppProto *pThis, int dlgId) :
- CProtoDlgBase<WhatsAppProto>(pThis, dlgId, false),
- m_cc(this, IDC_CC),
- m_pw1(this, IDC_PW),
- m_pw2(this, IDC_PW2),
- m_ssl(this, IDC_SSL),
- m_remoteTime(this, IDC_REMOTE_TIME),
- m_nick(this, IDC_NICK),
- m_group(this, IDC_DEFGROUP),
- m_login(this, IDC_LOGIN),
- m_autorun(this, IDC_AUTORUN),
- m_requestSMS(this, IDC_BUTTON_REQUEST_SMS_CODE),
- m_requestVoice(this, IDC_BUTTON_REQUEST_VOICE_CODE),
- m_register(this, IDC_BUTTON_REGISTER)
- {
- CreateLink(m_ssl, WHATSAPP_KEY_SSL, DBVT_BYTE, false);
- CreateLink(m_remoteTime, WHATSAPP_KEY_USE_REMOTE_TIME, DBVT_BYTE, false);
- CreateLink(m_autorun, WHATSAPP_KEY_AUTORUNCHATS, DBVT_BYTE, true);
-
- CreateLink(m_cc, WHATSAPP_KEY_CC, L"");
- CreateLink(m_nick, WHATSAPP_KEY_NICK, L"");
- CreateLink(m_login, WHATSAPP_KEY_LOGIN, L"");
- CreateLink(m_group, WHATSAPP_KEY_DEF_GROUP, L"");
-
- m_requestSMS.OnClick = Callback(this, &COptionsDlg::OnRequestSMSClick);
- m_requestVoice.OnClick = Callback(this, &COptionsDlg::OnRequestVoiceClick);
- m_register.OnClick = Callback(this, &COptionsDlg::OnRegisterClick);
- }
-
- virtual void OnInitDialog()
- {
- m_pw1.SendMsg(EM_LIMITTEXT, 3, 0);
- m_pw2.SendMsg(EM_LIMITTEXT, 3, 0);
- bool bEnable = m_proto->getBool("CodeRequestDone", false);
- m_pw1.Enable(bEnable);
- m_pw2.Enable(bEnable);
- }
-
- void OnRequestVoiceClick(CCtrlButton*)
- {
- if (IDYES != MessageBox(GetHwnd(), TranslateW(szAskCall), PRODUCT_NAME, MB_YESNO))
- return;
-
- ptrA cc(m_cc.GetTextA()), number(m_login.GetTextA());
- string password;
- if (m_proto->Register(REG_STATE_REQ_CODE, string(cc), string(number), "voice", password)) {
- if (!password.empty()) {
- MessageBox(GetHwnd(), TranslateW(szPasswordSet), PRODUCT_NAME, MB_ICONWARNING);
- m_proto->setString(WHATSAPP_KEY_PASS, password.c_str());
- }
- else {
- // unblock sms code entry field
- m_pw1.Enable();
- m_pw2.Enable();
- m_proto->setByte("CodeRequestDone", 1);
- }
- }
- }
-
- void OnRequestSMSClick(CCtrlButton*)
- {
- if (IDYES != MessageBox(GetHwnd(), TranslateW(szAskSendSms), PRODUCT_NAME, MB_YESNO))
- return;
-
- ptrA cc(m_cc.GetTextA()), number(m_login.GetTextA());
- string password;
- if (m_proto->Register(REG_STATE_REQ_CODE, string(cc), string(number), "sms", password)) {
- if (!password.empty()) {
- MessageBox(GetHwnd(), TranslateW(szPasswordSet), PRODUCT_NAME, MB_ICONWARNING);
- m_proto->setString(WHATSAPP_KEY_PASS, password.c_str());
- }
- else {
- // unblock sms code entry field
- m_pw1.Enable();
- m_pw2.Enable();
- m_proto->setByte("CodeRequestDone", 1);
- }
- }
- }
-
- void OnRegisterClick(CCtrlButton*)
- {
- if (GetWindowTextLength(m_pw1.GetHwnd()) != 3 || GetWindowTextLength(m_pw2.GetHwnd()) != 3)
- MessageBox(GetHwnd(), TranslateW(szSpecifyCode), PRODUCT_NAME, MB_ICONEXCLAMATION);
- else {
- char code[10];
- GetWindowTextA(m_pw1.GetHwnd(), code, 4);
- GetWindowTextA(m_pw2.GetHwnd(), code + 3, 4);
-
- string password;
- ptrA cc(m_cc.GetTextA()), number(m_login.GetTextA());
- if (m_proto->Register(REG_STATE_REG_CODE, string(cc), string(number), string(code), password)) {
- m_proto->setString(WHATSAPP_KEY_PASS, password.c_str());
- MessageBox(GetHwnd(), TranslateW(szPasswordSet), PRODUCT_NAME, MB_ICONWARNING);
- }
- }
- m_proto->setByte("CodeRequestDone", 0);
- }
-
- virtual void OnApply()
- {
- ptrW tszGroup(m_group.GetText());
- if (mir_wstrcmp(m_proto->m_tszDefaultGroup, tszGroup))
- m_proto->m_tszDefaultGroup = tszGroup.detach();
-
- if (m_proto->isOnline())
- MessageBox(GetHwnd(), TranslateT("Changes will be applied after protocol restart"), m_proto->m_tszUserName, MB_OK);
- }
-};
-
-INT_PTR WhatsAppProto::SvcCreateAccMgrUI(WPARAM, LPARAM lParam)
-{
- COptionsDlg *pDlg = new COptionsDlg(this, IDD_ACCMGRUI);
- pDlg->SetParent((HWND)lParam);
- pDlg->Show();
- return (INT_PTR)pDlg->GetHwnd();
-}
-
-int WhatsAppProto::OnOptionsInit(WPARAM wParam, LPARAM)
-{
- OPTIONSDIALOGPAGE odp = { 0 };
- odp.szTitle.w = m_tszUserName;
- odp.flags = ODPF_BOLDGROUPS | ODPF_UNICODE | ODPF_DONTTRANSLATE;
- odp.szGroup.w = LPGENW("Network");
-
- odp.szTab.w = LPGENW("Account");
- odp.pDialog = new COptionsDlg(this, IDD_OPTIONS);
- Options_AddPage(wParam, &odp);
- return 0;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// Invite dialog
-
-class CInviteDialog : public CProtoDlgBase<WhatsAppProto>
-{
- CCtrlClc m_clc;
- CCtrlEdit m_entry;
- CCtrlButton m_btnOk;
-
- void FilterList(CCtrlClc *)
- {
- for (MCONTACT hContact = db_find_first(); hContact; hContact = db_find_next(hContact)) {
- char *proto = GetContactProto(hContact);
- if (mir_strcmp(proto, m_proto->m_szModuleName) || m_proto->isChatRoom(hContact))
- if (HANDLE hItem = m_clc.FindContact(hContact))
- m_clc.DeleteItem(hItem);
- }
- }
-
- void ResetListOptions(CCtrlClc *)
- {
- m_clc.SetBkBitmap(0, nullptr);
- m_clc.SetBkColor(GetSysColor(COLOR_WINDOW));
- m_clc.SetGreyoutFlags(0);
- m_clc.SetLeftMargin(4);
- m_clc.SetIndent(10);
- m_clc.SetHideEmptyGroups(true);
- m_clc.SetHideOfflineRoot(true);
- for (int i = 0; i <= FONTID_MAX; i++)
- m_clc.SetTextColor(i, GetSysColor(COLOR_WINDOWTEXT));
- }
-
-public:
- CInviteDialog(WhatsAppProto *pThis) :
- CProtoDlgBase<WhatsAppProto>(pThis, IDD_GROUPCHAT_INVITE, false),
- m_clc(this, IDC_CLIST),
- m_entry(this, IDC_NEWJID),
- m_btnOk(this, IDOK)
- {
- m_btnOk.OnClick = Callback(this, &CInviteDialog::btnOk_OnClick);
- m_clc.OnNewContact =
- m_clc.OnListRebuilt = Callback(this, &CInviteDialog::FilterList);
- m_clc.OnOptionsChanged = Callback(this, &CInviteDialog::ResetListOptions);
- }
-
- void OnInitDialog()
- {
- SetWindowLongPtr(m_clc.GetHwnd(), GWL_STYLE,
- GetWindowLongPtr(m_clc.GetHwnd(), GWL_STYLE) | CLS_CHECKBOXES | CLS_HIDEEMPTYGROUPS | CLS_USEGROUPS | CLS_GREYALTERNATE);
- m_clc.SendMsg(CLM_SETEXSTYLE, CLS_EX_DISABLEDRAGDROP | CLS_EX_TRACKSELECT, 0);
-
- ResetListOptions(&m_clc);
- FilterList(&m_clc);
- }
-
- void btnOk_OnClick(CCtrlButton*)
- {
- m_proto->m_szInviteJids.clear();
-
- // invite users from clist
- for (MCONTACT hContact = db_find_first(m_proto->m_szModuleName); hContact; hContact = db_find_next(hContact, m_proto->m_szModuleName)) {
- if (m_proto->isChatRoom(hContact))
- continue;
-
- if (HANDLE hItem = m_clc.FindContact(hContact)) {
- if (m_clc.GetCheck(hItem)) {
- ptrA jid(m_proto->getStringA(hContact, "ID"));
- if (jid != NULL)
- m_proto->m_szInviteJids.push_back((char*)jid);
- }
- }
- }
-
- ptrA tszText(m_entry.GetTextA());
- if (tszText != NULL)
- m_proto->m_szInviteJids.push_back(string(tszText));
- }
-};
-
-void WhatsAppProto::InviteChatUser(WAChatInfo *pInfo)
-{
- CInviteDialog dlg(this);
- if (!dlg.DoModal())
- return;
-
- if (isOnline()) {
- m_pConnection->sendAddParticipants((char*)_T2A(pInfo->tszJid), m_szInviteJids);
- m_szInviteJids.clear();
- }
-}
diff --git a/protocols/WhatsApp/src/dialogs.h b/protocols/WhatsApp/src/dialogs.h
deleted file mode 100644
index bb244c6834..0000000000
--- a/protocols/WhatsApp/src/dialogs.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#if !defined(DIALOGS_H)
-#define DIALOGS_H
-
-INT_PTR CALLBACK InviteDialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
-
-#endif \ No newline at end of file
diff --git a/protocols/WhatsApp/src/entities.h b/protocols/WhatsApp/src/entities.h
deleted file mode 100644
index 7ed362990e..0000000000
--- a/protocols/WhatsApp/src/entities.h
+++ /dev/null
@@ -1,34 +0,0 @@
-#if !defined(ENTITIES_H)
-#define ENTITIES_H
-
-struct send_direct
-{
- send_direct(MCONTACT hContact, const std::string &msg, HANDLE msgid) :
- hContact(hContact), msg(msg), msgid(msgid)
- {}
-
- MCONTACT hContact;
- std::string msg;
- HANDLE msgid;
-};
-
-struct input_box
-{
- wstring text;
- wstring title;
- wstring defaultValue;
- int limit;
-
- void(__cdecl WhatsAppProto::*thread)(void*);
- WhatsAppProto *proto;
- void *userData;
-};
-
-struct input_box_ret // has to be deleted by input-box handler
-{
- void *userData; // has to be deleted by input-box handler
- char *value; // mir_free() has to be called by input-box handler
-};
-
-
-#endif // ENTITIES_H \ No newline at end of file
diff --git a/protocols/WhatsApp/src/main.cpp b/protocols/WhatsApp/src/main.cpp
deleted file mode 100644
index 84d29e07be..0000000000
--- a/protocols/WhatsApp/src/main.cpp
+++ /dev/null
@@ -1,100 +0,0 @@
-#include "stdafx.h"
-#include "version.h"
-
-CLIST_INTERFACE *pcli;
-int hLangpack;
-
-HINSTANCE g_hInstance;
-
-PLUGININFOEX pluginInfo = {
- sizeof(PLUGININFOEX),
- __PLUGIN_NAME,
- PLUGIN_MAKE_VERSION(__MAJOR_VERSION, __MINOR_VERSION, __RELEASE_NUM, __BUILD_NUM),
- __DESCRIPTION,
- __AUTHOR,
- __AUTHOREMAIL,
- __COPYRIGHT,
- __AUTHORWEB,
- UNICODE_AWARE, //not transient
- // {4f1ff7fa-4d75-44b9-93b0-2ced2e4f9e3e}
- { 0x4f1ff7fa, 0x4d75, 0x44b9, { 0x93, 0xb0, 0x2c, 0xed, 0x2e, 0x4f, 0x9e, 0x3e } }
-
-};
-
-/////////////////////////////////////////////////////////////////////////////
-// Protocol instances
-
-static int compare_protos(const WhatsAppProto *p1, const WhatsAppProto *p2)
-{
- return mir_wstrcmp(p1->m_tszUserName, p2->m_tszUserName);
-}
-
-OBJLIST<WhatsAppProto> g_Instances(1, compare_protos);
-
-DWORD WINAPI DllMain(HINSTANCE hInstance, DWORD, LPVOID)
-{
- g_hInstance = hInstance;
- return TRUE;
-}
-
-extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD)
-{
- return &pluginInfo;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// Interface information
-
-extern "C" __declspec(dllexport) const MUUID MirandaInterfaces[] = { MIID_PROTOCOL, MIID_LAST };
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// Load
-
-static PROTO_INTERFACE* protoInit(const char *proto_name, const wchar_t *username)
-{
- WhatsAppProto *proto = new WhatsAppProto(proto_name, username);
- g_Instances.insert(proto);
- return proto;
-}
-
-static int protoUninit(PROTO_INTERFACE* proto)
-{
- g_Instances.remove((WhatsAppProto*)proto);
- return EXIT_SUCCESS;
-}
-
-extern "C" int __declspec(dllexport) Load(void)
-{
- mir_getLP(&pluginInfo);
- pcli = Clist_GetInterface();
-
- PROTOCOLDESCRIPTOR pd = { 0 };
- pd.cbSize = sizeof(pd);
- pd.szName = "WhatsApp";
- pd.type = PROTOTYPE_PROTOCOL;
- pd.fnInit = protoInit;
- pd.fnUninit = protoUninit;
- Proto_RegisterModule(&pd);
-
- InitIcons();
- //InitContactMenus();
-
- // Init native User-Agent
- MFileVersion v;
- Miranda_GetFileVersion(&v);
-
- WAConnection::globalInit();
- return 0;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// Unload
-
-extern "C" int __declspec(dllexport) Unload(void)
-{
- g_Instances.destroy();
-
- WASocketConnection::quitNetwork();
-
- return 0;
-}
diff --git a/protocols/WhatsApp/src/media.cpp b/protocols/WhatsApp/src/media.cpp
deleted file mode 100644
index f2f1fb3afe..0000000000
--- a/protocols/WhatsApp/src/media.cpp
+++ /dev/null
@@ -1,87 +0,0 @@
-#include "stdafx.h"
-
-HANDLE WhatsAppProto::SendFile(MCONTACT hContact, const wchar_t* desc, wchar_t **ppszFiles) {
- if (!isOnline())
- return nullptr;
-
- ptrA jid(getStringA(hContact, "ID"));
- if (jid == NULL)
- return nullptr;
-
- // input validation
- char *name = mir_utf8encodeW(ppszFiles[0]);
- string mime = MediaUploader::getMimeFromExtension(split(name, '.')[1]);
- if (mime.empty()) {
- mir_free(name);
- return nullptr;
- }
-
- // get file size
- FILE *hFile = _wfopen(ppszFiles[0], L"rb");
- if (hFile == nullptr) {
- debugLogA(__FUNCTION__": cannot open file %s", ppszFiles[0]);
- mir_free(name);
- return nullptr;
- }
- _fseeki64(hFile, 0, SEEK_END);
- uint64_t fileSize = _ftelli64(hFile);
- fclose(hFile);
-
- // get filetype from mimeType
- int fileType = FMessage::getMessage_WA_Type(split(mime, '/')[0]);
-
- // check max file sizes
- switch (fileType) {
- case FMessage::WA_TYPE_IMAGE:
- if (fileSize >= 5 * 1024 * 1024) {
- mir_free(name);
- return nullptr;
- }
- break;
- case FMessage::WA_TYPE_AUDIO:
- if (fileSize >= 10 * 1024 * 1024) {
- mir_free(name);
- return nullptr;
- }
- break;
- case FMessage::WA_TYPE_VIDEO:
- if (fileSize >= 20 * 1024 * 1024) {
- mir_free(name);
- return nullptr;
- }
- break;
- default:
- mir_free(name);
- return nullptr;
- }
-
- int msgId = GetSerial();
- time_t now = time(nullptr);
- std::string msgid = Utilities::intToStr(now) + "-" + Utilities::intToStr(msgId);
- FMessage * fmsg = new FMessage(std::string(jid), true, msgid);
- fmsg->media_url = name;
- fmsg->media_size = fileSize;
- fmsg->media_wa_type = fileType;
- fmsg->data = mir_utf8encodeW(desc);
-
- // calculate file hash
- unsigned char hash[MIR_SHA256_HASH_SIZE];
- SHA256_CONTEXT sha256;
- mir_sha256_init(&sha256);
-
- FILE *fd = _wfopen(ppszFiles[0], L"rb");
- int read = 0;
- do {
- char buf[1024];
- read = (int)fread(buf, 1, 1024, fd);
- mir_sha256_write(&sha256, buf, read);
- } while (read > 0);
- fclose(fd);
-
- mir_sha256_final(&sha256, hash);
- fmsg->media_name = mir_base64_encode((BYTE*)hash,sizeof(hash));
-
- // request media upload url
- m_pConnection->sendMessage(fmsg);
- return (HANDLE)fmsg; // TODO what to return here to make the upload shown complete when done and how to handle errors?
-} \ No newline at end of file
diff --git a/protocols/WhatsApp/src/messages.cpp b/protocols/WhatsApp/src/messages.cpp
deleted file mode 100644
index 0d1ebff87e..0000000000
--- a/protocols/WhatsApp/src/messages.cpp
+++ /dev/null
@@ -1,137 +0,0 @@
-#include "stdafx.h"
-
-int WhatsAppProto::RecvMsg(MCONTACT hContact, PROTORECVEVENT *pre)
-{
- CallService(MS_PROTO_CONTACTISTYPING, (WPARAM)hContact, (LPARAM)PROTOTYPE_CONTACTTYPING_OFF);
-
- return Proto_RecvMessage(hContact, pre);
-}
-
-void WhatsAppProto::onMessageForMe(const FMessage &pMsg)
-{
- // someone sent us a contact. launch contact addition dialog
- if (pMsg.media_wa_type == FMessage::WA_TYPE_CONTACT) {
- MCONTACT hContact = AddToContactList(pMsg.media_url, pMsg.media_name.c_str());
-
- ADDCONTACTSTRUCT acs = { 0 };
- acs.handleType = HANDLE_CONTACT;
- acs.hContact = hContact;
- acs.szProto = m_szModuleName;
- CallServiceSync(MS_ADDCONTACT_SHOW, 0, (LPARAM)&acs);
- }
- else {
- std::string msg(pMsg.data);
- if (!pMsg.media_url.empty()) {
- if (!msg.empty())
- msg.append("\n");
- msg += pMsg.media_url;
- }
-
- MCONTACT hContact = this->AddToContactList(pMsg.key.remote_jid, pMsg.notifyname.c_str());
-
- PROTORECVEVENT recv = { 0 };
- recv.szMessage = const_cast<char*>(msg.c_str());
- if (getByte(WHATSAPP_KEY_USE_REMOTE_TIME, 0))
- recv.timestamp = pMsg.timestamp;
- else
- recv.timestamp = time(nullptr);
-
- ProtoChainRecvMsg(hContact, &recv);
- }
-
- if (isOnline())
- m_pConnection->sendMessageReceived(pMsg);
-}
-
-int WhatsAppProto::SendMsg(MCONTACT hContact, int, const char *msg)
-{
- ptrA jid(getStringA(hContact, "ID"));
- if (jid == NULL)
- return 0;
-
- if (m_pConnection == nullptr) {
- debugLogA("No connection");
- return 0;
- }
-
- int msgId = GetSerial();
- try {
- time_t now = time(nullptr);
- std::string id = Utilities::intToStr(now) + "-" + Utilities::intToStr(msgId);
- FMessage fmsg(std::string(jid), true, id);
- fmsg.timestamp = now;
- fmsg.data = msg;
-
- m_pConnection->sendMessage(&fmsg);
- utils::setStatusMessage(hContact, nullptr);
- }
- catch (exception &e) {
- debugLogA("exception: %s", e.what());
- ProtoBroadcastAck(hContact, ACKTYPE_MESSAGE, ACKRESULT_FAILED, (HANDLE)msgId, (LPARAM)e.what());
- }
- catch (...) {
- debugLogA("unknown exception");
- ProtoBroadcastAck(hContact, ACKTYPE_MESSAGE, ACKRESULT_FAILED, (HANDLE)msgId, (LPARAM)"Failed sending message");
- }
-
- return msgId;
-}
-
-void WhatsAppProto::onIsTyping(const std::string &paramString, bool paramBoolean)
-{
- MCONTACT hContact = this->AddToContactList(paramString);
- if (hContact != NULL) {
- CallService(MS_PROTO_CONTACTISTYPING, (WPARAM)hContact, (LPARAM)
- paramBoolean ? PROTOTYPE_CONTACTTYPING_INFINITE : PROTOTYPE_CONTACTTYPING_OFF);
- }
-}
-
-int WhatsAppProto::UserIsTyping(MCONTACT hContact, int type)
-{
- if (hContact && isOnline()) {
- ptrA jid(getStringA(hContact, WHATSAPP_KEY_ID));
- if (jid && isOnline()) {
- if (type == PROTOTYPE_SELFTYPING_ON)
- m_pConnection->sendComposing((char*)jid);
- else
- m_pConnection->sendPaused((char*)jid);
- }
- }
-
- return 0;
-}
-
-void WhatsAppProto::onMessageStatusUpdate(const FMessage &fmsg)
-{
- MCONTACT hContact = this->ContactIDToHContact(fmsg.key.remote_jid);
- if (hContact == 0)
- return;
-
- if (isChatRoom(hContact)) {
- onGroupMessageReceived(fmsg);
- return;
- }
-
- const wchar_t *ptszBy;
- switch (fmsg.status) {
- case FMessage::STATUS_RECEIVED_BY_SERVER: ptszBy = TranslateT("server"); break;
- case FMessage::STATUS_RECEIVED_BY_TARGET: ptszBy = pcli->pfnGetContactDisplayName(hContact, 0); break;
- default:
- return;
- }
-
- size_t delim = fmsg.key.id.find('-');
- if (delim == string::npos)
- return;
-
- int msgId = atoi(fmsg.key.id.substr(delim+1).c_str());
-
- if (fmsg.status == FMessage::STATUS_RECEIVED_BY_SERVER)
- ProtoBroadcastAck(hContact, ACKTYPE_MESSAGE, ACKRESULT_SUCCESS, (HANDLE)msgId, 0);
-
- time_t ts = atol(fmsg.key.id.substr(0, delim).c_str());
-
- wchar_t ttime[64];
- wcsftime(ttime, _countof(ttime), L"%X", localtime(&ts));
- utils::setStatusMessage(hContact, CMStringW(FORMAT, TranslateT("Message received: %s by %s"), ttime, ptszBy));
-}
diff --git a/protocols/WhatsApp/src/proto.cpp b/protocols/WhatsApp/src/proto.cpp
deleted file mode 100644
index 6b048b33a4..0000000000
--- a/protocols/WhatsApp/src/proto.cpp
+++ /dev/null
@@ -1,438 +0,0 @@
-#include "stdafx.h"
-
-#include "WhatsAPI++/WARegister.h"
-
-struct SearchParam
-{
- SearchParam(const wchar_t *_jid, LONG _id) :
- jid(_jid), id(_id)
- {}
-
- std::wstring jid;
- LONG id;
-};
-
-WhatsAppProto::WhatsAppProto(const char *proto_name, const wchar_t *username)
- : PROTO<WhatsAppProto>(proto_name, username),
- m_tszDefaultGroup(getWStringA(WHATSAPP_KEY_DEF_GROUP))
-{
- update_loop_lock_ = CreateEvent(nullptr, false, false, nullptr);
-
- db_set_resident(m_szModuleName, "StatusMsg");
-
- CreateProtoService(PS_CREATEACCMGRUI, &WhatsAppProto::SvcCreateAccMgrUI);
-
- CreateProtoService(PS_GETAVATARINFO, &WhatsAppProto::GetAvatarInfo);
- CreateProtoService(PS_GETAVATARCAPS, &WhatsAppProto::GetAvatarCaps);
- CreateProtoService(PS_GETMYAVATAR, &WhatsAppProto::GetMyAvatar);
- CreateProtoService(PS_SETMYAVATAR, &WhatsAppProto::SetMyAvatar);
-
- HookProtoEvent(ME_DB_CONTACT_DELETED, &WhatsAppProto::OnDeleteChat);
- HookProtoEvent(ME_OPT_INITIALISE, &WhatsAppProto::OnOptionsInit);
- HookProtoEvent(ME_CLIST_PREBUILDSTATUSMENU, &WhatsAppProto::OnBuildStatusMenu);
-
- // Create standard network connection
- wchar_t descr[512];
- mir_snwprintf(descr, TranslateT("%s server connection"), m_tszUserName);
-
- NETLIBUSER nlu = {};
- nlu.flags = NUF_INCOMING | NUF_OUTGOING | NUF_HTTPCONNS | NUF_UNICODE;
- nlu.szSettingsModule = m_szModuleName;
- nlu.szDescriptiveName.w = descr;
- m_hNetlibUser = Netlib_RegisterUser(&nlu);
- if (m_hNetlibUser == nullptr) {
- wchar_t error[200];
- mir_snwprintf(error, TranslateT("Unable to initialize Netlib for %s."), m_tszUserName);
- MessageBox(nullptr, error, L"Miranda NG", MB_OK | MB_ICONERROR);
- }
-
- WASocketConnection::initNetwork(m_hNetlibUser);
-
- m_tszAvatarFolder = std::wstring(VARSW(L"%miranda_avatarcache%")) + L"\\" + m_tszUserName;
- DWORD dwAttributes = GetFileAttributes(m_tszAvatarFolder.c_str());
- if (dwAttributes == 0xffffffff || (dwAttributes & FILE_ATTRIBUTE_DIRECTORY) == 0)
- CreateDirectoryTreeW(m_tszAvatarFolder.c_str());
-
- if (m_tszDefaultGroup == NULL)
- m_tszDefaultGroup = mir_wstrdup(L"WhatsApp");
- Clist_GroupCreate(0, m_tszDefaultGroup);
-
- SetAllContactStatuses(ID_STATUS_OFFLINE, true);
-}
-
-WhatsAppProto::~WhatsAppProto()
-{
- CloseHandle(update_loop_lock_);
-}
-
-int WhatsAppProto::OnEvent(PROTOEVENTTYPE evType, WPARAM, LPARAM)
-{
- switch (evType) {
- case EV_PROTO_ONMENU:
- InitMenu();
- break;
-
- case EV_PROTO_ONLOAD:
- // Register group chat
- GCREGISTER gcr = {};
- gcr.dwFlags = GC_TYPNOTIF | GC_CHANMGR;
- gcr.ptszDispName = m_tszUserName;
- gcr.pszModule = m_szModuleName;
- Chat_Register(&gcr);
-
- HookProtoEvent(ME_GC_EVENT, &WhatsAppProto::onGroupChatEvent);
- HookProtoEvent(ME_GC_BUILDMENU, &WhatsAppProto::OnChatMenu);
- HookProtoEvent(ME_USERINFO_INITIALISE, &WhatsAppProto::OnUserInfo);
- break;
- }
- return TRUE;
-}
-
-DWORD_PTR WhatsAppProto::GetCaps(int type, MCONTACT)
-{
- switch (type) {
- case PFLAGNUM_1:
- return PF1_IM | PF1_FILESEND | PF1_CHAT | PF1_BASICSEARCH | PF1_ADDSEARCHRES | PF1_MODEMSGRECV;
- case PFLAGNUM_2:
- return PF2_ONLINE | PF2_INVISIBLE;
- case PFLAGNUM_3:
- return 0;
- case PFLAGNUM_4:
- return PF4_NOCUSTOMAUTH | PF4_FORCEADDED | PF4_NOAUTHDENYREASON | PF4_IMSENDOFFLINE | PF4_OFFLINEFILES | PF4_SUPPORTTYPING | PF4_AVATARS;
- case PFLAGNUM_5:
- return 0;
- case PFLAG_UNIQUEIDTEXT:
- return (DWORD_PTR)"WhatsApp ID";
- case PFLAG_UNIQUEIDSETTING:
- return (DWORD_PTR)"ID";
- }
- return 0;
-}
-
-int WhatsAppProto::SetStatus(int new_status)
-{
- if (m_iDesiredStatus == new_status)
- return 0;
-
- int oldStatus = m_iStatus;
- debugLogA("===== Beginning SetStatus process");
-
- // Routing statuses not supported by WhatsApp
- switch (new_status) {
- case ID_STATUS_INVISIBLE:
- case ID_STATUS_OFFLINE:
- m_iDesiredStatus = new_status;
- break;
-
- case ID_STATUS_IDLE:
- default:
- m_iDesiredStatus = ID_STATUS_INVISIBLE;
- if (getByte(WHATSAPP_KEY_MAP_STATUSES, DEFAULT_MAP_STATUSES))
- break;
- case ID_STATUS_ONLINE:
- case ID_STATUS_FREECHAT:
- m_iDesiredStatus = ID_STATUS_ONLINE;
- break;
- }
-
- if (m_iDesiredStatus == ID_STATUS_OFFLINE) {
- if (m_pSocket != nullptr) {
- SetEvent(update_loop_lock_);
- m_pSocket->forceShutdown();
- debugLogA("Forced shutdown");
- }
-
- m_iStatus = m_iDesiredStatus = ID_STATUS_OFFLINE;
- ProtoBroadcastAck(NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)oldStatus, m_iStatus);
- }
- else if (m_pSocket == nullptr && !IsStatusConnecting(m_iStatus)) {
- m_iStatus = ID_STATUS_CONNECTING;
- ProtoBroadcastAck(NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)oldStatus, m_iStatus);
-
- ResetEvent(update_loop_lock_);
- ForkThread(&WhatsAppProto::sentinelLoop, nullptr);
- ForkThread(&WhatsAppProto::stayConnectedLoop, nullptr);
- }
- else if (m_pConnection != nullptr) {
- if (m_iDesiredStatus == ID_STATUS_ONLINE) {
- m_pConnection->sendAvailableForChat();
- m_iStatus = ID_STATUS_ONLINE;
- ProtoBroadcastAck(0, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)oldStatus, m_iStatus);
- }
- else if (m_iStatus == ID_STATUS_ONLINE && m_iDesiredStatus == ID_STATUS_INVISIBLE) {
- m_pConnection->sendClose();
- m_iStatus = ID_STATUS_INVISIBLE;
- SetAllContactStatuses(ID_STATUS_OFFLINE, true);
- ProtoBroadcastAck(0, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)oldStatus, m_iStatus);
- }
- }
- else ProtoBroadcastAck(NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)oldStatus, m_iStatus);
-
- return 0;
-}
-
-MCONTACT WhatsAppProto::AddToList(int flags, PROTOSEARCHRESULT *psr)
-{
- if (psr->id.w == nullptr)
- return NULL;
-
- std::string phone(T2Utf(psr->id.w));
- std::string jid(phone + "@s.whatsapp.net");
-
- MCONTACT hContact = AddToContactList(jid, phone.c_str());
- if (!(flags & PALF_TEMPORARY))
- db_unset(hContact, "CList", "NotOnList");
-
- m_pConnection->sendPresenceSubscriptionRequest(jid.c_str());
- return hContact;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-
-void WhatsAppProto::SearchAckThread(void *targ)
-{
- Sleep(100);
-
- SearchParam *param = (SearchParam*)targ;
- PROTOSEARCHRESULT psr = { 0 };
- psr.cbSize = sizeof(psr);
- psr.flags = PSR_UNICODE;
- psr.nick.w = psr.firstName.w = psr.lastName.w = L"";
- psr.id.w = (wchar_t*)param->jid.c_str();
-
- ProtoBroadcastAck(NULL, ACKTYPE_SEARCH, ACKRESULT_DATA, (HANDLE)param->id, (LPARAM)&psr);
- ProtoBroadcastAck(NULL, ACKTYPE_SEARCH, ACKRESULT_SUCCESS, (HANDLE)param->id, 0);
-
- delete param;
-}
-
-HANDLE WhatsAppProto::SearchBasic(const wchar_t* id)
-{
- if (isOffline())
- return nullptr;
-
- // fake - we always accept search
- SearchParam *param = new SearchParam(id, GetSerial());
- ForkThread(&WhatsAppProto::SearchAckThread, param);
- return (HANDLE)param->id;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-
-static NETLIBHTTPHEADER s_registerHeaders[] =
-{
- { "User-Agent", ACCOUNT_USER_AGENT },
- { "Accept", "text/json" },
- { "Content-Type", "application/x-www-form-urlencoded" }
-};
-
-bool WhatsAppProto::Register(int state, const string &cc, const string &number, const string &code, string &ret)
-{
- string idx;
- DBVARIANT dbv;
-
- if (g_hNetlibUser == nullptr) {
- NotifyEvent(m_tszUserName, TranslateT("Network connection error."), NULL, WHATSAPP_EVENT_CLIENT);
- return false;
- }
-
- if (!getString(WHATSAPP_KEY_IDX, &dbv)) {
- idx = dbv.pszVal;
- db_free(&dbv);
- }
-
- if (idx.empty()) {
- std::stringstream tm;
- tm << time(nullptr);
- BYTE idxBuf[16];
- utils::md5string(tm.str(), idxBuf);
- idx = std::string((const char*)idxBuf, 16);
- setString(WHATSAPP_KEY_IDX, idx.c_str());
- }
-
- CMStringA url = WARegister::RequestCodeUrl(cc + number, code);
- if (url.IsEmpty())
- return false;
-
- NETLIBHTTPREQUEST nlhr = { sizeof(NETLIBHTTPREQUEST) };
- nlhr.requestType = REQUEST_POST;
- nlhr.szUrl = url.GetBuffer();
- nlhr.headers = s_registerHeaders;
- nlhr.headersCount = _countof(s_registerHeaders);
- nlhr.flags = NLHRF_HTTP11 | NLHRF_SSL;
-
- NETLIBHTTPREQUEST* pnlhr = Netlib_HttpTransaction(g_hNetlibUser, &nlhr);
-
- const wchar_t *ptszTitle = TranslateT("Registration");
- if (pnlhr == nullptr) {
- NotifyEvent(ptszTitle, TranslateT("Registration failed. Invalid server response."), NULL, WHATSAPP_EVENT_CLIENT);
- return false;
- }
-
- debugLogA("Server response: %s", pnlhr->pData);
-
- JSONNode resp = JSONNode::parse(pnlhr->pData);
- if (!resp) {
- NotifyEvent(ptszTitle, TranslateT("Registration failed. Invalid server response."), NULL, WHATSAPP_EVENT_CLIENT);
- return false;
- }
-
- // Status = fail
- std::string status = resp["status"].as_string();
- if (status == "fail") {
- std::string reason = resp["reason"].as_string();
- if (reason == "stale")
- NotifyEvent(ptszTitle, TranslateT("Registration failed due to stale code. Please request a new code"), NULL, WHATSAPP_EVENT_CLIENT);
- else {
- CMStringW tmp(FORMAT, TranslateT("Registration failed. Reason: %s"), _A2T(reason.c_str()));
- NotifyEvent(ptszTitle, tmp, NULL, WHATSAPP_EVENT_CLIENT);
- }
-
- const JSONNode &tmpVal = resp["retry_after"];
- if (tmpVal) {
- CMStringW tmp(FORMAT, TranslateT("Please try again in %i seconds"), tmpVal.as_int());
- NotifyEvent(ptszTitle, tmp, NULL, WHATSAPP_EVENT_OTHER);
- }
- return false;
- }
-
- // Request code
- if (state == REG_STATE_REQ_CODE) {
- std::string pw = resp["pw"].as_string();
- if (!pw.empty())
- ret = pw;
- else if (status == "sent")
- NotifyEvent(ptszTitle, TranslateT("Registration code has been sent to your phone."), NULL, WHATSAPP_EVENT_OTHER);
- return true;
- }
-
- // Register
- if (state == REG_STATE_REG_CODE) {
- std::string pw = resp["pw"].as_string();
- if (!pw.empty()) {
- ret = pw;
- return true;
- }
- NotifyEvent(ptszTitle, TranslateT("Registration failed."), NULL, WHATSAPP_EVENT_CLIENT);
- }
-
- return false;
-}
-
-//////////////////////////////////////////////////////////////////////////////
-// EVENTS
-
-int WhatsAppProto::OnUserInfo(WPARAM, LPARAM hContact)
-{
- ptrA jid(getStringA(hContact, WHATSAPP_KEY_ID));
- if (jid && isOnline()) {
- m_pConnection->sendGetPicture((char*)jid, "image");
- m_pConnection->sendPresenceSubscriptionRequest((char*)jid);
- }
-
- return 0;
-}
-
-void WhatsAppProto::RequestFriendship(MCONTACT hContact)
-{
- if (hContact == NULL || isOffline())
- return;
-
- ptrA jid(getStringA(hContact, WHATSAPP_KEY_ID));
- if (jid) {
- m_pConnection->sendPresenceSubscriptionRequest((char*)jid);
- }
-}
-
-LRESULT CALLBACK PopupDlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
-{
- switch (message) {
- case WM_COMMAND:
- // After a click, destroy popup
- PUDeletePopup(hwnd);
- break;
-
- case WM_CONTEXTMENU:
- PUDeletePopup(hwnd);
- break;
-
- case UM_FREEPLUGINDATA:
- // After close, free
- mir_free(PUGetPluginData(hwnd));
- return FALSE;
- }
-
- return DefWindowProc(hwnd, message, wParam, lParam);
-};
-
-void WhatsAppProto::NotifyEvent(const string& title, const string& info, MCONTACT contact, DWORD flags, wchar_t* url)
-{
- wchar_t *rawTitle = mir_a2u_cp(title.c_str(), CP_UTF8);
- wchar_t *rawInfo = mir_a2u_cp(info.c_str(), CP_UTF8);
- NotifyEvent(rawTitle, rawInfo, contact, flags, url);
- mir_free(rawTitle);
- mir_free(rawInfo);
-}
-
-void WhatsAppProto::NotifyEvent(const wchar_t *title, const wchar_t *info, MCONTACT contact, DWORD flags, wchar_t* szUrl)
-{
- int ret, timeout = 0;
- COLORREF colorBack = 0, colorText = 0;
-
- switch (flags) {
- case WHATSAPP_EVENT_CLIENT:
- if (!getByte(WHATSAPP_KEY_EVENT_CLIENT_ENABLE, DEFAULT_EVENT_CLIENT_ENABLE))
- goto exit;
- if (!getByte(WHATSAPP_KEY_EVENT_CLIENT_DEFAULT, 0)) {
- colorBack = getDword(WHATSAPP_KEY_EVENT_CLIENT_COLBACK, DEFAULT_EVENT_COLBACK);
- colorText = getDword(WHATSAPP_KEY_EVENT_CLIENT_COLTEXT, DEFAULT_EVENT_COLTEXT);
- }
- timeout = getDword(WHATSAPP_KEY_EVENT_CLIENT_TIMEOUT, 0);
- flags |= NIIF_WARNING;
- break;
-
- case WHATSAPP_EVENT_OTHER:
- if (!getByte(WHATSAPP_KEY_EVENT_OTHER_ENABLE, DEFAULT_EVENT_OTHER_ENABLE))
- goto exit;
- if (!getByte(WHATSAPP_KEY_EVENT_OTHER_DEFAULT, 0)) {
- colorBack = getDword(WHATSAPP_KEY_EVENT_OTHER_COLBACK, DEFAULT_EVENT_COLBACK);
- colorText = getDword(WHATSAPP_KEY_EVENT_OTHER_COLTEXT, DEFAULT_EVENT_COLTEXT);
- }
- timeout = getDword(WHATSAPP_KEY_EVENT_OTHER_TIMEOUT, -1);
- Skin_PlaySound("OtherEvent");
- flags |= NIIF_INFO;
- break;
- }
-
- if (!getByte(WHATSAPP_KEY_SYSTRAY_NOTIFY, DEFAULT_SYSTRAY_NOTIFY)) {
- if (ServiceExists(MS_POPUP_ADDPOPUP)) {
- POPUPDATAT pd;
- pd.colorBack = colorBack;
- pd.colorText = colorText;
- pd.iSeconds = timeout;
- pd.lchContact = contact;
- pd.lchIcon = IcoLib_GetIconByHandle(m_hProtoIcon); // TODO: Icon test
- pd.PluginData = szUrl;
- pd.PluginWindowProc = PopupDlgProc;
- mir_wstrcpy(pd.lptzContactName, title);
- mir_wstrcpy(pd.lptzText, info);
- ret = PUAddPopupT(&pd);
-
- if (ret == 0)
- return;
- }
- }
- else {
- int niif_flags = flags;
- REMOVE_FLAG(niif_flags, WHATSAPP_EVENT_CLIENT | WHATSAPP_EVENT_NOTIFICATION | WHATSAPP_EVENT_OTHER);
- if (!Clist_TrayNotifyW(m_szModuleName, title, info, niif_flags, 1000 * timeout))
- goto exit;
- }
-
- if (FLAG_CONTAINS(flags, WHATSAPP_EVENT_CLIENT))
- MessageBox(nullptr, info, title, MB_OK | MB_ICONINFORMATION);
-
-exit:
- if (szUrl != nullptr)
- mir_free(szUrl);
-}
diff --git a/protocols/WhatsApp/src/proto.h b/protocols/WhatsApp/src/proto.h
deleted file mode 100644
index f885369ddf..0000000000
--- a/protocols/WhatsApp/src/proto.h
+++ /dev/null
@@ -1,203 +0,0 @@
-#if !defined(PROTO_H)
-#define PROTO_H
-
-class WASocketConnection;
-
-#include "WhatsAPI++/WAConnection.h"
-
-struct WAChatInfo
-{
- WAChatInfo(wchar_t *_jid, wchar_t *_nick) :
- tszJid(_jid), tszNick(_nick)
- {
- bActive = false;
- }
-
- map<std::string, std::wstring> m_unsentMsgs;
- ptrW tszJid, tszNick, tszOwner;
- bool bActive;
-
- MCONTACT hContact;
-};
-
-class WhatsAppProto : public PROTO<WhatsAppProto>, public WAListener, public WAGroupListener
-{
-public:
- WhatsAppProto(const char *proto_name, const wchar_t *username);
- ~WhatsAppProto();
-
- inline bool isOnline() const
- { return (m_pConnection != NULL);
- }
-
- inline bool isOffline() const
- { return (m_iStatus == ID_STATUS_OFFLINE);
- }
-
- inline bool isInvisible() const
- { return (m_iStatus == ID_STATUS_INVISIBLE);
- }
-
- // PROTO_INTERFACE ///////////////////////////////////////////////////////////////////
-
- virtual MCONTACT __cdecl AddToList(int flags, PROTOSEARCHRESULT* psr);
-
- virtual DWORD_PTR __cdecl GetCaps(int type, MCONTACT hContact = NULL);
-
- virtual HANDLE __cdecl SearchBasic(const wchar_t* id);
-
- virtual int __cdecl RecvMsg(MCONTACT hContact, PROTORECVEVENT*);
-
- virtual int __cdecl SendMsg(MCONTACT hContact, int flags, const char* msg);
-
- virtual HANDLE __cdecl SendFile(MCONTACT hContact, const wchar_t*, wchar_t **ppszFiles);
-
- virtual int __cdecl SetStatus(int iNewStatus);
-
- virtual int __cdecl UserIsTyping(MCONTACT hContact, int type);
-
- virtual int __cdecl OnEvent(PROTOEVENTTYPE iEventType, WPARAM wParam, LPARAM lParam);
-
- // Services //////////////////////////////////////////////////////////////////////////
-
- INT_PTR __cdecl SvcCreateAccMgrUI(WPARAM, LPARAM);
-
- // Events ////////////////////////////////////////////////////////////////////////////
-
- int __cdecl OnOptionsInit(WPARAM, LPARAM);
- int __cdecl OnUserInfo(WPARAM, LPARAM);
- int __cdecl OnBuildStatusMenu(WPARAM, LPARAM);
-
- // Worker Threads ////////////////////////////////////////////////////////////////////
-
- void __cdecl stayConnectedLoop(void*);
- void __cdecl sentinelLoop(void*);
-
- // Processing Threads ////////////////////////////////////////////////////////////////
-
- void __cdecl ProcessBuddyList(void*);
- void __cdecl SearchAckThread(void*);
-
- // Contacts handling /////////////////////////////////////////////////////////////////
-
- MCONTACT AddToContactList(const std::string &jid, const char *new_name = NULL);
-
- MCONTACT ContactIDToHContact(const std::string&);
- void SetAllContactStatuses(int status, bool reset_client = false);
- void UpdateStatusMsg(MCONTACT hContact);
- wchar_t* GetContactDisplayName(const string &jid);
- void RequestFriendship(MCONTACT hContact);
-
- // Group chats ///////////////////////////////////////////////////////////////////////
-
- std::vector<string> m_szInviteJids;
- map<std::string, WAChatInfo*> m_chats;
- mir_cs m_csChats;
- ptrW m_tszDefaultGroup;
-
- void ChatLogMenuHook(WAChatInfo *pInfo, GCHOOK *gch);
- void NickListMenuHook(WAChatInfo *pInfo, GCHOOK *gch);
-
- void AddChatUser(WAChatInfo *pInfo, const wchar_t *ptszJid);
- void EditChatSubject(WAChatInfo *pInfo);
- void InviteChatUser(WAChatInfo *pInfo);
- void KickChatUser(WAChatInfo *pInfo, const wchar_t *ptszJid);
- wchar_t* GetChatUserNick(const std::string &jid);
- void SetChatAvatar(WAChatInfo *pInfo);
-
- void onGroupMessageReceived(const FMessage &fmsg);
-
- WAChatInfo* InitChat(const std::string &jidjid, const std::string &nick);
- WAChatInfo* SafeGetChat(const std::string &jid);
-
- int __cdecl onGroupChatEvent(WPARAM, LPARAM);
- int __cdecl OnDeleteChat(WPARAM, LPARAM);
- int __cdecl OnChatMenu(WPARAM, LPARAM);
- INT_PTR __cdecl OnCreateGroup(WPARAM, LPARAM);
-
- // Registration //////////////////////////////////////////////////////////////////////
-
- bool Register(int state, const string &cc, const string &number, const string &code, string &password);
-
-private:
- // Helpers //////////////////////////////////////////////////////////////////////////
-
- LONG m_iSerial;
- __forceinline LONG GetSerial()
- { return ::_InterlockedIncrement(&m_iSerial);
- }
-
- void ToggleStatusMenuItems(bool bEnable);
-
- /// Avatars //////////////////////////////////////////////////////////////////////////
-
- std::wstring GetAvatarFileName(MCONTACT);
- std::wstring m_tszAvatarFolder;
-
- INT_PTR __cdecl GetAvatarInfo(WPARAM, LPARAM);
- INT_PTR __cdecl GetAvatarCaps(WPARAM, LPARAM);
- INT_PTR __cdecl GetMyAvatar(WPARAM, LPARAM);
- INT_PTR __cdecl SetMyAvatar(WPARAM, LPARAM);
-
- int InternalSetAvatar(MCONTACT hContact, const char *szJid, const wchar_t *ptszFileName);
-
- // Private data //////////////////////////////////////////////////////////////////////
-
- void InitMenu();
- HGENMENU m_hMenuCreateGroup;
-
- HANDLE update_loop_lock_;
-
- WASocketConnection *m_pSocket;
- WAConnection *m_pConnection;
- Mutex connMutex;
- time_t m_tLastWriteTime;
-
- std::vector<unsigned char> m_Challenge;
- std::string m_szPhoneNumber;
- std::string m_szJid, m_szNick;
- std::map<string, MCONTACT> m_hContactByJid;
- map<MCONTACT, map<MCONTACT, bool>> isMemberByGroupContact;
-
-protected:
- // WAListener methods ////////////////////////////////////////////////////////////////
- virtual void onMessageForMe(const FMessage &paramFMessage);
- virtual void onMessageStatusUpdate(const FMessage &paramFMessage);
- virtual void onMessageError(const FMessage&, int) { }
- virtual void onPing(const std::string &id) throw (WAException);
- virtual void onPingResponseReceived() { }
- virtual void onAvailable(const std::string &paramString, bool paramBoolean, DWORD lastSeenTime);
- virtual void onClientConfigReceived(const std::string&) { }
- virtual void onIsTyping(const std::string &paramString, bool paramBoolean);
- virtual void onAccountChange(int, time_t) { }
- virtual void onPrivacyBlockListAdd(const std::string&) { }
- virtual void onPrivacyBlockListClear() { }
- virtual void onDirty(const std::map<string, string>&) { }
- virtual void onDirtyResponse(int) { }
- virtual void onRelayRequest(const std::string&, int, const std::string&) { }
- virtual void onSendGetPicture(const std::string &jid, const std::vector<unsigned char>& data, const std::string &id);
- virtual void onPictureChanged(const std::string &jid, const std::string &id, bool set);
- virtual void onContactChanged(const std::string &jid, bool added);
- virtual void onDeleteAccount(bool) {}
-
- // WAGroupListener methods ///////////////////////////////////////////////////////////
- virtual void onGroupAddUser(const std::string &gjid, const std::string &ujid, int ts);
- virtual void onGroupRemoveUser(const std::string &gjid, const std::string &ujid, int ts);
- virtual void onGroupNewSubject(const std::string &from, const std::string &author, const std::string &newSubject, int ts);
- virtual void onGroupMessage(const FMessage &paramFMessage);
- virtual void onServerProperties(std::map<std::string, std::string>*) { }
- virtual void onGroupCreated(const std::string &gjid, const std::string &nick);
- virtual void onGroupInfo(const std::string &jid, const std::string &owner, const std::string &subject, const std::string &subject_owner, int time_subject, int time_created);
- virtual void onSetSubject(const std::string&) { }
- virtual void onAddGroupParticipants(const std::string&, const std::vector<string>&, int) { }
- virtual void onRemoveGroupParticipants(const std::string&, const std::vector<string>&, int) { }
- virtual void onGetParticipants(const std::string &gjid, const std::vector<string> &participants);
- virtual void onLeaveGroup(const std::string &paramString);
-
- // Information providing /////////////////////////////////////////////////////////////
-
- void NotifyEvent(const wchar_t *title, const wchar_t *info, MCONTACT contact, DWORD flags, wchar_t *url = NULL);
- void NotifyEvent(const std::string &title, const std::string &info, MCONTACT contact, DWORD flags, wchar_t *url = NULL);
-};
-
-#endif
diff --git a/protocols/WhatsApp/src/resource.h b/protocols/WhatsApp/src/resource.h
deleted file mode 100644
index 61d5bf626d..0000000000
--- a/protocols/WhatsApp/src/resource.h
+++ /dev/null
@@ -1,43 +0,0 @@
-//{{NO_DEPENDENCIES}}
-// Microsoft Visual C++ generated include file.
-// Used by ..\res\whatsapp.rc
-//
-#define IDD_INPUTBOX 102
-#define IDR_REGISTERUTILITY 103
-#define IDD_ACCMGRUI 104
-#define IDD_GROUPCHAT_INVITE 105
-#define IDD_OPTIONS 106
-#define IDI_WHATSAPP 203
-#define IDI_ADD_GROUP 206
-#define IDI_RENAME_GROUP 208
-#define IDC_CLIST 1001
-#define IDC_NEWJID 1002
-#define IDC_LOGIN 1003
-#define IDC_PW 1004
-#define IDC_SSL 1005
-#define IDC_NICK 1006
-#define IDC_BUTTON_REQUEST_SMS_CODE 1007
-#define IDC_BUTTON_REGISTER 1008
-#define IDC_CC 1009
-#define IDC_VALUE 1010
-#define IDC_SSL2 1010
-#define IDC_CANCEL 1011
-#define IDC_OK 1012
-#define IDC_PW2 1013
-#define IDC_TEXT 1014
-#define IDC_INVITE 1015
-#define IDC_AUTORUN 1016
-#define IDC_DEFGROUP 1017
-#define IDC_REMOTE_TIME 1018
-#define IDC_BUTTON_REQUEST_VOICE_CODE 1019
-
-// Next default values for new objects
-//
-#ifdef APSTUDIO_INVOKED
-#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE 107
-#define _APS_NEXT_COMMAND_VALUE 40001
-#define _APS_NEXT_CONTROL_VALUE 1020
-#define _APS_NEXT_SYMED_VALUE 101
-#endif
-#endif
diff --git a/protocols/WhatsApp/src/stdafx.cxx b/protocols/WhatsApp/src/stdafx.cxx
deleted file mode 100644
index 43acd6332d..0000000000
--- a/protocols/WhatsApp/src/stdafx.cxx
+++ /dev/null
@@ -1,8 +0,0 @@
-// stdafx.cpp : Quelldatei, die nur die Standard-Includes einbindet.
-// WhatsAPI++.pch ist der vorkompilierte Header.
-// stdafx.obj enthдlt die vorkompilierten Typinformationen.
-
-#include "stdafx.h"
-
-// TODO: Auf zusдtzliche Header verweisen, die in STDAFX.H
-// und nicht in dieser Datei erforderlich sind.
diff --git a/protocols/WhatsApp/src/stdafx.h b/protocols/WhatsApp/src/stdafx.h
deleted file mode 100755
index 4714359264..0000000000
--- a/protocols/WhatsApp/src/stdafx.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
-
-WhatsApp plugin for Miranda NG
-Copyright © 2013-14 Uli Hecht
-
-*/
-
-#pragma once
-
-//#pragma warning(push)
-//#pragma warning(disable:4312)
-#pragma warning(disable:4996)
-#pragma warning(disable:4290)
-
-#include <algorithm>
-#include <iostream>
-#include <string>
-#include <cstring>
-#include <sstream>
-#include <fstream>
-#include <list>
-#include <map>
-#include <vector>
-#include <ctime>
-#include <stdarg.h>
-#include <time.h>
-#include <assert.h>
-#include <io.h>
-#include <iomanip>
-#include <windows.h>
-#include <win2k.h>
-#include <commctrl.h>
-
-#include <newpluginapi.h>
-#include <m_system.h>
-#include <m_avatars.h>
-#include <m_button.h>
-#include <m_chat.h>
-#include <m_clc.h>
-#include <m_clist.h>
-#include <m_database.h>
-#include <m_history.h>
-#include <m_idle.h>
-#include <m_imgsrvc.h>
-#include <m_ignore.h>
-#include <m_langpack.h>
-#include <m_message.h>
-#include <m_netlib.h>
-#include <m_options.h>
-#include <m_popup.h>
-#include <m_protocols.h>
-#include <m_protosvc.h>
-#include <m_protoint.h>
-#include <m_skin.h>
-#include <m_string.h>
-#include <statusmodes.h>
-#include <m_userinfo.h>
-#include <m_addcontact.h>
-#include <m_icolib.h>
-#include <m_utils.h>
-#include <m_xml.h>
-#include <m_hotkeys.h>
-#include <m_folders.h>
-#include <m_json.h>
-#include <m_gui.h>
-
-#include "../../libs/libaxolotl/src/signal_protocol.h"
-
-#include "constants.h"
-#include "utils.h"
-#include "db.h"
-#include "resource.h"
-#include "theme.h"
-#include "definitions.h"
-#include "WASocketConnection.h"
-#include "proto.h"
-#include "dialogs.h"
-#include "entities.h"
-
-#if defined _DEBUG
-#include <stdlib.h>
-#include <crtdbg.h>
-#endif
-
-//#pragma warning(pop)
-
-extern HINSTANCE g_hInstance;
-extern std::string g_strUserAgent;
-extern DWORD g_mirandaVersion;
-extern HNETLIBUSER g_hNetlibUser;
diff --git a/protocols/WhatsApp/src/theme.cpp b/protocols/WhatsApp/src/theme.cpp
deleted file mode 100644
index e280a623ec..0000000000
--- a/protocols/WhatsApp/src/theme.cpp
+++ /dev/null
@@ -1,71 +0,0 @@
-#include "stdafx.h"
-
-extern OBJLIST<WhatsAppProto> g_Instances;
-
-static IconItem icons[] =
-{
- { LPGEN("WhatsApp icon"), "whatsApp", IDI_WHATSAPP },
- { LPGEN("Create chat group"), "createGroup", IDI_ADD_GROUP }
-};
-
-void InitIcons(void)
-{
- Icon_Register(g_hInstance, "Protocols/WhatsApp", icons, _countof(icons), "WhatsApp");
-}
-
-HANDLE GetIconHandle(const char* name)
-{
- for (size_t i = 0; i < _countof(icons); i++)
- if (mir_strcmp(icons[i].szName, name) == 0)
- return icons[i].hIcolib;
-
- return nullptr;
-}
-
-char* GetIconDescription(const char* name)
-{
- for (size_t i = 0; i < _countof(icons); i++)
- if (mir_strcmp(icons[i].szName, name) == 0)
- return icons[i].szDescr;
-
- return "";
-}
-
-// Helper functions
-static WhatsAppProto* GetInstanceByHContact(MCONTACT hContact)
-{
- char *proto = GetContactProto(hContact);
- if (!proto)
- return nullptr;
-
- for (int i = 0; i < g_Instances.getCount(); i++)
- if (!mir_strcmp(proto, g_Instances[i].m_szModuleName))
- return &g_Instances[i];
-
- return nullptr;
-}
-
-void WhatsAppProto::InitMenu()
-{
- CMenuItem mi;
- mi.flags = (isOnline() ? 0 : CMIF_GRAYED);
- mi.position = 201001;
-
- mi.pszService = "/CreateGroup";
- CreateProtoService(mi.pszService, &WhatsAppProto::OnCreateGroup);
- mi.root = Menu_GetProtocolRoot(this);
- mi.name.a = LPGEN("Create group");
- mi.hIcolibItem = GetIconHandle("createGroup");
- m_hMenuCreateGroup = Menu_AddProtoMenuItem(&mi, m_szModuleName);
-}
-
-int WhatsAppProto::OnBuildStatusMenu(WPARAM, LPARAM)
-{
- ToggleStatusMenuItems(isOnline());
- return 0;
-}
-
-void WhatsAppProto::ToggleStatusMenuItems(bool bEnable)
-{
- Menu_EnableItem(m_hMenuCreateGroup, bEnable);
-}
diff --git a/protocols/WhatsApp/src/theme.h b/protocols/WhatsApp/src/theme.h
deleted file mode 100644
index 2e67c54365..0000000000
--- a/protocols/WhatsApp/src/theme.h
+++ /dev/null
@@ -1,20 +0,0 @@
-#if !defined(THEME_H)
-#define THEME_H
-
-void InitIcons(void);
-HANDLE GetIconHandle(const char *name);
-
-//void InitContactMenus(void);
-
-/* Contact menu item indexes */
-enum
-{
- CMI_ADD_CONTACT_TO_GROUP,
- CMI_REMOVE_CONTACT_FROM_GROUP,
- CMI_LEAVE_GROUP,
- CMI_REMOVE_GROUP,
- CMI_CHANGE_GROUP_SUBJECT,
- CMITEMS_COUNT
-};
-
-#endif \ No newline at end of file
diff --git a/protocols/WhatsApp/src/utils.cpp b/protocols/WhatsApp/src/utils.cpp
deleted file mode 100644
index d335133912..0000000000
--- a/protocols/WhatsApp/src/utils.cpp
+++ /dev/null
@@ -1,93 +0,0 @@
-#include "stdafx.h"
-
-wchar_t* utils::removeA(wchar_t *str)
-{
- if (str == nullptr)
- return nullptr;
-
- wchar_t *p = wcschr(str, '@');
- if (p) *p = 0;
- return str;
-}
-
-void utils::copyText(HWND hwnd, const wchar_t *text)
-{
- if (!hwnd || !text) return;
-
- if (!OpenClipboard(hwnd))
- return;
-
- EmptyClipboard();
- HGLOBAL hMem = GlobalAlloc(GMEM_MOVEABLE, sizeof(wchar_t)*(mir_wstrlen(text) + 1));
- mir_wstrcpy((wchar_t*)GlobalLock(hMem), text);
- GlobalUnlock(hMem);
- SetClipboardData(CF_UNICODETEXT, hMem);
- CloseClipboard();
-}
-
-std::string getLastErrorMsg()
-{
- LPVOID lpMsgBuf;
- DWORD dw = WSAGetLastError(); // retrieve the system error message for the last-error code
-
- FormatMessageA(
- FORMAT_MESSAGE_ALLOCATE_BUFFER |
- FORMAT_MESSAGE_FROM_SYSTEM |
- FORMAT_MESSAGE_IGNORE_INSERTS,
- nullptr,
- dw,
- MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
- (LPSTR)&lpMsgBuf,
- 0, nullptr);
-
- std::string ret((LPSTR)lpMsgBuf);
- LocalFree(lpMsgBuf);
- return ret;
-}
-
-void utils::setStatusMessage(MCONTACT hContact, const wchar_t *ptszMessage)
-{
- if (ptszMessage != nullptr)
- Srmm_SetStatusText(hContact, ptszMessage, Skin_LoadIcon(SKINICON_EVENT_MESSAGE));
- else
- Srmm_SetStatusText(hContact, nullptr);
-}
-
-BYTE* utils::md5string(const BYTE *data, int size, BYTE *digest)
-{
- mir_md5_state_t md5_state;
- mir_md5_init(&md5_state);
- mir_md5_append(&md5_state, data, size);
- mir_md5_finish(&md5_state, digest);
- return digest;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// external stubs for WhatsAPI++
-
-std::string base64_encode(void* pData, size_t len)
-{
- return (char*)ptrA(mir_base64_encode((BYTE*)pData, (unsigned)len));
-}
-
-void md5_string(const std::string &data, BYTE digest[16])
-{
- utils::md5string(data, digest);
-}
-
-std::vector<std::string> &split(const std::string &s, char delim, std::vector<std::string> &elems) {
- std::stringstream ss(s);
- std::string item;
- while (std::getline(ss, item, delim)) {
- if (item.length() > 0) {
- elems.push_back(item);
- }
- }
- return elems;
-}
-
-std::vector<std::string> split(const std::string &s, char delim) {
- std::vector<std::string> elems;
- split(s, delim, elems);
- return elems;
-}
diff --git a/protocols/WhatsApp/src/utils.h b/protocols/WhatsApp/src/utils.h
deleted file mode 100644
index eddd9fab45..0000000000
--- a/protocols/WhatsApp/src/utils.h
+++ /dev/null
@@ -1,52 +0,0 @@
-#if !defined(WHATS_NG_UTILS_H)
-#define WHATS_NG_UTILS_H
-
-#include "WhatsAPI++/IMutex.h"
-
-class Mutex : public IMutex
-{
- mir_cs m_cs;
-
-public:
- Mutex() {}
- virtual ~Mutex() {}
-
- virtual void lock()
- {
- CRITICAL_SECTION &cs = m_cs;
- ::EnterCriticalSection(&cs);
- }
-
- virtual void unlock()
- {
- CRITICAL_SECTION &cs = m_cs;
- ::LeaveCriticalSection(&cs);
- }
-};
-
-
-std::string getLastErrorMsg();
-
-__forceinline wchar_t* str2t(const std::string &str)
-{ return mir_utf8decodeW(str.c_str());
-}
-
-std::vector<std::string> split(const std::string &s, char delim);
-std::vector<std::string> &split(const std::string &s, char delim, std::vector<std::string> &elems);
-
-namespace utils
-{
- wchar_t* removeA(wchar_t *str);
- void copyText(HWND hwnd, const wchar_t *text);
-
- void setStatusMessage(MCONTACT hContact, const wchar_t *ptszMessage);
-
- BYTE* md5string(const BYTE*, int, BYTE* digest);
- __forceinline BYTE* md5string(const std::string &str, BYTE* digest)
- {
- return md5string((BYTE*)str.data(), (int)str.length(), digest);
- }
-};
-
-
-#endif \ No newline at end of file
diff --git a/protocols/WhatsApp/src/version.h b/protocols/WhatsApp/src/version.h
deleted file mode 100644
index 3d788dc995..0000000000
--- a/protocols/WhatsApp/src/version.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#define __MAJOR_VERSION 0
-#define __MINOR_VERSION 1
-#define __RELEASE_NUM 3
-#define __BUILD_NUM 3
-
-#include <stdver.h>
-
-#define __PLUGIN_NAME "WhatsApp protocol"
-#define __FILENAME "WhatsApp.dll"
-#define __DESCRIPTION "WhatsApp protocol support for Miranda NG."
-#define __AUTHOR "Uli Hecht"
-#define __AUTHOREMAIL ""
-#define __AUTHORWEB "https://miranda-ng.org/p/WhatsApp/"
-#define __COPYRIGHT "© 2013-14 Uli Hecht, 2015-17 Miranda NG Team"